Socket
Socket
Sign inDemoInstall

@hyperledger/burrow

Package Overview
Dependencies
96
Maintainers
4
Versions
63
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.34.3 to 0.34.4-dev.dd1462d9

dist/solts/sol/NegationLib.abi.d.ts

4

dist/solts/api.d.ts
import ts from 'typescript';
import { ABI } from "../contracts/abi";
export { decodeOutput, encodeInput, importLocalResolver, inputDescriptionFromFiles, tokenizeLinks } from '../contracts/compile';
import { ABI } from '../contracts/abi';
export { decodeOutput, encodeInput, importLocalResolver, inputDescriptionFromFiles, tokenizeLinks, } from '../contracts/compile';
export declare type Compiled = {

@@ -5,0 +5,0 @@ name: string;

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

var provider = new provider_1.Provider();
var contractNames = contracts.map(function (c) { return typescript_1.factory.createIdentifier(c.name); });
return __spreadArray(__spreadArray(__spreadArray([

@@ -66,3 +65,5 @@ typescript_1["default"].addSyntheticLeadingComment(syntax_1.importReadable(), typescript_1["default"].SyntaxKind.SingleLineCommentTrivia, 'Code generated by solts. DO NOT EDIT.'),

syntax_1.declareConstant(deployer_1.deployedBytecodeName, typescript_1.factory.createStringLiteral(contract.deployedBytecode, true), true),
deployer_1.generateDeployFunction(deploy, contract.links, provider, abiName, contractNames),
deployer_1.generateDeployFunction(deploy, contract.links, provider, abiName,
// Exclude names of interface contracts since they have no deployed code
contracts.filter(function (c) { return c.bytecode; }).map(function (c) { return typescript_1.factory.createIdentifier(c.name); })),
deployer_1.generateDeployContractFunction(deploy, contract.links, provider),

@@ -96,2 +97,2 @@ ]

exports.printNodes = printNodes;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NvbHRzL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1REFBeUM7QUFFekMsdUNBQWlFO0FBQ2pFLDJDQUE2RTtBQUM3RSx5Q0FBcUQ7QUFDckQsMkNBS3dCO0FBQ3hCLHlDQUFxRDtBQUNyRCx1Q0FBeUQ7QUFDekQsMkNBQTBDO0FBQzFDLDJDQUFvRDtBQUNwRCx1Q0FBMEY7QUFHMUYsZ0RBQWdJO0FBQXZILG9EQUFZO0FBQUUsbURBQVc7QUFBRSwyREFBbUI7QUFBRSxpRUFBeUI7QUFBRSxxREFBYTtBQVVqRyxJQUFNLGdCQUFnQixHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDbEUsSUFBTSxPQUFPLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUVoRCxvSEFBb0g7QUFDcEgsNENBQTRDO0FBQzVDLFNBQWdCLE9BQU8sQ0FBQyxTQUFxQixFQUFFLGdCQUF3QjtJQUNyRSxJQUFNLFFBQVEsR0FBRyxJQUFJLG1CQUFRLEVBQUUsQ0FBQztJQUVoQyxJQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQUMsQ0FBQyxJQUFLLE9BQUEsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQWhDLENBQWdDLENBQUMsQ0FBQztJQUM3RTtRQUNFLHVCQUFFLENBQUMsMEJBQTBCLENBQzNCLHVCQUFjLEVBQUUsRUFDaEIsdUJBQUUsQ0FBQyxVQUFVLENBQUMsdUJBQXVCLEVBQ3JDLHVDQUF1QyxDQUN4QztRQUNELHFCQUFZLENBQUMsZ0JBQWdCLENBQUM7UUFDOUIsUUFBUSxDQUFDLGVBQWUsRUFBRTtPQUN2QixvQkFBVztRQUNkLDZCQUFvQixDQUFDLFFBQVEsQ0FBQztRQUMzQixTQUFTLENBQUMsR0FBRyxD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LENBQUMsR0FBRyxDQUFDLFVBQUMsSUFBSSxJQUFLLE9BQUEsT0FBTyxDQUFDLFNBQVMsQ0FBQyx1QkFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUF4RCxDQUF3RCxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2xHLENBQUM7QUFKRCxnQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0cywgeyBmYWN0b3J5IH0gZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBBQkkgfSBmcm9tIFwiLi4vY29udHJhY3RzL2FiaVwiO1xuaW1wb3J0IHsgY2FsbGVyVHlwZXMsIGNyZWF0ZUNhbGxlckZ1bmN0aW9uIH0gZnJvbSAnLi9saWIvY2FsbGVyJztcbmltcG9ydCB7IGRlY2xhcmVDb250cmFjdFR5cGUsIGdlbmVyYXRlQ29udHJhY3RPYmplY3QgfSBmcm9tICcuL2xpYi9jb250cmFjdCc7XG5pbXBvcnQgeyBnZW5lcmF0ZURlY29kZU9iamVjdCB9IGZyb20gJy4vbGliL2RlY29kZXInO1xuaW1wb3J0IHtcbiAgYnl0ZWNvZGVOYW1lLFxuICBkZXBsb3llZEJ5dGVjb2RlTmFtZSxcbiAgZ2VuZXJhdGVEZXBsb3lDb250cmFjdEZ1bmN0aW9uLFxuICBnZW5lcmF0ZURlcGxveUZ1bmN0aW9uLFxufSBmcm9tICcuL2xpYi9kZXBsb3llcic7XG5pbXBvcnQgeyBnZW5lcmF0ZUVuY29kZU9iamVjdCB9IGZyb20gJy4vbGliL2VuY29kZXInO1xuaW1wb3J0IHsgZGVjbGFyZUV2ZW50cywgZXZlbnRUeXBlcyB9IGZyb20gJy4vbGliL2V2ZW50cyc7XG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gJy4vbGliL3Byb3ZpZGVyJztcbmltcG9ydCB7IGdldENvbnRyYWN0TWV0aG9kcyB9IGZyb20gJy4vbGliL3NvbGlkaXR5JztcbmltcG9ydCB7IGRlY2xhcmVDb25zdGFudCwgRXhwb3J0VG9rZW4sIGltcG9ydEJ1cnJvdywgaW1wb3J0UmVhZGFibGUgfSBmcm9tICcuL2xpYi9zeW50YXgnO1xuaW1wb3J0IEZ1bmMgPSBBQkkuRnVuYztcblxuZXhwb3J0IHsgZGVjb2RlT3V0cHV0LCBlbmNvZGVJbnB1dCwgaW1wb3J0TG9jYWxSZXNvbHZlciwgaW5wdXREZXNjcmlwdGlvbkZyb21GaWxlcywgdG9rZW5pemVMaW5rcyB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcblxuZXhwb3J0IHR5cGUgQ29tcGlsZWQgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgYWJpOiBBQkkuRnVuY3Rpb25PckV2ZW50W107XG4gIGJ5dGVjb2RlOiBzdHJpbmc7XG4gIGRlcGxveWVkQnl0ZWNvZGU6IHN0cmluZztcbiAgbGlua3M6IEFycmF5PHN0cmluZz47XG59O1xuXG5jb25zdCBjb250cmFjdE5hbWVOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdjb250cmFjdE5hbWUnKTtcbmNvbnN0IGFiaU5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2FiaScpO1xuXG4vLyBOb3RlOiB0aGlzIGlzIGEgdmVyeSB1c2VmdWwgdG9vbCBmb3IgZGlzY292ZXJpbmcgdGhlIGNvcnJlY3QgVHlwZXNjcmlwdCBmYWN0b3J5IEFQSSBjYWxscyB0byBwcm9kdWNlIGEgcGFydGljdWxhclxuLy9waWVjZSBvZiBzeW50YXg6IGh0dHBzOi8vdHMtYXN0LXZpZXdlci5jb21cbmV4cG9ydCBmdW5jdGlvbiBuZXdGaWxlKGNvbnRyYWN0czogQ29tcGlsZWRbXSwgYnVycm93SW1wb3J0UGF0aDogc3RyaW5nKTogdHMuTm9kZVtdIHtcbiAgY29uc3QgcHJvdmlkZXIgPSBuZXcgUHJvdmlkZXIoKTtcblxuICBjb25zdCBjb250cmFjdE5hbWVzID0gY29udHJhY3RzLm1hcCgoYykgPT4gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKGMubmFtZSkpO1xuICByZXR1cm4gW1xuICAgIHRzLmFkZFN5bnRoZXRpY0xlYWRpbmdDb21tZW50KFxuICAgICAgaW1wb3J0UmVhZGFibGUoKSxcbiAgICAgIHRzLlN5bnRheEtpbmQuU2luZ2xlTGluZUNvbW1lbnRUcml2aWEsXG4gICAgICAnQ29kZSBnZW5lcmF0ZWQgYnkgc29sdHMuIERPIE5PVCBFRElULicsXG4gICAgKSxcbiAgICBpbXBvcnRCdXJyb3coYnVycm93SW1wb3J0UGF0aCksXG4gICAgcHJvdmlkZXIuY3JlYXRlSW50ZXJmYWNlKCksXG4gICAgLi4uY2FsbGVyVHlwZXMsXG4gICAgY3JlYXRlQ2FsbGVyRnVuY3Rpb24ocHJvdmlkZXIpLFxuICAgIC4uLmNvbnRyYWN0cy5tYXAoKGNvbnRyYWN0KSA9PiB7XG4gICAgICBjb25zdCBtZXRob2RzID0gZ2V0Q29udHJhY3RNZXRob2RzKGNvbnRyYWN0LmFiaSk7XG5cbiAgICAgIGNvbnN0IGRlcGxveSA9IGNvbnRyYWN0LmFiaS5maW5kKChhYmkpOiBhYmkgaXMgRnVuYyA9PiBhYmkudHlwZSA9PT0gJ2NvbnN0cnVjdG9yJyk7XG5cbiAgICAgIC8vIE5vIGRlcGxveSBmdW5jdGlvbiBmb3IgaW50ZXJmYWNlc1xuICAgICAgY29uc3QgZGVwbG95TWVtYmVycyA9IGNvbnRyYWN0LmJ5dGVjb2RlXG4gICAgICAgID8gW1xuICAgICAgICAgICAgZGVjbGFyZUNvbnN0YW50KGJ5dGVjb2RlTmFtZSwgZmFjdG9yeS5jcmVhdGVTdHJpbmdMaXRlcmFsKGNvbnRyYWN0LmJ5dGVjb2RlLCB0cnVlKSwgdHJ1ZSksXG4gICAgICAgICAgICBkZWNsYXJlQ29uc3RhbnQoZGVwbG95ZWRCeXRlY29kZU5hbWUsIGZhY3RvcnkuY3JlYXRlU3RyaW5nTGl0ZXJhbChjb250cmFjdC5kZXBsb3llZEJ5dGVjb2RlLCB0cnVlKSwgdHJ1ZSksXG4gICAgICAgICAgICBnZW5lcmF0ZURlcGxveUZ1bmN0aW9uKGRlcGxveSwgY29udHJhY3QubGlua3MsIHByb3ZpZGVyLCBhYmlOYW1lLCBjb250cmFjdE5hbWVzKSxcbiAgICAgICAgICAgIGdlbmVyYXRlRGVwbG95Q29udHJhY3RGdW5jdGlvbihkZXBsb3ksIGNvbnRyYWN0LmxpbmtzLCBwcm92aWRlciksXG4gICAgICAgICAgXVxuICAgICAgICA6IFtdO1xuXG4gICAgICBjb25zdCBldmVudHMgPSBtZXRob2RzLmZpbHRlcigoYSkgPT4gYS50eXBlID09PSAnZXZlbnQnKTtcblxuICAgICAgY29uc3QgZXZlbnRNZW1iZXJzID0gZXZlbnRzLmxlbmd0aCA/IFsuLi5ldmVudFR5cGVzKCksIGRlY2xhcmVFdmVudHMoZXZlbnRzKV0gOiBbXTtcblxuICAgICAgY29uc3Qgc3RhdGVtZW50cyA9IFtcbiAgICAgICAgZGVjbGFyZUNvbnN0YW50KGNvbnRyYWN0TmFtZU5hbWUsIGZhY3RvcnkuY3JlYXRlU3RyaW5nTGl0ZXJhbChjb250cmFjdC5uYW1lKSwgdHJ1ZSksXG4gICAgICAgIGRlY2xhcmVDb25zdGFudChhYmlOYW1lLCBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoSlNPTi5zdHJpbmdpZnkoY29udHJhY3QuYWJpKSwgdHJ1ZSksIHRydWUpLFxuICAgICAgICAuLi5kZXBsb3lNZW1iZXJzLFxuICAgICAgICAuLi5ldmVudE1lbWJlcnMsXG4gICAgICAgIGRlY2xhcmVDb250cmFjdFR5cGUoKSxcbiAgICAgICAgZ2VuZXJhdGVDb250cmFjdE9iamVjdChjb250cmFjdC5uYW1lLCBtZXRob2RzLCBwcm92aWRlciksXG4gICAgICAgIGdlbmVyYXRlRW5jb2RlT2JqZWN0KG1ldGhvZHMsIHByb3ZpZGVyLCBhYmlOYW1lKSxcbiAgICAgICAgZ2VuZXJhdGVEZWNvZGVPYmplY3QobWV0aG9kcywgcHJvdmlkZXIsIGFiaU5hbWUpLFxuICAgICAgXTtcbiAgICAgIHJldHVybiBmYWN0b3J5LmNyZWF0ZU1vZHVsZURlY2xhcmF0aW9uKFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIFtFeHBvcnRUb2tlbl0sXG4gICAgICAgIGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcihjb250cmFjdC5uYW1lKSxcbiAgICAgICAgZmFjdG9yeS5jcmVhdGVNb2R1bGVCbG9jayhzdGF0ZW1lbnRzKSxcbiAgICAgICk7XG4gICAgfSksXG4gIF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmludE5vZGVzKC4uLm5vZGVzOiB0cy5Ob2RlW10pOiBzdHJpbmcge1xuICBjb25zdCB0YXJnZXQgPSB0cy5jcmVhdGVTb3VyY2VGaWxlKCcnLCAnJywgdHMuU2NyaXB0VGFyZ2V0LkxhdGVzdCwgZmFsc2UsIHRzLlNjcmlwdEtpbmQuVFMpO1xuICBjb25zdCBwcmludGVyID0gdHMuY3JlYXRlUHJpbnRlcih7IG5ld0xpbmU6IHRzLk5ld0xpbmVLaW5kLkxpbmVGZWVkIH0pO1xuICByZXR1cm4gbm9kZXMubWFwKChub2RlKSA9PiBwcmludGVyLnByaW50Tm9kZSh0cy5FbWl0SGludC5VbnNwZWNpZmllZCwgbm9kZSwgdGFyZ2V0KSkuam9pbignXFxuJyk7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NvbHRzL2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1REFBeUM7QUFFekMsdUNBQWlFO0FBQ2pFLDJDQUE2RTtBQUM3RSx5Q0FBcUQ7QUFDckQsMkNBS3dCO0FBQ3hCLHlDQUFxRDtBQUNyRCx1Q0FBeUQ7QUFDekQsMkNBQTBDO0FBQzFDLDJDQUFvRDtBQUNwRCx1Q0FBMEY7QUFHMUYsZ0RBTThCO0FBTDVCLG9EQUFZO0FBQ1osbURBQVc7QUFDWCwyREFBbUI7QUFDbkIsaUVBQXlCO0FBQ3pCLHFEQUFhO0FBV2YsSUFBTSxnQkFBZ0IsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ2xFLElBQU0sT0FBTyxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7QUFFaEQsb0hBQW9IO0FBQ3BILDRDQUE0QztBQUM1QyxTQUFnQixPQUFPLENBQUMsU0FBcUIsRUFBRSxnQkFBd0I7SUFDckUsSUFBTSxRQUFRLEdBQUcsSUFBSSxtQkFBUSxFQUFFLENBQUM7SUFFaEM7UUFDRSx1QkFBRSxDQUFDLDBCQUEwQixDQUMzQix1QkFBYyxFQUFFLEVBQ2hCLHVCQUFFLENBQUMsVUFBVSxDQUFDLHVCQUF1QixFQUNyQyx1Q0FBdUMsQ0FDeEM7UUFDRCxxQkFBWSxDQUFDLGdCQUFnQixDQUFDO1FBQzlCLFFBQVEsQ0FBQyxlQUFlLEVBQUU7T0FDdkIsb0JBQVc7UUFDZCw2QkFBb0IsQ0FBQyxRQUFRLENBQUM7UUFDM0IsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFDLFFBQVE7UUFDeEIsSUFBTSxPQUFPLEdBQUcsNkJBQWtCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWpELElBQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVB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LENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkUsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLFVBQUMsSUFBSSxJQUFLLE9BQUEsT0FBTyxDQUFDLFNBQVMsQ0FBQyx1QkFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxFQUF4RCxDQUF3RCxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2xHLENBQUM7QUFKRCxnQ0FJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0cywgeyBmYWN0b3J5IH0gZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBBQkkgfSBmcm9tICcuLi9jb250cmFjdHMvYWJpJztcbmltcG9ydCB7IGNhbGxlclR5cGVzLCBjcmVhdGVDYWxsZXJGdW5jdGlvbiB9IGZyb20gJy4vbGliL2NhbGxlcic7XG5pbXBvcnQgeyBkZWNsYXJlQ29udHJhY3RUeXBlLCBnZW5lcmF0ZUNvbnRyYWN0T2JqZWN0IH0gZnJvbSAnLi9saWIvY29udHJhY3QnO1xuaW1wb3J0IHsgZ2VuZXJhdGVEZWNvZGVPYmplY3QgfSBmcm9tICcuL2xpYi9kZWNvZGVyJztcbmltcG9ydCB7XG4gIGJ5dGVjb2RlTmFtZSxcbiAgZGVwbG95ZWRCeXRlY29kZU5hbWUsXG4gIGdlbmVyYXRlRGVwbG95Q29udHJhY3RGdW5jdGlvbixcbiAgZ2VuZXJhdGVEZXBsb3lGdW5jdGlvbixcbn0gZnJvbSAnLi9saWIvZGVwbG95ZXInO1xuaW1wb3J0IHsgZ2VuZXJhdGVFbmNvZGVPYmplY3QgfSBmcm9tICcuL2xpYi9lbmNvZGVyJztcbmltcG9ydCB7IGRlY2xhcmVFdmVudHMsIGV2ZW50VHlwZXMgfSBmcm9tICcuL2xpYi9ldmVudHMnO1xuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tICcuL2xpYi9wcm92aWRlcic7XG5pbXBvcnQgeyBnZXRDb250cmFjdE1ldGhvZHMgfSBmcm9tICcuL2xpYi9zb2xpZGl0eSc7XG5pbXBvcnQgeyBkZWNsYXJlQ29uc3RhbnQsIEV4cG9ydFRva2VuLCBpbXBvcnRCdXJyb3csIGltcG9ydFJlYWRhYmxlIH0gZnJvbSAnLi9saWIvc3ludGF4JztcbmltcG9ydCBGdW5jID0gQUJJLkZ1bmM7XG5cbmV4cG9ydCB7XG4gIGRlY29kZU91dHB1dCxcbiAgZW5jb2RlSW5wdXQsXG4gIGltcG9ydExvY2FsUmVzb2x2ZXIsXG4gIGlucHV0RGVzY3JpcHRpb25Gcm9tRmlsZXMsXG4gIHRva2VuaXplTGlua3MsXG59IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcblxuZXhwb3J0IHR5cGUgQ29tcGlsZWQgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgYWJpOiBBQkkuRnVuY3Rpb25PckV2ZW50W107XG4gIGJ5dGVjb2RlOiBzdHJpbmc7XG4gIGRlcGxveWVkQnl0ZWNvZGU6IHN0cmluZztcbiAgbGlua3M6IEFycmF5PHN0cmluZz47XG59O1xuXG5jb25zdCBjb250cmFjdE5hbWVOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdjb250cmFjdE5hbWUnKTtcbmNvbnN0IGFiaU5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2FiaScpO1xuXG4vLyBOb3RlOiB0aGlzIGlzIGEgdmVyeSB1c2VmdWwgdG9vbCBmb3IgZGlzY292ZXJpbmcgdGhlIGNvcnJlY3QgVHlwZXNjcmlwdCBmYWN0b3J5IEFQSSBjYWxscyB0byBwcm9kdWNlIGEgcGFydGljdWxhclxuLy9waWVjZSBvZiBzeW50YXg6IGh0dHBzOi8vdHMtYXN0LXZpZXdlci5jb21cbmV4cG9ydCBmdW5jdGlvbiBuZXdGaWxlKGNvbnRyYWN0czogQ29tcGlsZWRbXSwgYnVycm93SW1wb3J0UGF0aDogc3RyaW5nKTogdHMuTm9kZVtdIHtcbiAgY29uc3QgcHJvdmlkZXIgPSBuZXcgUHJvdmlkZXIoKTtcblxuICByZXR1cm4gW1xuICAgIHRzLmFkZFN5bnRoZXRpY0xlYWRpbmdDb21tZW50KFxuICAgICAgaW1wb3J0UmVhZGFibGUoKSxcbiAgICAgIHRzLlN5bnRheEtpbmQuU2luZ2xlTGluZUNvbW1lbnRUcml2aWEsXG4gICAgICAnQ29kZSBnZW5lcmF0ZWQgYnkgc29sdHMuIERPIE5PVCBFRElULicsXG4gICAgKSxcbiAgICBpbXBvcnRCdXJyb3coYnVycm93SW1wb3J0UGF0aCksXG4gICAgcHJvdmlkZXIuY3JlYXRlSW50ZXJmYWNlKCksXG4gICAgLi4uY2FsbGVyVHlwZXMsXG4gICAgY3JlYXRlQ2FsbGVyRnVuY3Rpb24ocHJvdmlkZXIpLFxuICAgIC4uLmNvbnRyYWN0cy5tYXAoKGNvbnRyYWN0KSA9PiB7XG4gICAgICBjb25zdCBtZXRob2RzID0gZ2V0Q29udHJhY3RNZXRob2RzKGNvbnRyYWN0LmFiaSk7XG5cbiAgICAgIGNvbnN0IGRlcGxveSA9IGNvbnRyYWN0LmFiaS5maW5kKChhYmkpOiBhYmkgaXMgRnVuYyA9PiBhYmkudHlwZSA9PT0gJ2NvbnN0cnVjdG9yJyk7XG5cbiAgICAgIC8vIE5vIGRlcGxveSBmdW5jdGlvbiBmb3IgaW50ZXJmYWNlc1xuICAgICAgY29uc3QgZGVwbG95TWVtYmVycyA9IGNvbnRyYWN0LmJ5dGVjb2RlXG4gICAgICAgID8gW1xuICAgICAgICAgICAgZGVjbGFyZUNvbnN0YW50KGJ5dGVjb2RlTmFtZSwgZmFjdG9yeS5jcmVhdGVTdHJpbmdMaXRlcmFsKGNvbnRyYWN0LmJ5dGVjb2RlLCB0cnVlKSwgdHJ1ZSksXG4gICAgICAgICAgICBkZWNsYXJlQ29uc3RhbnQoZGVwbG95ZWRCeXRlY29kZU5hbWUsIGZhY3RvcnkuY3JlYXRlU3RyaW5nTGl0ZXJhbChjb250cmFjdC5kZXBsb3llZEJ5dGVjb2RlLCB0cnVlKSwgdHJ1ZSksXG4gICAgICAgICAgICBnZW5lcmF0ZURlcGxveUZ1bmN0aW9uKFxuICAgICAgICAgICAgICBkZXBsb3ksXG4gICAgICAgICAgICAgIGNvbnRyYWN0LmxpbmtzLFxuICAgICAgICAgICAgICBwcm92aWRlcixcbiAgICAgICAgICAgICAgYWJpTmFtZSxcbiAgICAgICAgICAgICAgLy8gRXhjbHVkZSBuYW1lcyBvZiBpbnRlcmZhY2UgY29udHJhY3RzIHNpbmNlIHRoZXkgaGF2ZSBubyBkZXBsb3llZCBjb2RlXG4gICAgICAgICAgICAgIGNvbnRyYWN0cy5maWx0ZXIoKGMpID0+IGMuYnl0ZWNvZGUpLm1hcCgoYykgPT4gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKGMubmFtZSkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGdlbmVyYXRlRGVwbG95Q29udHJhY3RGdW5jdGlvbihkZXBsb3ksIGNvbnRyYWN0LmxpbmtzLCBwcm92aWRlciksXG4gICAgICAgICAgXVxuICAgICAgICA6IFtdO1xuXG4gICAgICBjb25zdCBldmVudHMgPSBtZXRob2RzLmZpbHRlcigoYSkgPT4gYS50eXBlID09PSAnZXZlbnQnKTtcblxuICAgICAgY29uc3QgZXZlbnRNZW1iZXJzID0gZXZlbnRzLmxlbmd0aCA/IFsuLi5ldmVudFR5cGVzKCksIGRlY2xhcmVFdmVudHMoZXZlbnRzKV0gOiBbXTtcblxuICAgICAgY29uc3Qgc3RhdGVtZW50cyA9IFtcbiAgICAgICAgZGVjbGFyZUNvbnN0YW50KGNvbnRyYWN0TmFtZU5hbWUsIGZhY3RvcnkuY3JlYXRlU3RyaW5nTGl0ZXJhbChjb250cmFjdC5uYW1lKSwgdHJ1ZSksXG4gICAgICAgIGRlY2xhcmVDb25zdGFudChhYmlOYW1lLCBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoSlNPTi5zdHJpbmdpZnkoY29udHJhY3QuYWJpKSwgdHJ1ZSksIHRydWUpLFxuICAgICAgICAuLi5kZXBsb3lNZW1iZXJzLFxuICAgICAgICAuLi5ldmVudE1lbWJlcnMsXG4gICAgICAgIGRlY2xhcmVDb250cmFjdFR5cGUoKSxcbiAgICAgICAgZ2VuZXJhdGVDb250cmFjdE9iamVjdChjb250cmFjdC5uYW1lLCBtZXRob2RzLCBwcm92aWRlciksXG4gICAgICAgIGdlbmVyYXRlRW5jb2RlT2JqZWN0KG1ldGhvZHMsIHByb3ZpZGVyLCBhYmlOYW1lKSxcbiAgICAgICAgZ2VuZXJhdGVEZWNvZGVPYmplY3QobWV0aG9kcywgcHJvdmlkZXIsIGFiaU5hbWUpLFxuICAgICAgXTtcbiAgICAgIHJldHVybiBmYWN0b3J5LmNyZWF0ZU1vZHVsZURlY2xhcmF0aW9uKFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIFtFeHBvcnRUb2tlbl0sXG4gICAgICAgIGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcihjb250cmFjdC5uYW1lKSxcbiAgICAgICAgZmFjdG9yeS5jcmVhdGVNb2R1bGVCbG9jayhzdGF0ZW1lbnRzKSxcbiAgICAgICk7XG4gICAgfSksXG4gIF07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmludE5vZGVzKC4uLm5vZGVzOiB0cy5Ob2RlW10pOiBzdHJpbmcge1xuICBjb25zdCB0YXJnZXQgPSB0cy5jcmVhdGVTb3VyY2VGaWxlKCcnLCAnJywgdHMuU2NyaXB0VGFyZ2V0LkxhdGVzdCwgZmFsc2UsIHRzLlNjcmlwdEtpbmQuVFMpO1xuICBjb25zdCBwcmludGVyID0gdHMuY3JlYXRlUHJpbnRlcih7IG5ld0xpbmU6IHRzLk5ld0xpbmVLaW5kLkxpbmVGZWVkIH0pO1xuICByZXR1cm4gbm9kZXMubWFwKChub2RlKSA9PiBwcmludGVyLnByaW50Tm9kZSh0cy5FbWl0SGludC5VbnNwZWNpZmllZCwgbm9kZSwgdGFyZ2V0KSkuam9pbignXFxuJyk7XG59XG4iXX0=
export declare const defaultBuildOptions: {
readonly solcVersion: "v5" | "v8";
readonly burrowImportPath: (sourceFile: string) => string;
readonly binPath: string;
readonly binPath: string | false;
readonly abiExt: string;

@@ -6,0 +6,0 @@ readonly basePath: string | undefined;

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

exports.defaultBuildOptions = {
solcVersion: "v5",
burrowImportPath: function (sourceFile) { return "@hyperledger/burrow"; },
binPath: "bin",
abiExt: ".abi",
solcVersion: 'v5',
burrowImportPath: function (sourceFile) { return '@hyperledger/burrow'; },
binPath: 'bin',
abiExt: '.abi',
// Used to resolve layout in bin folder - defaults to srcPath if is passed or process.cwd() otherwise

@@ -146,10 +146,7 @@ basePath: undefined,

_c = __assign(__assign({}, exports.defaultBuildOptions), opts), failOnWarnings = _c.failOnWarnings, solcVersion = _c.solcVersion, binPath = _c.binPath, basePath = _c.basePath, burrowImportPath = _c.burrowImportPath, abiExt = _c.abiExt;
resolvedBasePath = basePath !== null && basePath !== void 0 ? basePath : (typeof srcPathOrFiles === "string" ? srcPathOrFiles : process.cwd());
resolvedBasePath = basePath !== null && basePath !== void 0 ? basePath : (typeof srcPathOrFiles === 'string' ? srcPathOrFiles : process.cwd());
process.chdir(resolvedBasePath);
basePathPrefix = new RegExp("^" + path.resolve(resolvedBasePath));
return [4 /*yield*/, fs_1.promises.mkdir(binPath, { recursive: true })];
basePathPrefix = new RegExp('^' + path.resolve(resolvedBasePath));
return [4 /*yield*/, getSourceFilesList(srcPathOrFiles)];
case 1:
_d.sent();
return [4 /*yield*/, getSourceFilesList(srcPathOrFiles)];
case 2:
solidityFiles = _d.sent();

@@ -163,13 +160,13 @@ inputDescription = compile_1.inputDescriptionFromFiles(

output = compile_1.decodeOutput(solcOutput);
errors = ((_a = output.errors) === null || _a === void 0 ? void 0 : _a.filter(function (e) { return failOnWarnings || (e.severity === "error"); })) || [];
errors = ((_a = output.errors) === null || _a === void 0 ? void 0 : _a.filter(function (e) { return failOnWarnings || e.severity === 'error'; })) || [];
if (errors.length > 0) {
throw new Error("Solidity compiler errors:\n" + formatErrors(errors));
throw new Error('Solidity compiler errors:\n' + formatErrors(errors));
}
warnings = ((_b = output.errors) === null || _b === void 0 ? void 0 : _b.filter(function (e) { return e.severity === "warning"; })) || [];
warnings = ((_b = output.errors) === null || _b === void 0 ? void 0 : _b.filter(function (e) { return e.severity === 'warning'; })) || [];
if (warnings.length) {
console.error("Solidity compiler warnings (not treated as fatal):\n" + formatErrors(warnings));
console.error('Solidity compiler warnings (not treated as fatal):\n' + formatErrors(warnings));
}
plan = Object.keys(output.contracts).map(function (filename) { return ({
source: filename,
target: filename.replace(/\.[^/.]+$/, ".abi.ts"),
target: filename.replace(/\.[^/.]+$/, '.abi.ts'),
contracts: Object.entries(output.contracts[filename]).map(function (_a) {

@@ -183,2 +180,7 @@ var name = _a[0], contract = _a[1];

}); });
binPlan = [];
if (!(binPath !== false)) return [3 /*break*/, 3];
return [4 /*yield*/, fs_1.promises.mkdir(binPath, { recursive: true })];
case 2:
_d.sent();
binPlan = plan.flatMap(function (f) {

@@ -190,3 +192,3 @@ return f.contracts.map(function (_a) {

name: name,
filename: path.join(binPath, path.dirname(path.resolve(f.source)).replace(basePathPrefix, ""), name + abiExt),
filename: path.join(binPath, path.dirname(path.resolve(f.source)).replace(basePathPrefix, ''), name + abiExt),
abi: JSON.stringify(contract)

@@ -203,29 +205,31 @@ });

throw Error("Duplicate contract names found (these contracts will result ABI filenames that will collide since ABIs " +
("are flattened in '" + binPath + "'):\n" + dupeDescs.map(function (d) { return JSON.stringify(d); }).join("\n")));
("are flattened in '" + binPath + "'):\n" + dupeDescs.map(function (d) { return JSON.stringify(d); }).join('\n')));
}
// Write the ABIs emitted for each file to the name of that file without extension. We flatten into a single
// directory because that's what burrow deploy has always done.
return [4 /*yield*/, Promise.all(__spreadArray(__spreadArray([], binPlan.map(function (_a) {
var filename = _a.filename, abi = _a.abi;
return __awaiter(_this, void 0, void 0, function () {
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, fs_1.promises.mkdir(path.dirname(filename), { recursive: true })];
case 1:
_b.sent();
return [4 /*yield*/, fs_1.promises.writeFile(filename, abi)];
case 2:
_b.sent();
return [2 /*return*/];
}
});
_d.label = 3;
case 3:
// Write the ABIs emitted for each file to the name of that file without extension. We flatten into a single
// directory because that's what burrow deploy has always done.
return [4 /*yield*/, Promise.all(__spreadArray(__spreadArray([], binPlan.map(function (_a) {
var filename = _a.filename, abi = _a.abi;
return __awaiter(_this, void 0, void 0, function () {
return __generator(this, function (_b) {
switch (_b.label) {
case 0: return [4 /*yield*/, fs_1.promises.mkdir(path.dirname(filename), { recursive: true })];
case 1:
_b.sent();
return [4 /*yield*/, fs_1.promises.writeFile(filename, abi)];
case 2:
_b.sent();
return [2 /*return*/];
}
});
})), plan.map(function (_a) {
var source = _a.source, target = _a.target, contracts = _a.contracts;
return fs_1.promises.writeFile(target, api_1.printNodes.apply(void 0, api_1.newFile(contracts.map(function (_a) {
var name = _a.name, contract = _a.contract;
return getCompiled(name, contract);
}), burrowImportPath(source))));
})))];
case 3:
});
})), plan.map(function (_a) {
var source = _a.source, target = _a.target, contracts = _a.contracts;
return fs_1.promises.writeFile(target, api_1.printNodes.apply(void 0, api_1.newFile(contracts.map(function (_a) {
var name = _a.name, contract = _a.contract;
return getCompiled(name, contract);
}), burrowImportPath(source))));
})))];
case 4:
// Write the ABIs emitted for each file to the name of that file without extension. We flatten into a single

@@ -278,3 +282,3 @@ // directory because that's what burrow deploy has always done.

case 0:
if (!(typeof srcPathOrFiles === "string")) return [3 /*break*/, 13];
if (!(typeof srcPathOrFiles === 'string')) return [3 /*break*/, 13];
files = [];

@@ -290,3 +294,3 @@ _d.label = 1;

f = _c.value;
if (path.extname(f) === ".sol") {
if (path.extname(f) === '.sol') {
files.push(f);

@@ -373,4 +377,4 @@ }

function formatErrors(errors) {
return errors.map(function (err) { return err.formattedMessage || err.message; }).join("");
return errors.map(function (err) { return err.formattedMessage || err.message; }).join('');
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc29sdHMvYnVpbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlCQUFvQztBQUNwQyx5Q0FBNkI7QUFDN0IsOENBQWtDO0FBQ2xDLDhDQUFrQztBQUNsQyxnREFNOEI7QUFDOUIsNkJBQXFFO0FBRXJFLElBQU0sYUFBYSxHQUFHO0lBQ3BCLEVBQUUsRUFBRSxNQUFNO0lBQ1YsRUFBRSxFQUFFLE1BQU07Q0FDRixDQUFDO0FBRUUsUUFBQSxtQkFBbUIsR0FBRztJQUNqQyxXQUFXLEVBQUUsSUFBa0M7SUFDL0MsZ0JBQWdCLEVBQUUsVUFBQyxVQUFrQixJQUFLLE9BQUEscUJBQStCLEVBQS9CLENBQStCO0lBQ3pFLE9BQU8sRUFBRSxLQUFlO0lBQ3hCLE1BQU0sRUFBRSxNQUFnQjtJQUN4QixxR0FBcUc7SUFDckcsUUFBUSxFQUFFLFNBQStCO0lBQ3pDLGNBQWMsRUFBRSxLQUFnQjtDQUN4QixDQUFDO0FBSVg7Ozs7OztHQU1HO0FBQ0gsU0FBc0IsS0FBSyxDQUFDLGNBQWlDLEVBQUUsSUFBNEI7Ozs7Ozs7O29CQUNuRiwyQkFDRCwyQkFBbUIsR0FDbkIsSUFBSSxDQUNSLEVBSE8sY0FBYyxvQkFBQSxFQUFFLFdBQVcsaUJBQUEsRUFBRSxPQUFPLGFBQUEsRUFBRSxRQUFRLGNBQUEsRUFBRSxnQkFBZ0Isc0JBQUEsRUFBRSxNQUFNLFlBQUEsQ0FHOUU7b0JBQ0ksZ0JBQWdCLEdBQUcsUUFBUSxhQUFSLFFBQVEsY0FBUixRQUFRLEdBQUksQ0FBQyxPQUFPLGNBQWMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcs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QkFFSCxzQkFBTyxLQUFLLEVBQUM7eUJBRWYsc0JBQU8sY0FBYyxFQUFDOzs7O0NBQ3ZCO0FBRUQsU0FBZ0IsT0FBTyxDQUFDLEdBQVc7Ozs7Ozs7O29CQUNYLDZCQUFNLGFBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUE7O29CQUFyQixLQUFBLDZCQUFBLFNBQXFCLEVBQUE7Ozs7O29CQUExQixDQUFDLFdBQUEsQ0FBQTtvQkFDVixLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO3lCQUNqQyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQWYsd0JBQWU7b0JBQ2pCLHNCQUFBLFNBQU8saUJBQUEsY0FBQSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUEsQ0FBQSxDQUFBLEVBQUE7d0JBQXJCLDRDQUFBLFNBQXFCLElBQUE7O29CQUFyQixTQUFxQixDQUFDOzs7eUJBQ2IsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFWLHdCQUFVO2lEQUNiLEtBQUs7d0JBQVgsZ0NBQVc7O29CQUFYLFNBQVcsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBR2pCO0FBRUQsU0FBUyxZQUFZLENBQUMsTUFBd0I7SUFDNUMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQUMsR0FBRyxJQUFLLE9BQUEsR0FBRyxDQUFDLGdCQUFnQixJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQW5DLENBQW1DLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7QUFDMUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHByb21pc2VzIGFzIGZzIH0gZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgKiBhcyBzb2xjdjUgZnJvbSBcInNvbGNfdjVcIjtcbmltcG9ydCAqIGFzIHNvbGN2OCBmcm9tIFwic29sY192OFwiO1xuaW1wb3J0IHtcbiAgZGVjb2RlT3V0cHV0LFxuICBlbmNvZGVJbnB1dCxcbiAgaW1wb3J0TG9jYWxSZXNvbHZlcixcbiAgaW5wdXREZXNjcmlwdGlvbkZyb21GaWxlcyxcbiAgU29saWRpdHlcbn0gZnJvbSBcIi4uL2NvbnRyYWN0cy9jb21waWxlXCI7XG5pbXBvcnQgeyBDb21waWxlZCwgbmV3RmlsZSwgcHJpbnROb2RlcywgdG9rZW5pemVMaW5rcyB9IGZyb20gXCIuL2FwaVwiO1xuXG5jb25zdCBzb2xjQ29tcGlsZXJzID0ge1xuICB2NTogc29sY3Y1LFxuICB2ODogc29sY3Y4XG59IGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgZGVmYXVsdEJ1aWxkT3B0aW9ucyA9IHtcbiAgc29sY1ZlcnNpb246IFwidjVcIiBhcyBrZXlvZiB0eXBlb2Ygc29sY0NvbXBpbGVycyxcbiAgYnVycm93SW1wb3J0UGF0aDogKHNvdXJjZUZpbGU6IHN0cmluZykgPT4gXCJAaHlwZXJsZWRnZXIvYnVycm93XCIgYXMgc3RyaW5nLFxuICBiaW5QYXRoOiBcImJpblwiIGFzIHN0cmluZyxcbiAgYWJpRXh0OiBcIi5hYmlcIiBhcyBzdHJpbmcsXG4gIC8vIFVzZWQgdG8gcmVzb2x2ZSBsYXlvdXQgaW4gYmluIGZvbGRlciAtIGRlZmF1bHRzIHRvIHNyY1BhdGggaWYgaXMgcGFzc2VkIG9yIHByb2Nlc3MuY3dkKCkgb3RoZXJ3aXNlXG4gIGJhc2VQYXRoOiB1bmRlZmluZWQgYXMgdW5kZWZpbmVkIHwgc3RyaW5nLFxuICBmYWlsT25XYXJuaW5nczogZmFsc2UgYXMgYm9vbGVhblxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgQnVpbGRPcHRpb25zID0gdHlwZW9mIGRlZmF1bHRCdWlsZE9wdGlvbnM7XG5cbi8qKlxuICogVGhpcyBpcyBvdXIgU29saWRpdHkgLT4gVHlwZXNjcmlwdCBjb2RlIGdlbmVyYXRpb24gZnVuY3Rpb24sIGl0OlxuICogIC0gQ29tcGlsZXMgU29saWRpdHkgc291cmNlXG4gKiAgLSBHZW5lcmF0ZXMgdHlwZXNjcmlwdCBjb2RlIHdyYXBwaW5nIHRoZSBTb2xpZGl0eSBjb250cmFjdHMgYW5kIGZ1bmN0aW9ucyB0aGF0IGNhbGxzIEJ1cnJvd1xuICogIC0gR2VuZXJhdGVzIHR5cGVzY3JpcHQgY29kZSB0byBkZXBsb3kgdGhlIGNvbnRyYWN0c1xuICogIC0gT3V0cHV0cyB0aGUgQUJJIGZpbGVzIGludG8gYmluIHRvIGJlIGxhdGVyIGluY2x1ZGVkIGluIHRoZSBkaXN0cmlidXRpb24gKGZvciBWZW50IGFuZCBvdGhlciBBQkktY29uc3VtaW5nIHNlcnZpY2VzKVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVpbGQoc3JjUGF0aE9yRmlsZXM6IHN0cmluZyB8IHN0cmluZ1tdLCBvcHRzPzogUGFydGlhbDxCdWlsZE9wdGlvbnM+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHsgZmFpbE9uV2FybmluZ3MsIHNvbGNWZXJzaW9uLCBiaW5QYXRoLCBiYXNlUGF0aCwgYnVycm93SW1wb3J0UGF0aCwgYWJpRXh0IH0gPSB7XG4gICAgLi4uZGVmYXVsdEJ1aWxkT3B0aW9ucyxcbiAgICAuLi5vcHRzXG4gIH07XG4gIGNvbnN0IHJlc29sdmVkQmFzZVBhdGggPSBiYXNlUGF0aCA/PyAodHlwZW9mIHNyY1BhdGhPckZpbGVzID09PSBcInN0cmluZ1wiID8gc3JjUGF0aE9yRmlsZXMgOiBwcm9jZXNzLmN3ZCgpKTtcbiAgcHJvY2Vzcy5jaGRpcihyZXNvbHZlZEJhc2VQYXRoKTtcbiAgY29uc3QgYmFzZVBhdGhQcmVmaXggPSBuZXcgUmVnRXhwKFwiXlwiICsgcGF0aC5yZXNvbHZlKHJlc29sdmVkQmFzZVBhdGgpKTtcbiAgYXdhaXQgZnMubWtkaXIoYmluUGF0aCwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gIGNvbnN0IHNvbGlkaXR5RmlsZXMgPSBhd2FpdCBnZXRTb3VyY2VGaWxlc0xpc3Qoc3JjUGF0aE9yRmlsZXMpO1xuICBjb25zdCBpbnB1dERlc2NyaXB0aW9uID0gaW5wdXREZXNjcmlwdGlvbkZyb21GaWxlcyhcbiAgICAvLyBzb2xpZGl0eUZpbGVzLm1hcCgoZikgPT4gcGF0aC5yZXNvbHZlKHJlc29sdmVkQmFzZVBhdGgsIGYucmVwbGFjZShiYXNlUGF0aFByZWZpeCwgJycpKSksXG4gICAgc29saWRpdHlGaWxlc1xuICApO1xuICBjb25zdCBpbnB1dCA9IGVuY29kZUlucHV0KGlucHV0RGVzY3JpcHRpb24pO1xuICBjb25zdCBzb2xjID0gc29sY0NvbXBpbGVyc1tzb2xjVmVyc2lvbl07XG5cbiAgY29uc3Qgc29sY091dHB1dCA9IHNvbGMuY29tcGlsZShpbnB1dCwgeyBpbXBvcnQ6IGltcG9ydExvY2FsUmVzb2x2ZXIocmVzb2x2ZWRCYXNlUGF0aCkgfSk7XG4gIGNvbnN0IG91dHB1dCA9IGRlY29kZU91dHB1dChzb2xjT3V0cHV0KTtcbiAgY29uc3QgZXJyb3JzID0gb3V0cHV0LmVycm9ycz8uZmlsdGVyKChlKSA9PiBmYWlsT25XYXJuaW5ncyB8fCAoZS5zZXZlcml0eSA9PT0gXCJlcnJvclwiKSkgfHwgW107XG4gIGlmIChlcnJvcnMubGVuZ3RoID4gMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwiU29saWRpdHkgY29tcGlsZXIgZXJyb3JzOlxcblwiICsgZm9ybWF0RXJyb3JzKGVycm9ycylcbiAgICApO1xuICB9XG4gIGNvbnN0IHdhcm5pbmdzID0gb3V0cHV0LmVycm9ycz8uZmlsdGVyKChlKSA9PiBlLnNldmVyaXR5ID09PSBcIndhcm5pbmdcIikgfHwgW107XG5cbiAgaWYgKHdhcm5pbmdzLmxlbmd0aCkge1xuICAgIGNvbnNvbGUuZXJyb3IoXCJTb2xpZGl0eSBjb21waWxlciB3YXJuaW5ncyAobm90IHRyZWF0ZWQgYXMgZmF0YWwpOlxcblwiICsgZm9ybWF0RXJyb3JzKHdhcm5pbmdzKSlcbiAgfVxuXG4gIGNvbnN0IHBsYW4gPSBPYmplY3Qua2V5cyhvdXRwdXQuY29udHJhY3RzKS5tYXAoKGZpbGVuYW1lKSA9PiAoe1xuICAgIHNvdXJjZTogZmlsZW5hbWUsXG4gICAgdGFyZ2V0OiBmaWxlbmFtZS5yZXBsYWNlKC9cXC5bXi8uXSskLywgXCIuYWJpLnRzXCIpLFxuICAgIGNvbnRyYWN0czogT2JqZWN0LmVudHJpZXMob3V0cHV0LmNvbnRyYWN0c1tmaWxlbmFtZV0pLm1hcCgoW25hbWUsIGNvbnRyYWN0XSkgPT4gKHtcbiAgICAgIG5hbWUsXG4gICAgICBjb250cmFjdFxuICAgIH0pKVxuICB9KSk7XG5cbiAgY29uc3QgYmluUGxhbiA9IHBsYW4uZmxhdE1hcCgoZikgPT4ge1xuICAgIHJldHVybiBmLmNvbnRyYWN0cy5tYXAoKHsgbmFtZSwgY29udHJhY3QgfSkgPT4gKHtcbiAgICAgIHNvdXJjZTogZi5zb3VyY2UsXG4gICAgICBuYW1lLFxuICAgICAgZmlsZW5hbWU6IHBhdGguam9pbihiaW5QYXRoLCBwYXRoLmRpcm5hbWUocGF0aC5yZXNvbHZlKGYuc291cmNlKSkucmVwbGFjZShiYXNlUGF0aFByZWZpeCwgXCJcIiksIG5hbWUgKyBhYmlFeHQpLFxuICAgICAgYWJpOiBKU09OLnN0cmluZ2lmeShjb250cmFjdClcbiAgICB9KSk7XG4gIH0pO1xuXG4gIGNvbnN0IGR1cGVzID0gZmluZER1cGVzKGJpblBsYW4sIChiKSA9PiBiLmZpbGVuYW1lKTtcblxuICBpZiAoZHVwZXMubGVuZ3RoKSB7XG4gICAgY29uc3QgZHVwZURlc2NzID0gZHVwZXMubWFwKCh7IGtleSwgZHVwZXMgfSkgPT4gKHsgZHVwbGljYXRlOiBrZXksIHNvdXJjZXM6IGR1cGVzLm1hcCgoZCkgPT4gZC5zb3VyY2UpIH0pKTtcbiAgICB0aHJvdyBFcnJvcihcbiAgICAgIGBEdXBsaWNhdGUgY29udHJhY3QgbmFtZXMgZm91bmQgKHRoZXNlIGNvbnRyYWN0cyB3aWxsIHJlc3VsdCBBQkkgZmlsZW5hbWVzIHRoYXQgd2lsbCBjb2xsaWRlIHNpbmNlIEFCSXMgYCArXG4gICAgICBgYXJlIGZsYXR0ZW5lZCBpbiAnJHtiaW5QYXRofScpOlxcbiR7ZHVwZURlc2NzLm1hcCgoZCkgPT4gSlNPTi5zdHJpbmdpZnkoZCkpLmpvaW4oXCJcXG5cIil9YFxuICAgICk7XG4gIH1cblxuICAvLyBXcml0ZSB0aGUgQUJJcyBlbWl0dGVkIGZvciBlYWNoIGZpbGUgdG8gdGhlIG5hbWUgb2YgdGhhdCBmaWxlIHdpdGhvdXQgZXh0ZW5zaW9uLiBXZSBmbGF0dGVuIGludG8gYSBzaW5nbGVcbiAgLy8gZGlyZWN0b3J5IGJlY2F1c2UgdGhhdCdzIHdoYXQgYnVycm93IGRlcGxveSBoYXMgYWx3YXlzIGRvbmUuXG4gIGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAuLi5iaW5QbGFuLm1hcChhc3luYyAoeyBmaWxlbmFtZSwgYWJpIH0pID0+IHtcbiAgICAgIGF3YWl0IGZzLm1rZGlyKHBhdGguZGlybmFtZShmaWxlbmFtZSksIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKGZpbGVuYW1lLCBhYmkpO1xuICAgIH0pLFxuICAgIC4uLnBsYW4ubWFwKCh7IHNvdXJjZSwgdGFyZ2V0LCBjb250cmFjdHMgfSkgPT5cbiAgICAgIGZzLndyaXRlRmlsZShcbiAgICAgICAgdGFyZ2V0LFxuICAgICAgICBwcmludE5vZGVzKFxuICAgICAgICAgIC4uLm5ld0ZpbGUoXG4gICAgICAgICAgICBjb250cmFjdHMubWFwKCh7IG5hbWUsIGNvbnRyYWN0IH0pID0+IGdldENvbXBpbGVkKG5hbWUsIGNvbnRyYWN0KSksXG4gICAgICAgICAgICBidXJyb3dJbXBvcnRQYXRoKHNvdXJjZSlcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gIF0pO1xufVxuXG5mdW5jdGlvbiBnZXRDb21waWxlZChuYW1lOiBzdHJpbmcsIGNvbnRyYWN0OiBTb2xpZGl0eS5Db250cmFjdCk6IENvbXBpbGVkIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lLFxuICAgIGFiaTogY29udHJhY3QuYWJpLFxuICAgIGJ5dGVjb2RlOiBjb250cmFjdC5ldm0uYnl0ZWNvZGUub2JqZWN0LFxuICAgIGRlcGxveWVkQnl0ZWNvZGU6IGNvbnRyYWN0LmV2bS5kZXBsb3llZEJ5dGVjb2RlLm9iamVjdCxcbiAgICBsaW5rczogdG9rZW5pemVMaW5rcyhjb250cmFjdC5ldm0uYnl0ZWNvZGUubGlua1JlZmVyZW5jZXMpXG4gIH07XG59XG5cbmZ1bmN0aW9uIGZpbmREdXBlczxUPihsaXN0OiBUW10sIGJ5OiAodDogVCkgPT4gc3RyaW5nKTogeyBrZXk6IHN0cmluZzsgZHVwZXM6IFRbXSB9W10ge1xuICBjb25zdCBncm91cGVkID0gbGlzdC5yZWR1Y2UoKGFjYywgdCkgPT4ge1xuICAgIGNvbnN0IGsgPSBieSh0KTtcbiAgICBpZiAoIWFjY1trXSkge1xuICAgICAgYWNjW2tdID0gW107XG4gICAgfVxuICAgIGFjY1trXS5wdXNoKHQpO1xuICAgIHJldHVybiBhY2M7XG4gIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIFRbXT4pO1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMoZ3JvdXBlZClcbiAgICAuZmlsdGVyKChbXywgZ3JvdXBdKSA9PiBncm91cC5sZW5ndGggPiAxKVxuICAgIC5tYXAoKFtrZXksIGR1cGVzXSkgPT4gKHtcbiAgICAgIGtleSxcbiAgICAgIGR1cGVzXG4gICAgfSkpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRTb3VyY2VGaWxlc0xpc3Qoc3JjUGF0aE9yRmlsZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICBpZiAodHlwZW9mIHNyY1BhdGhPckZpbGVzID09PSBcInN0cmluZ1wiKSB7XG4gICAgY29uc3QgZmlsZXM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIGF3YWl0IChjb25zdCBmIG9mIHdhbGtEaXIoc3JjUGF0aE9yRmlsZXMpKSB7XG4gICAgICBpZiAocGF0aC5leHRuYW1lKGYpID09PSBcIi5zb2xcIikge1xuICAgICAgICBmaWxlcy5wdXNoKGYpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmlsZXM7XG4gIH1cbiAgcmV0dXJuIHNyY1BhdGhPckZpbGVzO1xufVxuXG5hc3luYyBmdW5jdGlvbiogd2Fsa0RpcihkaXI6IHN0cmluZyk6IEFzeW5jR2VuZXJhdG9yPHN0cmluZywgdm9pZCwgdm9pZD4ge1xuICBmb3IgYXdhaXQgKGNvbnN0IGQgb2YgYXdhaXQgZnMub3BlbmRpcihkaXIpKSB7XG4gICAgY29uc3QgZW50cnkgPSBwYXRoLmpvaW4oZGlyLCBkLm5hbWUpO1xuICAgIGlmIChkLmlzRGlyZWN0b3J5KCkpIHtcbiAgICAgIHlpZWxkKiB3YWxrRGlyKGVudHJ5KTtcbiAgICB9IGVsc2UgaWYgKGQuaXNGaWxlKCkpIHtcbiAgICAgIHlpZWxkIGVudHJ5O1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBmb3JtYXRFcnJvcnMoZXJyb3JzOiBTb2xpZGl0eS5FcnJvcltdKTogc3RyaW5nIHtcbiAgcmV0dXJuIGVycm9ycy5tYXAoKGVycikgPT4gZXJyLmZvcm1hdHRlZE1lc3NhZ2UgfHwgZXJyLm1lc3NhZ2UpLmpvaW4oXCJcIilcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc29sdHMvYnVpbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlCQUFvQztBQUNwQyx5Q0FBNkI7QUFDN0IsOENBQWtDO0FBQ2xDLDhDQUFrQztBQUNsQyxnREFNOEI7QUFDOUIsNkJBQXFFO0FBRXJFLElBQU0sYUFBYSxHQUFHO0lBQ3BCLEVBQUUsRUFBRSxNQUFNO0lBQ1YsRUFBRSxFQUFFLE1BQU07Q0FDRixDQUFDO0FBRUUsUUFBQSxtQkFBbUIsR0FBRztJQUNqQyxXQUFXLEVBQUUsSUFBa0M7SUFDL0MsZ0JBQWdCLEVBQUUsVUFBQyxVQUFrQixJQUFLLE9BQUEscUJBQStCLEVBQS9CLENBQStCO0lBQ3pFLE9BQU8sRUFBRSxLQUF1QjtJQUNoQyxNQUFNLEVBQUUsTUFBZ0I7SUFDeEIscUdBQXFHO0lBQ3JHLFFBQVEsRUFBRSxTQUErQjtJQUN6QyxjQUFjLEVBQUUsS0FBZ0I7Q0FDeEIsQ0FBQztBQUlYOzs7Ozs7R0FNRztBQUNILFNBQXNCLEtBQUssQ0FBQyxjQUFpQyxFQUFFLElBQTRCOzs7Ozs7OztvQkFDbkYsMkJBQ0QsMkJBQW1CLEdBQ25CLElBQUksQ0FDUixFQUhPLGNBQWMsb0JBQUEsRUFBRSxXQUFXLGlCQUFBLEVBQUUsT0FBTyxhQUFBLEVBQUUsUUFBUSxjQUFBLEVBQUUsZ0JBQWdCLHNCQUFBLEVBQUUsTUFBTSxZQUFBLENBRzlFO29CQUNJLGdCQUFnQixHQUFHLFFBQVEsYUFBUixRQUFRLGNBQVIsUUFBUSxHQUFJLENBQUMsT0FBTyxjQUFjLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFH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QUM5QixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUNmOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozt5QkFFSCxzQkFBTyxLQUFLLEVBQUM7eUJBRWYsc0JBQU8sY0FBYyxFQUFDOzs7O0NBQ3ZCO0FBRUQsU0FBZ0IsT0FBTyxDQUFDLEdBQVc7Ozs7Ozs7O29CQUNYLDZCQUFNLGFBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUE7O29CQUFyQixLQUFBLDZCQUFBLFNBQXFCLEVBQUE7Ozs7O29CQUExQixDQUFDLFdBQUEsQ0FBQTtvQkFDVixLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO3lCQUNqQyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQWYsd0JBQWU7b0JBQ2pCLHNCQUFBLFNBQU8saUJBQUEsY0FBQSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUEsQ0FBQSxDQUFBLEVBQUE7d0JBQXJCLDRDQUFBLFNBQXFCLElBQUE7O29CQUFyQixTQUFxQixDQUFDOzs7eUJBQ2IsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFWLHdCQUFVO2lEQUNiLEtBQUs7d0JBQVgsZ0NBQVc7O29CQUFYLFNBQVcsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBR2pCO0FBRUQsU0FBUyxZQUFZLENBQUMsTUFBd0I7SUFDNUMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQUMsR0FBRyxJQUFLLE9BQUEsR0FBRyxDQUFDLGdCQUFnQixJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQW5DLENBQW1DLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHByb21pc2VzIGFzIGZzIH0gZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIHNvbGN2NSBmcm9tICdzb2xjX3Y1JztcbmltcG9ydCAqIGFzIHNvbGN2OCBmcm9tICdzb2xjX3Y4JztcbmltcG9ydCB7XG4gIGRlY29kZU91dHB1dCxcbiAgZW5jb2RlSW5wdXQsXG4gIGltcG9ydExvY2FsUmVzb2x2ZXIsXG4gIGlucHV0RGVzY3JpcHRpb25Gcm9tRmlsZXMsXG4gIFNvbGlkaXR5LFxufSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBDb21waWxlZCwgbmV3RmlsZSwgcHJpbnROb2RlcywgdG9rZW5pemVMaW5rcyB9IGZyb20gJy4vYXBpJztcblxuY29uc3Qgc29sY0NvbXBpbGVycyA9IHtcbiAgdjU6IHNvbGN2NSxcbiAgdjg6IHNvbGN2OCxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0QnVpbGRPcHRpb25zID0ge1xuICBzb2xjVmVyc2lvbjogJ3Y1JyBhcyBrZXlvZiB0eXBlb2Ygc29sY0NvbXBpbGVycyxcbiAgYnVycm93SW1wb3J0UGF0aDogKHNvdXJjZUZpbGU6IHN0cmluZykgPT4gJ0BoeXBlcmxlZGdlci9idXJyb3cnIGFzIHN0cmluZyxcbiAgYmluUGF0aDogJ2JpbicgYXMgc3RyaW5nIHwgZmFsc2UsXG4gIGFiaUV4dDogJy5hYmknIGFzIHN0cmluZyxcbiAgLy8gVXNlZCB0byByZXNvbHZlIGxheW91dCBpbiBiaW4gZm9sZGVyIC0gZGVmYXVsdHMgdG8gc3JjUGF0aCBpZiBpcyBwYXNzZWQgb3IgcHJvY2Vzcy5jd2QoKSBvdGhlcndpc2VcbiAgYmFzZVBhdGg6IHVuZGVmaW5lZCBhcyB1bmRlZmluZWQgfCBzdHJpbmcsXG4gIGZhaWxPbldhcm5pbmdzOiBmYWxzZSBhcyBib29sZWFuLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgQnVpbGRPcHRpb25zID0gdHlwZW9mIGRlZmF1bHRCdWlsZE9wdGlvbnM7XG5cbi8qKlxuICogVGhpcyBpcyBvdXIgU29saWRpdHkgLT4gVHlwZXNjcmlwdCBjb2RlIGdlbmVyYXRpb24gZnVuY3Rpb24sIGl0OlxuICogIC0gQ29tcGlsZXMgU29saWRpdHkgc291cmNlXG4gKiAgLSBHZW5lcmF0ZXMgdHlwZXNjcmlwdCBjb2RlIHdyYXBwaW5nIHRoZSBTb2xpZGl0eSBjb250cmFjdHMgYW5kIGZ1bmN0aW9ucyB0aGF0IGNhbGxzIEJ1cnJvd1xuICogIC0gR2VuZXJhdGVzIHR5cGVzY3JpcHQgY29kZSB0byBkZXBsb3kgdGhlIGNvbnRyYWN0c1xuICogIC0gT3V0cHV0cyB0aGUgQUJJIGZpbGVzIGludG8gYmluIHRvIGJlIGxhdGVyIGluY2x1ZGVkIGluIHRoZSBkaXN0cmlidXRpb24gKGZvciBWZW50IGFuZCBvdGhlciBBQkktY29uc3VtaW5nIHNlcnZpY2VzKVxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVpbGQoc3JjUGF0aE9yRmlsZXM6IHN0cmluZyB8IHN0cmluZ1tdLCBvcHRzPzogUGFydGlhbDxCdWlsZE9wdGlvbnM+KTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IHsgZmFpbE9uV2FybmluZ3MsIHNvbGNWZXJzaW9uLCBiaW5QYXRoLCBiYXNlUGF0aCwgYnVycm93SW1wb3J0UGF0aCwgYWJpRXh0IH0gPSB7XG4gICAgLi4uZGVmYXVsdEJ1aWxkT3B0aW9ucyxcbiAgICAuLi5vcHRzLFxuICB9O1xuICBjb25zdCByZXNvbHZlZEJhc2VQYXRoID0gYmFzZVBhdGggPz8gKHR5cGVvZiBzcmNQYXRoT3JGaWxlcyA9PT0gJ3N0cmluZycgPyBzcmNQYXRoT3JGaWxlcyA6IHByb2Nlc3MuY3dkKCkpO1xuICBwcm9jZXNzLmNoZGlyKHJlc29sdmVkQmFzZVBhdGgpO1xuICBjb25zdCBiYXNlUGF0aFByZWZpeCA9IG5ldyBSZWdFeHAoJ14nICsgcGF0aC5yZXNvbHZlKHJlc29sdmVkQmFzZVBhdGgpKTtcbiAgY29uc3Qgc29saWRpdHlGaWxlcyA9IGF3YWl0IGdldFNvdXJjZUZpbGVzTGlzdChzcmNQYXRoT3JGaWxlcyk7XG4gIGNvbnN0IGlucHV0RGVzY3JpcHRpb24gPSBpbnB1dERlc2NyaXB0aW9uRnJvbUZpbGVzKFxuICAgIC8vIHNvbGlkaXR5RmlsZXMubWFwKChmKSA9PiBwYXRoLnJlc29sdmUocmVzb2x2ZWRCYXNlUGF0aCwgZi5yZXBsYWNlKGJhc2VQYXRoUHJlZml4LCAnJykpKSxcbiAgICBzb2xpZGl0eUZpbGVzLFxuICApO1xuICBjb25zdCBpbnB1dCA9IGVuY29kZUlucHV0KGlucHV0RGVzY3JpcHRpb24pO1xuICBjb25zdCBzb2xjID0gc29sY0NvbXBpbGVyc1tzb2xjVmVyc2lvbl07XG5cbiAgY29uc3Qgc29sY091dHB1dCA9IHNvbGMuY29tcGlsZShpbnB1dCwgeyBpbXBvcnQ6IGltcG9ydExvY2FsUmVzb2x2ZXIocmVzb2x2ZWRCYXNlUGF0aCkgfSk7XG4gIGNvbnN0IG91dHB1dCA9IGRlY29kZU91dHB1dChzb2xjT3V0cHV0KTtcbiAgY29uc3QgZXJyb3JzID0gb3V0cHV0LmVycm9ycz8uZmlsdGVyKChlKSA9PiBmYWlsT25XYXJuaW5ncyB8fCBlLnNldmVyaXR5ID09PSAnZXJyb3InKSB8fCBbXTtcbiAgaWYgKGVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdTb2xpZGl0eSBjb21waWxlciBlcnJvcnM6XFxuJyArIGZvcm1hdEVycm9ycyhlcnJvcnMpKTtcbiAgfVxuICBjb25zdCB3YXJuaW5ncyA9IG91dHB1dC5lcnJvcnM/LmZpbHRlcigoZSkgPT4gZS5zZXZlcml0eSA9PT0gJ3dhcm5pbmcnKSB8fCBbXTtcblxuICBpZiAod2FybmluZ3MubGVuZ3RoKSB7XG4gICAgY29uc29sZS5lcnJvcignU29saWRpdHkgY29tcGlsZXIgd2FybmluZ3MgKG5vdCB0cmVhdGVkIGFzIGZhdGFsKTpcXG4nICsgZm9ybWF0RXJyb3JzKHdhcm5pbmdzKSk7XG4gIH1cblxuICBjb25zdCBwbGFuID0gT2JqZWN0LmtleXMob3V0cHV0LmNvbnRyYWN0cykubWFwKChmaWxlbmFtZSkgPT4gKHtcbiAgICBzb3VyY2U6IGZpbGVuYW1lLFxuICAgIHRhcmdldDogZmlsZW5hbWUucmVwbGFjZSgvXFwuW14vLl0rJC8sICcuYWJpLnRzJyksXG4gICAgY29udHJhY3RzOiBPYmplY3QuZW50cmllcyhvdXRwdXQuY29udHJhY3RzW2ZpbGVuYW1lXSkubWFwKChbbmFtZSwgY29udHJhY3RdKSA9PiAoe1xuICAgICAgbmFtZSxcbiAgICAgIGNvbnRyYWN0LFxuICAgIH0pKSxcbiAgfSkpO1xuXG4gIGxldCBiaW5QbGFuOiB7IHNvdXJjZTogc3RyaW5nOyBmaWxlbmFtZTogc3RyaW5nOyBhYmk6IHN0cmluZyB9W10gPSBbXTtcblxuICBpZiAoYmluUGF0aCAhPT0gZmFsc2UpIHtcbiAgICBhd2FpdCBmcy5ta2RpcihiaW5QYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICBiaW5QbGFuID0gcGxhbi5mbGF0TWFwKChmKSA9PiB7XG4gICAgICByZXR1cm4gZi5jb250cmFjdHMubWFwKCh7IG5hbWUsIGNvbnRyYWN0IH0pID0+ICh7XG4gICAgICAgIHNvdXJjZTogZi5zb3VyY2UsXG4gICAgICAgIG5hbWUsXG4gICAgICAgIGZpbGVuYW1lOiBwYXRoLmpvaW4oYmluUGF0aCwgcGF0aC5kaXJuYW1lKHBhdGgucmVzb2x2ZShmLnNvdXJjZSkpLnJlcGxhY2UoYmFzZVBhdGhQcmVmaXgsICcnKSwgbmFtZSArIGFiaUV4dCksXG4gICAgICAgIGFiaTogSlNPTi5zdHJpbmdpZnkoY29udHJhY3QpLFxuICAgICAgfSkpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgZHVwZXMgPSBmaW5kRHVwZXMoYmluUGxhbiwgKGIpID0+IGIuZmlsZW5hbWUpO1xuXG4gICAgaWYgKGR1cGVzLmxlbmd0aCkge1xuICAgICAgY29uc3QgZHVwZURlc2NzID0gZHVwZXMubWFwKCh7IGtleSwgZHVwZXMgfSkgPT4gKHsgZHVwbGljYXRlOiBrZXksIHNvdXJjZXM6IGR1cGVzLm1hcCgoZCkgPT4gZC5zb3VyY2UpIH0pKTtcbiAgICAgIHRocm93IEVycm9yKFxuICAgICAgICBgRHVwbGljYXRlIGNvbnRyYWN0IG5hbWVzIGZvdW5kICh0aGVzZSBjb250cmFjdHMgd2lsbCByZXN1bHQgQUJJIGZpbGVuYW1lcyB0aGF0IHdpbGwgY29sbGlkZSBzaW5jZSBBQklzIGAgK1xuICAgICAgICAgIGBhcmUgZmxhdHRlbmVkIGluICcke2JpblBhdGh9Jyk6XFxuJHtkdXBlRGVzY3MubWFwKChkKSA9PiBKU09OLnN0cmluZ2lmeShkKSkuam9pbignXFxuJyl9YCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLy8gV3JpdGUgdGhlIEFCSXMgZW1pdHRlZCBmb3IgZWFjaCBmaWxlIHRvIHRoZSBuYW1lIG9mIHRoYXQgZmlsZSB3aXRob3V0IGV4dGVuc2lvbi4gV2UgZmxhdHRlbiBpbnRvIGEgc2luZ2xlXG4gIC8vIGRpcmVjdG9yeSBiZWNhdXNlIHRoYXQncyB3aGF0IGJ1cnJvdyBkZXBsb3kgaGFzIGFsd2F5cyBkb25lLlxuICBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgLi4uYmluUGxhbi5tYXAoYXN5bmMgKHsgZmlsZW5hbWUsIGFiaSB9KSA9PiB7XG4gICAgICBhd2FpdCBmcy5ta2RpcihwYXRoLmRpcm5hbWUoZmlsZW5hbWUpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICAgIGF3YWl0IGZzLndyaXRlRmlsZShmaWxlbmFtZSwgYWJpKTtcbiAgICB9KSxcbiAgICAuLi5wbGFuLm1hcCgoeyBzb3VyY2UsIHRhcmdldCwgY29udHJhY3RzIH0pID0+XG4gICAgICBmcy53cml0ZUZpbGUoXG4gICAgICAgIHRhcmdldCxcbiAgICAgICAgcHJpbnROb2RlcyhcbiAgICAgICAgICAuLi5uZXdGaWxlKFxuICAgICAgICAgICAgY29udHJhY3RzLm1hcCgoeyBuYW1lLCBjb250cmFjdCB9KSA9PiBnZXRDb21waWxlZChuYW1lLCBjb250cmFjdCkpLFxuICAgICAgICAgICAgYnVycm93SW1wb3J0UGF0aChzb3VyY2UpLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICksXG4gIF0pO1xufVxuXG5mdW5jdGlvbiBnZXRDb21waWxlZChuYW1lOiBzdHJpbmcsIGNvbnRyYWN0OiBTb2xpZGl0eS5Db250cmFjdCk6IENvbXBpbGVkIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lLFxuICAgIGFiaTogY29udHJhY3QuYWJpLFxuICAgIGJ5dGVjb2RlOiBjb250cmFjdC5ldm0uYnl0ZWNvZGUub2JqZWN0LFxuICAgIGRlcGxveWVkQnl0ZWNvZGU6IGNvbnRyYWN0LmV2bS5kZXBsb3llZEJ5dGVjb2RlLm9iamVjdCxcbiAgICBsaW5rczogdG9rZW5pemVMaW5rcyhjb250cmFjdC5ldm0uYnl0ZWNvZGUubGlua1JlZmVyZW5jZXMpLFxuICB9O1xufVxuXG5mdW5jdGlvbiBmaW5kRHVwZXM8VD4obGlzdDogVFtdLCBieTogKHQ6IFQpID0+IHN0cmluZyk6IHsga2V5OiBzdHJpbmc7IGR1cGVzOiBUW10gfVtdIHtcbiAgY29uc3QgZ3JvdXBlZCA9IGxpc3QucmVkdWNlKChhY2MsIHQpID0+IHtcbiAgICBjb25zdCBrID0gYnkodCk7XG4gICAgaWYgKCFhY2Nba10pIHtcbiAgICAgIGFjY1trXSA9IFtdO1xuICAgIH1cbiAgICBhY2Nba10ucHVzaCh0KTtcbiAgICByZXR1cm4gYWNjO1xuICB9LCB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBUW10+KTtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGdyb3VwZWQpXG4gICAgLmZpbHRlcigoW18sIGdyb3VwXSkgPT4gZ3JvdXAubGVuZ3RoID4gMSlcbiAgICAubWFwKChba2V5LCBkdXBlc10pID0+ICh7XG4gICAgICBrZXksXG4gICAgICBkdXBlcyxcbiAgICB9KSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGdldFNvdXJjZUZpbGVzTGlzdChzcmNQYXRoT3JGaWxlczogc3RyaW5nIHwgc3RyaW5nW10pOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gIGlmICh0eXBlb2Ygc3JjUGF0aE9yRmlsZXMgPT09ICdzdHJpbmcnKSB7XG4gICAgY29uc3QgZmlsZXM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIGF3YWl0IChjb25zdCBmIG9mIHdhbGtEaXIoc3JjUGF0aE9yRmlsZXMpKSB7XG4gICAgICBpZiAocGF0aC5leHRuYW1lKGYpID09PSAnLnNvbCcpIHtcbiAgICAgICAgZmlsZXMucHVzaChmKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZpbGVzO1xuICB9XG4gIHJldHVybiBzcmNQYXRoT3JGaWxlcztcbn1cblxuYXN5bmMgZnVuY3Rpb24qIHdhbGtEaXIoZGlyOiBzdHJpbmcpOiBBc3luY0dlbmVyYXRvcjxzdHJpbmcsIHZvaWQsIHZvaWQ+IHtcbiAgZm9yIGF3YWl0IChjb25zdCBkIG9mIGF3YWl0IGZzLm9wZW5kaXIoZGlyKSkge1xuICAgIGNvbnN0IGVudHJ5ID0gcGF0aC5qb2luKGRpciwgZC5uYW1lKTtcbiAgICBpZiAoZC5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICB5aWVsZCogd2Fsa0RpcihlbnRyeSk7XG4gICAgfSBlbHNlIGlmIChkLmlzRmlsZSgpKSB7XG4gICAgICB5aWVsZCBlbnRyeTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZm9ybWF0RXJyb3JzKGVycm9yczogU29saWRpdHkuRXJyb3JbXSk6IHN0cmluZyB7XG4gIHJldHVybiBlcnJvcnMubWFwKChlcnIpID0+IGVyci5mb3JtYXR0ZWRNZXNzYWdlIHx8IGVyci5tZXNzYWdlKS5qb2luKCcnKTtcbn1cbiJdfQ==

@@ -23,2 +23,4 @@ "use strict";

var clientName = typescript_1.factory.createIdentifier('client');
var librariesName = typescript_1.factory.createIdentifier('libraries');
var depsName = typescript_1.factory.createIdentifier('deps');
function generateDeployFunction(abi, links, provider, abiName, contractNames) {

@@ -35,3 +37,3 @@ var _a, _b;

typescript_1.factory.createPropertyAssignment('name', typescript_1.factory.createStringLiteral('$' + solidity_1.sha3(link).toLowerCase().slice(0, 34) + '$')),
typescript_1.factory.createPropertyAssignment('address', typescript_1.factory.createIdentifier(solidity_1.tokenizeString(link))),
typescript_1.factory.createPropertyAssignment('address', typescript_1.factory.createIdentifier(solidity_1.libraryName(link))),
]);

@@ -56,3 +58,3 @@ }));

statements.push(typescript_1.factory.createReturnStatement(deployFn));
return typescript_1.factory.createFunctionDeclaration(undefined, [syntax_1.ExportToken], undefined, exports.deployName, undefined, deployParameters(abi, links, provider), output, typescript_1.factory.createBlock(statements, true));
return typescript_1.factory.createFunctionDeclaration(undefined, [syntax_1.ExportToken], undefined, exports.deployName, undefined, deployParameters(abi, links, provider, true), output, typescript_1.factory.createBlock(statements, true));
}

@@ -66,15 +68,35 @@ exports.generateDeployFunction = generateDeployFunction;

syntax_1.declareConstant(addressName, callDeploy),
typescript_1.factory.createReturnStatement(syntax_1.createCall(contract_1.contractFunctionName, [clientName, addressName])),
typescript_1.factory.createReturnStatement(syntax_1.createCall(contract_1.contractFunctionName, [syntax_1.prop(depsName, clientName), addressName])),
]));
}
exports.generateDeployContractFunction = generateDeployContractFunction;
function deployParameters(abi, links, provider) {
function deployParameters(abi, links, provider, destructure) {
var _a, _b;
if (destructure === void 0) { destructure = false; }
var parameters = abi ? (_b = (_a = abi.inputs) === null || _a === void 0 ? void 0 : _a.map(function (input) { return syntax_1.createParameter(input.name, solidity_1.getRealType(input.type)); })) !== null && _b !== void 0 ? _b : [] : [];
return __spreadArray(__spreadArray(__spreadArray([
syntax_1.createParameter(clientName, provider.type())
], links.map(function (link) { return syntax_1.createParameter(typescript_1.factory.createIdentifier(solidity_1.tokenizeString(link)), syntax_1.StringType); })), parameters), [
syntax_1.createParameter(exports.withContractMetaName, syntax_1.BooleanType, typescript_1.factory.createFalse()),
]);
return __spreadArray([depsParameter(links, provider, destructure)], parameters);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvbGliL2RlcGxveWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEseUNBQTBFO0FBRTFFLHVDQUFvRTtBQUNwRSx1Q0FBd0Q7QUFDeEQsdUNBQStEO0FBQy9ELG1DQWVrQjtBQUVMLFFBQUEsVUFBVSxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDaEQsUUFBQSxrQkFBa0IsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDaEUsUUFBQSxZQUFZLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUNwRCxRQUFBLG9CQUFvQixHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUNwRSxRQUFBLG9CQUFvQixHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUVqRixpQkFBaUI7QUFDakIsSUFBTSxrQkFBa0IsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDdEUsSUFBTSxRQUFRLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNsRCxJQUFNLFVBQVUsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXRELFNBQWdCLHNCQUFzQixDQUNwQyxHQUF5QixFQUN6QixLQUFlLEVBQ2YsUUFBa0IsRUFDbEIsT0FBc0IsRUFDdEIsYUFBOEI7O0lBRTlCLElBQU0sTUFBTSxHQUFHLG9CQUFPLENBQUMsaUNBQWlDLENBQUMsb0JBQVcsRUFBRSxDQUFDLG1CQUFVLENBQUMsQ0FBQyxDQUFDO0lBRXBGLElBQU0sVUFBVSxHQUFtQixFQUFFLENBQUM7SUFDdEMsVUFBVSxDQUFD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QztBQUNKLENBQUM7QUF6QkQsd0VBeUJDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxHQUF5QixFQUFFLEtBQWUsRUFBRSxRQUFrQjs7SUFDdEYsSUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFBLE1BQUEsR0FBRyxDQUFDLE1BQU0sMENBQUUsR0FBRyxDQUFDLFVBQUMsS0FBSyxJQUFLLE9BQUEsd0JBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLHNCQUFXLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQXBELENBQW9ELENBQUMsbUNBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDckg7UUFDRSx3QkFBZSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7T0FDekMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFDLElBQUksSUFBSyxPQUFBLHdCQUFlLENBQUMsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyx5QkFBYyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsbUJBQVUsQ0FBQyxFQUEzRSxDQUEyRSxDQUFDLEdBQ2hHLFVBQVU7UUFDYix3QkFBZSxDQUFDLDRCQUFvQixFQUFFLG9CQUFXLEVBQUUsb0JBQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztPQUN6RTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHMsIHsgZmFjdG9yeSwgRnVuY3Rpb25EZWNsYXJhdGlvbiwgU3ludGF4S2luZCB9IGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQUJJIH0gZnJvbSAnLi4vLi4vY29udHJhY3RzL2FiaSc7XG5pbXBvcnQgeyBjb250cmFjdEZ1bmN0aW9uTmFtZSwgY29udHJhY3RUeXBlTmFtZSB9IGZyb20gJy4vY29udHJhY3QnO1xuaW1wb3J0IHsgY2FsbEVuY29kZURlcGxveSwgUHJvdmlkZXIgfSBmcm9tICcuL3Byb3ZpZGVyJztcbmltcG9ydCB7IGdldFJlYWxUeXBlLCBzaGEzLCB0b2tlbml6ZVN0cmluZyB9IGZyb20gJy4vc29saWRpdHknO1xuaW1wb3J0IHtcbiAgQXN5bmNUb2tlbixcbiAgQm9vbGVhblR5cGUsXG4gIEJ1ZmZlclR5cGUsXG4gIGNyZWF0ZUNhbGwsXG4gIGNyZWF0ZVBhcmFtZXRlcixcbiAgY3JlYXRlUHJvbWlzZU9mLFxuICBkZWNsYXJlQ29uc3RhbnQsXG4gIEV4cG9ydFRva2VuLFxuICBoZXhUb0J1ZmZlcixcbiAgaGV4VG9LZWNjYWsyNTYsXG4gIGxpbmtlck5hbWUsXG4gIFByb21pc2VUeXBlLFxuICBwcm9wLFxuICBTdHJpbmdUeXBlLFxufSBmcm9tICcuL3N5bnRheCc7XG5cbmV4cG9ydCBjb25zdCBkZXBsb3lOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdkZXBsb3knKTtcbmV4cG9ydCBjb25zdCBkZXBsb3lDb250cmFjdE5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2RlcGxveUNvbnRyYWN0Jyk7XG5leHBvcnQgY29uc3QgYnl0ZWNvZGVOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdieXRlY29kZScpO1xuZXhwb3J0IGNvbnN0IGRlcGxveWVkQnl0ZWNvZGVOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdkZXBsb3llZEJ5dGVjb2RlJyk7XG5leHBvcnQgY29uc3Qgd2l0aENvbnRyYWN0TWV0YU5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ3dpdGhDb250cmFjdE1ldGEnKTtcblxuLy8gVmFyaWFibGUgbmFtZXNcbmNvbnN0IGxpbmtlZEJ5dGVjb2RlTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignbGlua2VkQnl0ZWNvZGUnKTtcbmNvbnN0IGRhdGFOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdkYXRhJyk7XG5jb25zdCBjbGllbnROYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdjbGllbnQnKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlRGVwbG95RnVuY3Rpb24oXG4gIGFiaTogQUJJLkZ1bmMgfCB1bmRlZmluZWQsXG4gIGxpbmtzOiBzdHJpbmdbXSxcbiAgcHJvdmlkZXI6IFByb3ZpZGVyLFxuICBhYmlOYW1lOiB0cy5JZGVudGlmaWVyLFxuICBjb250cmFjdE5hbWVzOiB0cy5JZGVudGlmaWVyW10sXG4pOiBGdW5jdGlvbkRlY2xhcmF0aW9uIHtcbiAgY29uc3Qgb3V0cHV0ID0gZmFjdG9yeS5jcmVhdGVFeHByZXNzaW9uV2l0aFR5cGVBcmd1bWVudHMoUHJvbWlzZVR5cGUsIFtTdHJpbmdUeXBlXSk7XG5cbiAgY29uc3Qgc3RhdGVtZW50czogdHMuU3RhdGVtZW50W10gPSBbXTtcbiAgc3RhdGVtZW50cy5wdXNoKHByb3ZpZGVyLmRlY2xhcmVDb250cmFjdENvZGVjKGNsaWVudE5hbWUsIGFiaU5hbWUpKTtcblxuICBsZXQgYnl0ZWNvZGUgPSBieXRlY29kZU5hbWU7XG4gIGNvbnN0IGxpbmtzTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignbGlua3MnKTtcblxuICBpZiAobGlua3MubGVuZ3RoKSB7XG4gICAgY29uc3QgbGlua3NBcnJheSA9IGZhY3RvcnkuY3JlYXRlQXJyYXlMaXRlcmFsRXhwcmVzc2lvbihcbiAgICAgIGxpbmtzLm1hcCgobGluaykgPT5cbiAgICAgICAgZmFjdG9yeS5jcmVhdGVPYmplY3RMaXRlcmFsRXhwcmVzc2lvbihbXG4gICAgICAgICAgZmFjdG9yeS5jcmVhdGVQcm9wZXJ0eUFzc2lnbm1lbnQoXG4gICAgICAgICAgICAnbmFtZScsXG4gICAgICAgICAgICBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJyQnICsgc2hhMyhsaW5rKS50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsIDM0KSArICckJyksXG4gICAgICAgICAgKSxcbiAgICAgICAgICBmYWN0b3J5LmNyZWF0ZVByb3BlcnR5QXNzaWdubWVudChcbiAgICAgICAgICAgICdhZGRyZXNzJyxcbiAgICAgICAgICAgIGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcih0b2tlbml6ZVN0cmluZyhsaW5rKSksXG4gICAgICAgICAgKSxcbiAgICAgICAgXSksXG4gICAgICApLFxuICAgICk7XG4gICAgc3RhdGVtZW50cy5wdXNoKGRlY2xhcmVDb25zdGFudChsaW5rc05hbWUsIGxpbmtzQXJyYXkpKTtcbiAgICBzdGF0ZW1lbnRzLnB1c2goZGVjbGFyZUNvbnN0YW50KGxpbmtlZEJ5dGVjb2RlTmFtZSwgY3JlYXRlQ2FsbChsaW5rZXJOYW1lLCBbYnl0ZWNvZGVOYW1lLCBsaW5rc05hbWVdKSkpO1xuXG4gICAgYnl0ZWNvZGUgPSBsaW5rZWRCeXRlY29kZU5hbWU7XG4gIH1cblxuICBjb25zdCBhcmdzID0gYWJpPy5pbnB1dHM/Lm1hcCgoYXJnKSA9PiBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoYXJnLm5hbWUpKSA/PyBbXTtcblxuICBzdGF0ZW1lbnRzLnB1c2goXG4gICAgZGVjbGFyZUNvbnN0YW50KFxuICAgICAgZGF0YU5hbWUsXG4gICAgICBjcmVhdGVDYWxsKHByb3AoQnVmZmVyVHlwZSwgJ2NvbmNhdCcpLCBbXG4gICAgICAgIGZhY3RvcnkuY3JlYXRlQXJyYXlMaXRlcmFsRXhwcmVzc2lvbihbaGV4VG9CdWZmZXIoYnl0ZWNvZGUpLCBjYWxsRW5jb2RlRGVwbG95KGFyZ3MpXSksXG4gICAgICBdKSxcbiAgICApLFxuICApO1xuXG4gIGNvbnN0IGNvbnRyYWN0TWV0YSA9IGNvbnRyYWN0TmFtZXMubWFwKChuKSA9PiB7XG4gICAgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9IHByb3AobiwgZGVwbG95ZWRCeXRlY29kZU5hbWUpO1xuICAgIHJldHVybiB7XG4gICAgICBhYmk6IHByb3AobiwgYWJpTmFtZSksXG4gICAgICBjb2RlSGFzaDogaGV4VG9LZWNjYWsyNTYobGlua3MubGVuZ3RoID8gY3JlYXRlQ2FsbChsaW5rZXJOYW1lLCBbZGVwbG95ZWRCeXRlY29kZSwgbGlua3NOYW1lXSkgOiBkZXBsb3llZEJ5dGVjb2RlKSxcbiAgICB9O1xuICB9KTtcblxuICBjb25zdCBkZXBsb3lGbiA9IHByb3ZpZGVyLm1ldGhvZHMuZGVwbG95LmNhbGwoY2xpZW50TmFtZSwgZGF0YU5hbWUsIHdpdGhDb250cmFjdE1ldGFOYW1lLCBjb250cmFjdE1ldGEpO1xuXG4gIHN0YXRlbWVudHMucHVzaChmYWN0b3J5LmNyZWF0ZVJldHVyblN0YXRlbWVudChkZXBsb3lGbikpO1xuXG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUZ1bmN0aW9uRGVjbGFyYXRpb24oXG4gICAgdW5kZWZpbmVkLFxuICAgIFtFeHBvcnRUb2tlbl0sXG4gICAgdW5kZWZpbmVkLFxuICAgIGRlcGxveU5hbWUsXG4gICAgdW5kZWZpbmVkLFxuICAgIGRlcGxveVBhcmFtZXRlcnMoYWJpLCBsaW5rcywgcHJvdmlkZXIpLFxuICAgIG91dHB1dCxcbiAgICBmYWN0b3J5LmNyZWF0ZUJsb2NrKHN0YXRlbWVudHMsIHRydWUpLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVEZXBsb3lDb250cmFjdEZ1bmN0aW9uKFxuICBhYmk6IEFCSS5GdW5jIHwgdW5kZWZpbmVkLFxuICBsaW5rczogc3RyaW5nW10sXG4gIHByb3ZpZGVyOiBQcm92aWRlcixcbik6IHRzLkZ1bmN0aW9uRGVjbGFyYXRpb24ge1xuICBjb25zdCBwYXJhbWV0ZXJzID0gZGVwbG95UGFyYW1ldGVycyhhYmksIGxpbmtzLCBwcm92aWRlcik7XG4gIGNvbnN0IGFkZHJlc3NOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdhZGRyZXNzJyk7XG4gIGNvbnN0IGNhbGxEZXBsb3kgPSBmYWN0b3J5LmNyZWF0ZUF3YWl0RXhwcmVzc2lvbihcbiAgICBjcmVhdGVDYWxsKGRlcGxveU5hbWUsIFtcbiAgICAgIC4uLnBhcmFtZXRlcnMubWFwKChwKSA9PiBwLm5hbWUpLmZpbHRlcigobik6IG4gaXMgdHMuSWRlbnRpZmllciA9PiBuLmtpbmQgPT09IFN5bnRheEtpbmQuSWRlbnRpZmllciksXG4gICAgXSksXG4gICk7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUZ1bmN0aW9uRGVjbGFyYXRpb24oXG4gICAgdW5kZWZpbmVkLFxuICAgIFtFeHBvcnRUb2tlbiwgQXN5bmNUb2tlbl0sXG4gICAgdW5kZWZpbmVkLFxuICAgIGRlcGxveUNvbnRyYWN0TmFtZSxcbiAgICB1bmRlZmluZWQsXG4gICAgcGFyYW1ldGVycyxcbiAgICBjcmVhdGVQcm9taXNlT2YoZmFjdG9yeS5jcmVhdGVUeXBlUmVmZXJlbmNlTm9kZShjb250cmFjdFR5cGVOYW1lKSksXG4gICAgZmFjdG9yeS5jcmVhdGVCbG9jayhbXG4gICAgICBkZWNsYXJlQ29uc3RhbnQoYWRkcmVzc05hbWUsIGNhbGxEZXBsb3kpLFxuICAgICAgZmFjdG9yeS5jcmVhdGVSZXR1cm5TdGF0ZW1lbnQoY3JlYXRlQ2FsbChjb250cmFjdEZ1bmN0aW9uTmFtZSwgW2NsaWVudE5hbWUsIGFkZHJlc3NOYW1lXSkpLFxuICAgIF0pLFxuICApO1xufVxuXG5mdW5jdGlvbiBkZXBsb3lQYXJhbWV0ZXJzKGFiaTogQUJJLkZ1bmMgfCB1bmRlZmluZWQsIGxpbmtzOiBzdHJpbmdbXSwgcHJvdmlkZXI6IFByb3ZpZGVyKTogdHMuUGFyYW1ldGVyRGVjbGFyYXRpb25bXSB7XG4gIGNvbnN0IHBhcmFtZXRlcnMgPSBhYmkgPyBhYmkuaW5wdXRzPy5tYXAoKGlucHV0KSA9PiBjcmVhdGVQYXJhbWV0ZXIoaW5wdXQubmFtZSwgZ2V0UmVhbFR5cGUoaW5wdXQudHlwZSkpKSA/PyBbXSA6IFtdO1xuICByZXR1cm4gW1xuICAgIGNyZWF0ZVBhcmFtZXRlcihjbGllbnROYW1lLCBwcm92aWRlci50eXBlKCkpLFxuICAgIC4uLmxpbmtzLm1hcCgobGluaykgPT4gY3JlYXRlUGFyYW1ldGVyKGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcih0b2tlbml6ZVN0cmluZyhsaW5rKSksIFN0cmluZ1R5cGUpKSxcbiAgICAuLi5wYXJhbWV0ZXJzLFxuICAgIGNyZWF0ZVBhcmFtZXRlcih3aXRoQ29udHJhY3RNZXRhTmFtZSwgQm9vbGVhblR5cGUsIGZhY3RvcnkuY3JlYXRlRmFsc2UoKSksXG4gIF07XG59XG4iXX0=
function depsParameter(links, provider, destructure) {
var libsType = links.length
? [
typescript_1.factory.createPropertySignature(undefined, librariesName, undefined, typescript_1.factory.createTypeLiteralNode(links.map(function (link) { return typescript_1.factory.createPropertySignature(undefined, solidity_1.libraryName(link), undefined, syntax_1.StringType); }))),
]
: [];
var typeNode = typescript_1.factory.createTypeLiteralNode(__spreadArray([
typescript_1.factory.createPropertySignature(undefined, clientName, undefined, provider.type()),
typescript_1.factory.createPropertySignature(undefined, exports.withContractMetaName, syntax_1.QuestionToken, syntax_1.BooleanType)
], libsType));
var libsPattern = links.length
? [
typescript_1.factory.createBindingElement(undefined, librariesName, typescript_1.factory.createObjectBindingPattern(links.map(function (link) { return typescript_1.factory.createBindingElement(undefined, undefined, solidity_1.libraryName(link)); }))),
]
: [];
var deps = destructure
? typescript_1.factory.createObjectBindingPattern(__spreadArray([
typescript_1.factory.createBindingElement(undefined, undefined, clientName),
typescript_1.factory.createBindingElement(undefined, undefined, exports.withContractMetaName)
], libsPattern))
: depsName;
return syntax_1.createParameter(deps, typeNode);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwbG95ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvbGliL2RlcGxveWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEseUNBQTBFO0FBRTFFLHVDQUFvRTtBQUNwRSx1Q0FBd0Q7QUFDeEQsdUNBQTREO0FBQzVELG1DQWdCa0I7QUFFTCxRQUFBLFVBQVUsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ2hELFFBQUEsa0JBQWtCLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ2hFLFFBQUEsWUFBWSxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDcEQsUUFBQSxvQkFBb0IsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDcEUsUUFBQSxvQkFBb0IsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFFakYsaUJBQWlCO0FBQ2pCLElBQU0sa0JBQWtCLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3RFLElBQU0sUUFBUSxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDbEQsSUFBTSxVQUFVLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUN0RCxJQUFNLGFBQWEsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQzVELElBQU0sUUFBUSxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFbEQsU0FBZ0Isc0JBQXNCLENBQ3BDLEdBQXlCLEVBQ3pCLEtBQWUsRUFDZixRQUFrQixFQUNsQixPQUFzQixFQUN0QixhQUE4Qjs7SUFFOUIsSUFB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O1FBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNQLElBQU0sUUFBUSxHQUFHLG9CQUFPLENBQUMscUJBQXFCO1FBQzVDLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xGLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsU0FBUyxFQUFFLDRCQUFvQixFQUFFLHNCQUFhLEVBQUUsb0JBQVcsQ0FBQztPQUN6RixRQUFRLEVBQ1gsQ0FBQztJQUNILElBQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxNQUFNO1FBQzlCLENBQUMsQ0FBQztZQUNFLG9CQUFPLENBQUMsb0JBQW9CLENBQzFCLFNBQVMsRUFDVCxhQUFhLEVBQ2Isb0JBQU8sQ0FBQywwQkFBMEIsQ0FDaEMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFDLElBQUksSUFBSyxPQUFBLG9CQUFPLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxzQkFBVyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQXJFLENBQXFFLENBQUMsQ0FDM0YsQ0FDRjtTQUNGO1FBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNQLElBQU0sSUFBSSxHQUFHLFdBQVc7UUFDdEIsQ0FBQyxDQUFDLG9CQUFPLENBQUMsMEJBQTBCO1lBQ2hDLG9CQUFPLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUM7WUFDOUQsb0JBQU8sQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLDRCQUFvQixDQUFDO1dBQ3JFLFdBQVcsRUFDZDtRQUNKLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDYixPQUFPLHdCQUFlLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQ3pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHMsIHsgZmFjdG9yeSwgRnVuY3Rpb25EZWNsYXJhdGlvbiwgU3ludGF4S2luZCB9IGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQUJJIH0gZnJvbSAnLi4vLi4vY29udHJhY3RzL2FiaSc7XG5pbXBvcnQgeyBjb250cmFjdEZ1bmN0aW9uTmFtZSwgY29udHJhY3RUeXBlTmFtZSB9IGZyb20gJy4vY29udHJhY3QnO1xuaW1wb3J0IHsgY2FsbEVuY29kZURlcGxveSwgUHJvdmlkZXIgfSBmcm9tICcuL3Byb3ZpZGVyJztcbmltcG9ydCB7IGdldFJlYWxUeXBlLCBsaWJyYXJ5TmFtZSwgc2hhMyB9IGZyb20gJy4vc29saWRpdHknO1xuaW1wb3J0IHtcbiAgQXN5bmNUb2tlbixcbiAgQm9vbGVhblR5cGUsXG4gIEJ1ZmZlclR5cGUsXG4gIGNyZWF0ZUNhbGwsXG4gIGNyZWF0ZVBhcmFtZXRlcixcbiAgY3JlYXRlUHJvbWlzZU9mLFxuICBkZWNsYXJlQ29uc3RhbnQsXG4gIEV4cG9ydFRva2VuLFxuICBoZXhUb0J1ZmZlcixcbiAgaGV4VG9LZWNjYWsyNTYsXG4gIGxpbmtlck5hbWUsXG4gIFByb21pc2VUeXBlLFxuICBwcm9wLFxuICBRdWVzdGlvblRva2VuLFxuICBTdHJpbmdUeXBlLFxufSBmcm9tICcuL3N5bnRheCc7XG5cbmV4cG9ydCBjb25zdCBkZXBsb3lOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdkZXBsb3knKTtcbmV4cG9ydCBjb25zdCBkZXBsb3lDb250cmFjdE5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2RlcGxveUNvbnRyYWN0Jyk7XG5leHBvcnQgY29uc3QgYnl0ZWNvZGVOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdieXRlY29kZScpO1xuZXhwb3J0IGNvbnN0IGRlcGxveWVkQnl0ZWNvZGVOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdkZXBsb3llZEJ5dGVjb2RlJyk7XG5leHBvcnQgY29uc3Qgd2l0aENvbnRyYWN0TWV0YU5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ3dpdGhDb250cmFjdE1ldGEnKTtcblxuLy8gVmFyaWFibGUgbmFtZXNcbmNvbnN0IGxpbmtlZEJ5dGVjb2RlTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignbGlua2VkQnl0ZWNvZGUnKTtcbmNvbnN0IGRhdGFOYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdkYXRhJyk7XG5jb25zdCBjbGllbnROYW1lID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdjbGllbnQnKTtcbmNvbnN0IGxpYnJhcmllc05hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2xpYnJhcmllcycpO1xuY29uc3QgZGVwc05hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2RlcHMnKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlRGVwbG95RnVuY3Rpb24oXG4gIGFiaTogQUJJLkZ1bmMgfCB1bmRlZmluZWQsXG4gIGxpbmtzOiBzdHJpbmdbXSxcbiAgcHJvdmlkZXI6IFByb3ZpZGVyLFxuICBhYmlOYW1lOiB0cy5JZGVudGlmaWVyLFxuICBjb250cmFjdE5hbWVzOiB0cy5JZGVudGlmaWVyW10sXG4pOiBGdW5jdGlvbkRlY2xhcmF0aW9uIHtcbiAgY29uc3Qgb3V0cHV0ID0gZmFjdG9yeS5jcmVhdGVFeHByZXNzaW9uV2l0aFR5cGVBcmd1bWVudHMoUHJvbWlzZVR5cGUsIFtTdHJpbmdUeXBlXSk7XG5cbiAgY29uc3Qgc3RhdGVtZW50czogdHMuU3RhdGVtZW50W10gPSBbXTtcbiAgc3RhdGVtZW50cy5wdXNoKHByb3ZpZGVyLmRlY2xhcmVDb250cmFjdENvZGVjKGNsaWVudE5hbWUsIGFiaU5hbWUpKTtcblxuICBsZXQgYnl0ZWNvZGUgPSBieXRlY29kZU5hbWU7XG4gIGNvbnN0IGxpbmtzTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignbGlua3MnKTtcblxuICBpZiAobGlua3MubGVuZ3RoKSB7XG4gICAgY29uc3QgbGlua3NBcnJheSA9IGZhY3RvcnkuY3JlYXRlQXJyYXlMaXRlcmFsRXhwcmVzc2lvbihcbiAgICAgIGxpbmtzLm1hcCgobGluaykgPT5cbiAgICAgICAgZmFjdG9yeS5jcmVhdGVPYmplY3RMaXRlcmFsRXhwcmVzc2lvbihbXG4gICAgICAgICAgZmFjdG9yeS5jcmVhdGVQcm9wZXJ0eUFzc2lnbm1lbnQoXG4gICAgICAgICAgICAnbmFtZScsXG4gICAgICAgICAgICBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJyQnICsgc2hhMyhsaW5rKS50b0xvd2VyQ2FzZSgpLnNsaWNlKDAsIDM0KSArICckJyksXG4gICAgICAgICAgKSxcbiAgICAgICAgICBmYWN0b3J5LmNyZWF0ZVByb3BlcnR5QXNzaWdubWVudCgnYWRkcmVzcycsIGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcihsaWJyYXJ5TmFtZShsaW5rKSkpLFxuICAgICAgICBdKSxcbiAgICAgICksXG4gICAgKTtcbiAgICBzdGF0ZW1lbnRzLnB1c2goZGVjbGFyZUNvbnN0YW50KGxpbmtzTmFtZSwgbGlua3NBcnJheSkpO1xuICAgIHN0YXRlbWVudHMucHVzaChkZWNsYXJlQ29uc3RhbnQobGlua2VkQnl0ZWNvZGVOYW1lLCBjcmVhdGVDYWxsKGxpbmtlck5hbWUsIFtieXRlY29kZU5hbWUsIGxpbmtzTmFtZV0pKSk7XG5cbiAgICBieXRlY29kZSA9IGxpbmtlZEJ5dGVjb2RlTmFtZTtcbiAgfVxuXG4gIGNvbnN0IGFyZ3MgPSBhYmk/LmlucHV0cz8ubWFwKChhcmcpID0+IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcihhcmcubmFtZSkpID8/IFtdO1xuXG4gIHN0YXRlbWVudHMucHVzaChcbiAgICBkZWNsYXJlQ29uc3RhbnQoXG4gICAgICBkYXRhTmFtZSxcbiAgICAgIGNyZWF0ZUNhbGwocHJvcChCdWZmZXJUeXBlLCAnY29uY2F0JyksIFtcbiAgICAgICAgZmFjdG9yeS5jcmVhdGVBcnJheUxpdGVyYWxFeHByZXNzaW9uKFtoZXhUb0J1ZmZlcihieXRlY29kZSksIGNhbGxFbmNvZGVEZXBsb3koYXJncyldKSxcbiAgICAgIF0pLFxuICAgICksXG4gICk7XG5cbiAgY29uc3QgY29udHJhY3RNZXRhID0gY29udHJhY3ROYW1lcy5tYXAoKG4pID0+IHtcbiAgICBjb25zdCBkZXBsb3llZEJ5dGVjb2RlID0gcHJvcChuLCBkZXBsb3llZEJ5dGVjb2RlTmFtZSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFiaTogcHJvcChuLCBhYmlOYW1lKSxcbiAgICAgIGNvZGVIYXNoOiBoZXhUb0tlY2NhazI1NihsaW5rcy5sZW5ndGggPyBjcmVhdGVDYWxsKGxpbmtlck5hbWUsIFtkZXBsb3llZEJ5dGVjb2RlLCBsaW5rc05hbWVdKSA6IGRlcGxveWVkQnl0ZWNvZGUpLFxuICAgIH07XG4gIH0pO1xuXG4gIGNvbnN0IGRlcGxveUZuID0gcHJvdmlkZXIubWV0aG9kcy5kZXBsb3kuY2FsbChjbGllbnROYW1lLCBkYXRhTmFtZSwgd2l0aENvbnRyYWN0TWV0YU5hbWUsIGNvbnRyYWN0TWV0YSk7XG5cbiAgc3RhdGVtZW50cy5wdXNoKGZhY3RvcnkuY3JlYXRlUmV0dXJuU3RhdGVtZW50KGRlcGxveUZuKSk7XG5cbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlRnVuY3Rpb25EZWNsYXJhdGlvbihcbiAgICB1bmRlZmluZWQsXG4gICAgW0V4cG9ydFRva2VuXSxcbiAgICB1bmRlZmluZWQsXG4gICAgZGVwbG95TmFtZSxcbiAgICB1bmRlZmluZWQsXG4gICAgZGVwbG95UGFyYW1ldGVycyhhYmksIGxpbmtzLCBwcm92aWRlciwgdHJ1ZSksXG4gICAgb3V0cHV0LFxuICAgIGZhY3RvcnkuY3JlYXRlQmxvY2soc3RhdGVtZW50cywgdHJ1ZSksXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZURlcGxveUNvbnRyYWN0RnVuY3Rpb24oXG4gIGFiaTogQUJJLkZ1bmMgfCB1bmRlZmluZWQsXG4gIGxpbmtzOiBzdHJpbmdbXSxcbiAgcHJvdmlkZXI6IFByb3ZpZGVyLFxuKTogdHMuRnVuY3Rpb25EZWNsYXJhdGlvbiB7XG4gIGNvbnN0IHBhcmFtZXRlcnMgPSBkZXBsb3lQYXJhbWV0ZXJzKGFiaSwgbGlua3MsIHByb3ZpZGVyKTtcbiAgY29uc3QgYWRkcmVzc05hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2FkZHJlc3MnKTtcbiAgY29uc3QgY2FsbERlcGxveSA9IGZhY3RvcnkuY3JlYXRlQXdhaXRFeHByZXNzaW9uKFxuICAgIGNyZWF0ZUNhbGwoZGVwbG95TmFtZSwgW1xuICAgICAgLi4ucGFyYW1ldGVycy5tYXAoKHApID0+IHAubmFtZSkuZmlsdGVyKChuKTogbiBpcyB0cy5JZGVudGlmaWVyID0+IG4ua2luZCA9PT0gU3ludGF4S2luZC5JZGVudGlmaWVyKSxcbiAgICBdKSxcbiAgKTtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlRnVuY3Rpb25EZWNsYXJhdGlvbihcbiAgICB1bmRlZmluZWQsXG4gICAgW0V4cG9ydFRva2VuLCBBc3luY1Rva2VuXSxcbiAgICB1bmRlZmluZWQsXG4gICAgZGVwbG95Q29udHJhY3ROYW1lLFxuICAgIHVuZGVmaW5lZCxcbiAgICBwYXJhbWV0ZXJzLFxuICAgIGNyZWF0ZVByb21pc2VPZihmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKGNvbnRyYWN0VHlwZU5hbWUpKSxcbiAgICBmYWN0b3J5LmNyZWF0ZUJsb2NrKFtcbiAgICAgIGRlY2xhcmVDb25zdGFudChhZGRyZXNzTmFtZSwgY2FsbERlcGxveSksXG4gICAgICBmYWN0b3J5LmNyZWF0ZVJldHVyblN0YXRlbWVudChjcmVhdGVDYWxsKGNvbnRyYWN0RnVuY3Rpb25OYW1lLCBbcHJvcChkZXBzTmFtZSwgY2xpZW50TmFtZSksIGFkZHJlc3NOYW1lXSkpLFxuICAgIF0pLFxuICApO1xufVxuXG5mdW5jdGlvbiBkZXBsb3lQYXJhbWV0ZXJzKFxuICBhYmk6IEFCSS5GdW5jIHwgdW5kZWZpbmVkLFxuICBsaW5rczogc3RyaW5nW10sXG4gIHByb3ZpZGVyOiBQcm92aWRlcixcbiAgZGVzdHJ1Y3R1cmUgPSBmYWxzZSxcbik6IHRzLlBhcmFtZXRlckRlY2xhcmF0aW9uW10ge1xuICBjb25zdCBwYXJhbWV0ZXJzID0gYWJpID8gYWJpLmlucHV0cz8ubWFwKChpbnB1dCkgPT4gY3JlYXRlUGFyYW1ldGVyKGlucHV0Lm5hbWUsIGdldFJlYWxUeXBlKGlucHV0LnR5cGUpKSkgPz8gW10gOiBbXTtcbiAgcmV0dXJuIFtkZXBzUGFyYW1ldGVyKGxpbmtzLCBwcm92aWRlciwgZGVzdHJ1Y3R1cmUpLCAuLi5wYXJhbWV0ZXJzXTtcbn1cblxuZnVuY3Rpb24gZGVwc1BhcmFtZXRlcihsaW5rczogc3RyaW5nW10sIHByb3ZpZGVyOiBQcm92aWRlciwgZGVzdHJ1Y3R1cmU6IGJvb2xlYW4pOiB0cy5QYXJhbWV0ZXJEZWNsYXJhdGlvbiB7XG4gIGNvbnN0IGxpYnNUeXBlID0gbGlua3MubGVuZ3RoXG4gICAgPyBbXG4gICAgICAgIGZhY3RvcnkuY3JlYXRlUHJvcGVydHlTaWduYXR1cmUoXG4gICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgIGxpYnJhcmllc05hbWUsXG4gICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgIGZhY3RvcnkuY3JlYXRlVHlwZUxpdGVyYWxOb2RlKFxuICAgICAgICAgICAgbGlua3MubWFwKChsaW5rKSA9PiBmYWN0b3J5LmNyZWF0ZVByb3BlcnR5U2lnbmF0dXJlKHVuZGVmaW5lZCwgbGlicmFyeU5hbWUobGluayksIHVuZGVmaW5lZCwgU3RyaW5nVHlwZSkpLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICBdXG4gICAgOiBbXTtcbiAgY29uc3QgdHlwZU5vZGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVMaXRlcmFsTm9kZShbXG4gICAgZmFjdG9yeS5jcmVhdGVQcm9wZXJ0eVNpZ25hdHVyZSh1bmRlZmluZWQsIGNsaWVudE5hbWUsIHVuZGVmaW5lZCwgcHJvdmlkZXIudHlwZSgpKSxcbiAgICBmYWN0b3J5LmNyZWF0ZVByb3BlcnR5U2lnbmF0dXJlKHVuZGVmaW5lZCwgd2l0aENvbnRyYWN0TWV0YU5hbWUsIFF1ZXN0aW9uVG9rZW4sIEJvb2xlYW5UeXBlKSxcbiAgICAuLi5saWJzVHlwZSxcbiAgXSk7XG4gIGNvbnN0IGxpYnNQYXR0ZXJuID0gbGlua3MubGVuZ3RoXG4gICAgPyBbXG4gICAgICAgIGZhY3RvcnkuY3JlYXRlQmluZGluZ0VsZW1lbnQoXG4gICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgIGxpYnJhcmllc05hbWUsXG4gICAgICAgICAgZmFjdG9yeS5jcmVhdGVPYmplY3RCaW5kaW5nUGF0dGVybihcbiAgICAgICAgICAgIGxpbmtzLm1hcCgobGluaykgPT4gZmFjdG9yeS5jcmVhdGVCaW5kaW5nRWxlbWVudCh1bmRlZmluZWQsIHVuZGVmaW5lZCwgbGlicmFyeU5hbWUobGluaykpKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgXVxuICAgIDogW107XG4gIGNvbnN0IGRlcHMgPSBkZXN0cnVjdHVyZVxuICAgID8gZmFjdG9yeS5jcmVhdGVPYmplY3RCaW5kaW5nUGF0dGVybihbXG4gICAgICAgIGZhY3RvcnkuY3JlYXRlQmluZGluZ0VsZW1lbnQodW5kZWZpbmVkLCB1bmRlZmluZWQsIGNsaWVudE5hbWUpLFxuICAgICAgICBmYWN0b3J5LmNyZWF0ZUJpbmRpbmdFbGVtZW50KHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB3aXRoQ29udHJhY3RNZXRhTmFtZSksXG4gICAgICAgIC4uLmxpYnNQYXR0ZXJuLFxuICAgICAgXSlcbiAgICA6IGRlcHNOYW1lO1xuICByZXR1cm4gY3JlYXRlUGFyYW1ldGVyKGRlcHMsIHR5cGVOb2RlKTtcbn1cbiJdfQ==

@@ -29,2 +29,2 @@ import ts, { TypeNode } from 'typescript';

export declare function getContractMethods(abi: ABI.FunctionOrEvent[]): Method[];
export declare function tokenizeString(input: string): string;
export declare function libraryName(link: string): string;
"use strict";
exports.__esModule = true;
exports.tokenizeString = exports.getContractMethods = exports.inputOuputsToType = exports.getRealType = exports.getSize = exports.nameFromABI = exports.sha3 = void 0;
exports.libraryName = exports.getContractMethods = exports.inputOuputsToType = exports.getRealType = exports.getSize = exports.nameFromABI = exports.sha3 = void 0;
var sha3_1 = require("sha3");

@@ -109,6 +109,6 @@ var typescript_1 = require("typescript");

exports.getContractMethods = getContractMethods;
function tokenizeString(input) {
return input.replace(/\W+/g, '_');
function libraryName(link) {
return link.split(':').slice(-1)[0];
}
exports.tokenizeString = tokenizeString;
exports.libraryName = libraryName;
function getFunctionSelector(abi) {

@@ -126,2 +126,2 @@ return sha3(nameFromABI(abi)).slice(0, 8);

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29saWRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvbGliL3NvbGlkaXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUE4QjtBQUM5Qix5Q0FBbUQ7QUFFbkQsbUNBQWtIO0FBRWxILFNBQWdCLElBQUksQ0FBQyxHQUFXO0lBQzlCLElBQU0sSUFBSSxHQUFHLElBQUksYUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDMUMsQ0FBQztBQUhELG9CQUdDO0FBRUQsU0FBZ0IsV0FBVyxDQUFDLEdBQXlCO0lBQ25ELElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDaEMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDO0tBQ2pCO0lBQ0QsSUFBTSxRQUFRLEdBQUksR0FBRyxDQUFDLE1BQThDLENBQUMsR0FBRyxDQUFDLFVBQUMsQ0FBQyxJQUFLLE9BQUEsQ0FBQyxDQUFDLElBQUksRUFBTixDQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEcsT0FBTyxHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxRQUFRLEdBQUcsR0FBRyxDQUFDO0FBQ3pDLENBQUM7QUFORCxrQ0FNQztBQUVELFNBQWdCLE9BQU8sQ0FBQyxJQUFZO0lBQ2xDLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFGRCwwQkFFQztBQUVELFNBQWdCLFdBQVcsQ0FBQyxJQUFZO0lBQ3RDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtR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LENBQUM7QUFGRCx3Q0FFQztBQUVELFNBQVMsbUJBQW1CLENBQUMsR0FBYTtJQUN4QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEdBQWM7SUFDdkMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDaEMsQ0FBQztBQUVELFNBQVMsU0FBUyxDQUFDLEdBQXdCOztJQUN6QyxPQUFPLENBQ0wsTUFBQSxNQUFBLEdBQUcsQ0FBQyxNQUFNLDBDQUNOLE1BQU0sQ0FBQyxVQUFDLEdBQUcsSUFBSyxPQUFBLEdBQUcsQ0FBQyxJQUFJLEtBQUssRUFBRSxFQUFmLENBQWUsRUFDaEMsR0FBRyxDQUFDLFVBQUMsR0FBRztRQUNQLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVDLENBQUMsQ0FBQyxtQ0FBSSxFQUFFLENBQ1gsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLZWNjYWsgfSBmcm9tICdzaGEzJztcbmltcG9ydCB0cywgeyBmYWN0b3J5LCBUeXBlTm9kZSB9IGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHsgQUJJIH0gZnJvbSAnLi4vLi4vY29udHJhY3RzL2FiaSc7XG5pbXBvcnQgeyBhc0FycmF5LCBhc1JlZk5vZGUsIGFzVHVwbGUsIEJvb2xlYW5UeXBlLCBCdWZmZXJUeXBlLCBOdW1iZXJUeXBlLCBTdHJpbmdUeXBlLCBWb2lkVHlwZSB9IGZyb20gJy4vc3ludGF4JztcblxuZXhwb3J0IGZ1bmN0aW9uIHNoYTMoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBoYXNoID0gbmV3IEtlY2NhaygyNTYpLnVwZGF0ZShzdHIpO1xuICByZXR1cm4gaGFzaC5kaWdlc3QoJ2hleCcpLnRvVXBwZXJDYXNlKCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBuYW1lRnJvbUFCSShhYmk6IEFCSS5GdW5jIHwgQUJJLkV2ZW50KTogc3RyaW5nIHtcbiAgaWYgKGFiaS5uYW1lLmluZGV4T2YoJygnKSAhPT0gLTEpIHtcbiAgICByZXR1cm4gYWJpLm5hbWU7XG4gIH1cbiAgY29uc3QgdHlwZU5hbWUgPSAoYWJpLmlucHV0cyBhcyAoQUJJLkV2ZW50SW5wdXQgfCBBQkkuRnVuY3Rpb25JTylbXSkubWFwKChpKSA9PiBpLnR5cGUpLmpvaW4oJywnKTtcbiAgcmV0dXJuIGFiaS5uYW1lICsgJygnICsgdHlwZU5hbWUgKyAnKSc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTaXplKHR5cGU6IHN0cmluZyk6IG51bWJlciB7XG4gIHJldHVybiBwYXJzZUludCh0eXBlLnJlcGxhY2UoLy4qXFxbfFxcXS4qL2dpLCAnJyksIDEwKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlYWxUeXBlKHR5cGU6IHN0cmluZyk6IHRzLlR5cGVOb2RlIHtcbiAgaWYgKC9cXFtcXF0vaS50ZXN0KHR5cGUpKSB7XG4gICAgcmV0dXJuIGFzQXJyYXkoZ2V0UmVhbFR5cGUodHlwZS5yZXBsYWNlKC9cXFtcXF0vLCAnJykpKTtcbiAgfVxuICBpZiAoL1xcWy4qXFxdL2kudGVzdCh0eXBlKSkge1xuICAgIHJldHVybiBhc1R1cGxlKGdldFJlYWxUeXBlKHR5cGUucmVwbGFjZSgvXFxbLipcXF0vLCAnJykpLCBnZXRTaXplKHR5cGUpKTtcbiAgfSBlbHNlIGlmICgvaW50L2kudGVzdCh0eXBlKSkge1xuICAgIHJldHVybiBOdW1iZXJUeXBlO1xuICB9IGVsc2UgaWYgKC9ib29sL2kudGVzdCh0eXBlKSkge1xuICAgIHJldHVybiBCb29sZWFuVHlwZTtcbiAgfSBlbHNlIGlmICgvYnl0ZXMvaS50ZXN0KHR5cGUpKSB7XG4gICAgcmV0dXJuIGFzUmVmTm9kZShCdWZmZXJUeXBlKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gU3RyaW5nVHlwZTtcbiAgfSAvLyBhZGRyZXNzLCBieXRlc1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5wdXRPdXB1dHNUb1R5cGUoaW9zPzogSW5wdXRPdXRwdXRbXSk6IFR5cGVOb2RlIHtcbiAgaWYgKCFpb3M/Lmxlbmd0aCkge1xuICAgIHJldHVybiBWb2lkVHlwZTtcbiAgfVxuICBjb25zdCBuYW1lZCA9IGlvcy5maWx0ZXIoKG91dCkgPT4gb3V0ICE9PSB1bmRlZmluZWQgJiYgb3V0Lm5hbWUgIT09ICcnKTtcbiAgaWYgKGlvcy5sZW5ndGggPT09IG5hbWVkLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWN0b3J5LmNyZWF0ZVR5cGVMaXRlcmFsTm9kZShcbiAgICAgIGlvcy5tYXAoKHsgbmFtZSwgdHlwZSB9KSA9PiBmYWN0b3J5LmNyZWF0ZVByb3BlcnR5U2lnbmF0dXJlKHVuZGVmaW5lZCwgbmFtZSwgdW5kZWZpbmVkLCBnZXRSZWFsVHlwZSh0eXBlKSkpLFxuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlVHVwbGVUeXBlTm9kZShpb3MubWFwKCh7IHR5cGUgfSkgPT4gZ2V0UmVhbFR5cGUodHlwZSkpKTtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBJbnB1dE91dHB1dCA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgTWV0aG9kVHlwZSA9ICdmdW5jdGlvbicgfCAnZXZlbnQnO1xuZXhwb3J0IHR5cGUgU2lnbmF0dXJlID0ge1xuICBoYXNoOiBzdHJpbmc7XG4gIGNvbnN0YW50OiBib29sZWFuO1xuICBpbnB1dHM6IEFycmF5PElucHV0T3V0cHV0PjtcbiAgb3V0cHV0cz86IEFycmF5PElucHV0T3V0cHV0Pjtcbn07XG5leHBvcnQgdHlwZSBNZXRob2QgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogTWV0aG9kVHlwZTtcbiAgc2lnbmF0dXJlczogQXJyYXk8U2lnbmF0dXJlPjtcbn07XG5leHBvcnQgdHlwZSBDb250cmFjdE1ldGhvZHMgPSBNYXA8c3RyaW5nLCBNZXRob2Q+O1xuZXhwb3J0IHR5cGUgQ29udHJhY3RNZXRob2RzTGlzdCA9IEFycmF5PHsgbmFtZTogc3RyaW5nIH0gJiBNZXRob2Q+O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29udHJhY3RNZXRob2RzKGFiaTogQUJJLkZ1bmN0aW9uT3JFdmVudFtdKTogTWV0aG9kW10ge1xuICAvLyBzb2xpZGl0eSBhbGxvd3MgZHVwbGljYXRlIGZ1bmN0aW9uIG5hbWVzXG4gIGNvbnN0IGNvbnRyYWN0TWV0aG9kcyA9IGFiaS5yZWR1Y2U8Q29udHJhY3RNZXRob2RzPigoc2lnbmF0dXJlcywgYWJpKSA9PiB7XG4gICAgaWYgKGFiaS5uYW1lID09PSAnJykge1xuICAgICAgcmV0dXJuIHNpZ25hdHVyZXM7XG4gICAgfVxuICAgIGlmIChhYmkudHlwZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uc3QgbWV0aG9kID0gc2lnbmF0dXJlcy5nZXQoYWJpLm5hbWUpIHx8IHtcbiAgICAgICAgbmFtZTogYWJpLm5hbWUsXG4gICAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICAgIHNpZ25hdHVyZXM6IFtdLFxuICAgICAgfTtcblxuICAgICAgY29uc3Qgc2lnbmF0dXJlID0ge1xuICAgICAgICBoYXNoOiBnZXRGdW5jdGlvblNlbGVjdG9yKGFiaSksXG4gICAgICAgIGNvbnN0YW50OiBhYmkuY29uc3RhbnQgfHwgZmFsc2UsXG4gICAgICAgIGlucHV0czogZ2V0SW5wdXRzKGFiaSksXG4gICAgICAgIG91dHB1dHM6IGFiaS5vdXRwdXRzPy5tYXAoKGFiaSkgPT4ge1xuICAgICAgICAgIHJldHVybiB7IG5hbWU6IGFiaS5uYW1lLCB0eXBlOiBhYmkudHlwZSB9O1xuICAgICAgICB9KSxcbiAgICAgIH07XG4gICAgICBtZXRob2Quc2lnbmF0dXJlcy5wdXNoKHNpZ25hdHVyZSk7XG4gICAgICBzaWduYXR1cmVzLnNldChtZXRob2QubmFtZSwgbWV0aG9kKTtcbiAgICB9IGVsc2UgaWYgKGFiaS50eXBlID09PSAnZXZlbnQnKSB7XG4gICAgICBzaWduYXR1cmVzLnNldChhYmkubmFtZSwge1xuICAgICAgICBuYW1lOiBhYmkubmFtZSxcbiAgICAgICAgdHlwZTogJ2V2ZW50JyxcbiAgICAgICAgc2lnbmF0dXJlczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGhhc2g6IGdldEV2ZW50U2lnbmF0dXJlKGFiaSksXG4gICAgICAgICAgICBjb25zdGFudDogZmFsc2UsXG4gICAgICAgICAgICBpbnB1dHM6IGdldElucHV0cyhhYmkpLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHNpZ25hdHVyZXM7XG4gIH0sIG5ldyBNYXA8c3RyaW5nLCBNZXRob2Q+KCkpO1xuICByZXR1cm4gQXJyYXkuZnJvbShjb250cmFjdE1ldGhvZHMsIChbbmFtZSwgbWV0aG9kXSkgPT4ge1xuICAgIHJldHVybiB7IG5hbWU6IG5hbWUsIHR5cGU6IG1ldGhvZC50eXBlLCBzaWduYXR1cmVzOiBtZXRob2Quc2lnbmF0dXJlcyB9O1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRva2VuaXplU3RyaW5nKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gaW5wdXQucmVwbGFjZSgvXFxXKy9nLCAnXycpO1xufVxuXG5mdW5jdGlvbiBnZXRGdW5jdGlvblNlbGVjdG9yKGFiaTogQUJJLkZ1bmMpOiBzdHJpbmcge1xuICByZXR1cm4gc2hhMyhuYW1lRnJvbUFCSShhYmkpKS5zbGljZSgwLCA4KTtcbn1cblxuZnVuY3Rpb24gZ2V0RXZlbnRTaWduYXR1cmUoYWJpOiBBQkkuRXZlbnQpOiBzdHJpbmcge1xuICByZXR1cm4gc2hhMyhuYW1lRnJvbUFCSShhYmkpKTtcbn1cblxuZnVuY3Rpb24gZ2V0SW5wdXRzKGFiaTogQUJJLkZ1bmN0aW9uT3JFdmVudCk6IElucHV0T3V0cHV0W10ge1xuICByZXR1cm4gKFxuICAgIGFiaS5pbnB1dHNcbiAgICAgID8uZmlsdGVyKChhYmkpID0+IGFiaS5uYW1lICE9PSAnJylcbiAgICAgIC5tYXAoKGFiaSkgPT4ge1xuICAgICAgICByZXR1cm4geyBuYW1lOiBhYmkubmFtZSwgdHlwZTogYWJpLnR5cGUgfTtcbiAgICAgIH0pID8/IFtdXG4gICk7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29saWRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvbGliL3NvbGlkaXR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDZCQUE4QjtBQUM5Qix5Q0FBbUQ7QUFFbkQsbUNBQWtIO0FBRWxILFNBQWdCLElBQUksQ0FBQyxHQUFXO0lBQzlCLElBQU0sSUFBSSxHQUFHLElBQUksYUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN6QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDMUMsQ0FBQztBQUhELG9CQUdDO0FBRUQsU0FBZ0IsV0FBVyxDQUFDLEdBQXlCO0lBQ25ELElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDaEMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDO0tBQ2pCO0lBQ0QsSUFBTSxRQUFRLEdBQUksR0FBRyxDQUFDLE1BQThDLENBQUMsR0FBRyxDQUFDLFVBQUMsQ0FBQyxJQUFLLE9BQUEsQ0FBQyxDQUFDLElBQUksRUFBTixDQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEcsT0FBTyxHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxRQUFRLEdBQUcsR0FBRyxDQUFDO0FBQ3pDLENBQUM7QUFORCxrQ0FNQztBQUVELFNBQWdCLE9BQU8sQ0FBQyxJQUFZO0lBQ2xDLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFGRCwwQkFFQztBQUVELFNBQWdCLFdBQVcsQ0FBQyxJQUFZO0lBQ3RDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtR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Q0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdEMsQ0FBQztBQUZELGtDQUVDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxHQUFhO0lBQ3hDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDNUMsQ0FBQztBQUVELFNBQVMsaUJBQWlCLENBQUMsR0FBYztJQUN2QyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNoQyxDQUFDO0FBRUQsU0FBUyxTQUFTLENBQUMsR0FBd0I7O0lBQ3pDLE9BQU8sQ0FDTCxNQUFBLE1BQUEsR0FBRyxDQUFDLE1BQU0sMENBQ04sTUFBTSxDQUFDLFVBQUMsR0FBRyxJQUFLLE9BQUEsR0FBRyxDQUFDLElBQUksS0FBSyxFQUFFLEVBQWYsQ0FBZSxFQUNoQyxHQUFHLENBQUMsVUFBQyxHQUFHO1FBQ1AsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUMsQ0FBQyxDQUFDLG1DQUFJLEVBQUUsQ0FDWCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNhbWVsQ2FzZSB9IGZyb20gJ2NhbWVsLWNhc2UnO1xuaW1wb3J0IHsgS2VjY2FrIH0gZnJvbSAnc2hhMyc7XG5pbXBvcnQgdHMsIHsgZmFjdG9yeSwgVHlwZU5vZGUgfSBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7IEFCSSB9IGZyb20gJy4uLy4uL2NvbnRyYWN0cy9hYmknO1xuaW1wb3J0IHsgYXNBcnJheSwgYXNSZWZOb2RlLCBhc1R1cGxlLCBCb29sZWFuVHlwZSwgQnVmZmVyVHlwZSwgTnVtYmVyVHlwZSwgU3RyaW5nVHlwZSwgVm9pZFR5cGUgfSBmcm9tICcuL3N5bnRheCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzaGEzKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgaGFzaCA9IG5ldyBLZWNjYWsoMjU2KS51cGRhdGUoc3RyKTtcbiAgcmV0dXJuIGhhc2guZGlnZXN0KCdoZXgnKS50b1VwcGVyQ2FzZSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbmFtZUZyb21BQkkoYWJpOiBBQkkuRnVuYyB8IEFCSS5FdmVudCk6IHN0cmluZyB7XG4gIGlmIChhYmkubmFtZS5pbmRleE9mKCcoJykgIT09IC0xKSB7XG4gICAgcmV0dXJuIGFiaS5uYW1lO1xuICB9XG4gIGNvbnN0IHR5cGVOYW1lID0gKGFiaS5pbnB1dHMgYXMgKEFCSS5FdmVudElucHV0IHwgQUJJLkZ1bmN0aW9uSU8pW10pLm1hcCgoaSkgPT4gaS50eXBlKS5qb2luKCcsJyk7XG4gIHJldHVybiBhYmkubmFtZSArICcoJyArIHR5cGVOYW1lICsgJyknO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2l6ZSh0eXBlOiBzdHJpbmcpOiBudW1iZXIge1xuICByZXR1cm4gcGFyc2VJbnQodHlwZS5yZXBsYWNlKC8uKlxcW3xcXF0uKi9naSwgJycpLCAxMCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZWFsVHlwZSh0eXBlOiBzdHJpbmcpOiB0cy5UeXBlTm9kZSB7XG4gIGlmICgvXFxbXFxdL2kudGVzdCh0eXBlKSkge1xuICAgIHJldHVybiBhc0FycmF5KGdldFJlYWxUeXBlKHR5cGUucmVwbGFjZSgvXFxbXFxdLywgJycpKSk7XG4gIH1cbiAgaWYgKC9cXFsuKlxcXS9pLnRlc3QodHlwZSkpIHtcbiAgICByZXR1cm4gYXNUdXBsZShnZXRSZWFsVHlwZSh0eXBlLnJlcGxhY2UoL1xcWy4qXFxdLywgJycpKSwgZ2V0U2l6ZSh0eXBlKSk7XG4gIH0gZWxzZSBpZiAoL2ludC9pLnRlc3QodHlwZSkpIHtcbiAgICByZXR1cm4gTnVtYmVyVHlwZTtcbiAgfSBlbHNlIGlmICgvYm9vbC9pLnRlc3QodHlwZSkpIHtcbiAgICByZXR1cm4gQm9vbGVhblR5cGU7XG4gIH0gZWxzZSBpZiAoL2J5dGVzL2kudGVzdCh0eXBlKSkge1xuICAgIHJldHVybiBhc1JlZk5vZGUoQnVmZmVyVHlwZSk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIFN0cmluZ1R5cGU7XG4gIH0gLy8gYWRkcmVzcywgYnl0ZXNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlucHV0T3VwdXRzVG9UeXBlKGlvcz86IElucHV0T3V0cHV0W10pOiBUeXBlTm9kZSB7XG4gIGlmICghaW9zPy5sZW5ndGgpIHtcbiAgICByZXR1cm4gVm9pZFR5cGU7XG4gIH1cbiAgY29uc3QgbmFtZWQgPSBpb3MuZmlsdGVyKChvdXQpID0+IG91dCAhPT0gdW5kZWZpbmVkICYmIG91dC5uYW1lICE9PSAnJyk7XG4gIGlmIChpb3MubGVuZ3RoID09PSBuYW1lZC5sZW5ndGgpIHtcbiAgICByZXR1cm4gZmFjdG9yeS5jcmVhdGVUeXBlTGl0ZXJhbE5vZGUoXG4gICAgICBpb3MubWFwKCh7IG5hbWUsIHR5cGUgfSkgPT4gZmFjdG9yeS5jcmVhdGVQcm9wZXJ0eVNpZ25hdHVyZSh1bmRlZmluZWQsIG5hbWUsIHVuZGVmaW5lZCwgZ2V0UmVhbFR5cGUodHlwZSkpKSxcbiAgICApO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBmYWN0b3J5LmNyZWF0ZVR1cGxlVHlwZU5vZGUoaW9zLm1hcCgoeyB0eXBlIH0pID0+IGdldFJlYWxUeXBlKHR5cGUpKSk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgSW5wdXRPdXRwdXQgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIE1ldGhvZFR5cGUgPSAnZnVuY3Rpb24nIHwgJ2V2ZW50JztcbmV4cG9ydCB0eXBlIFNpZ25hdHVyZSA9IHtcbiAgaGFzaDogc3RyaW5nO1xuICBjb25zdGFudDogYm9vbGVhbjtcbiAgaW5wdXRzOiBBcnJheTxJbnB1dE91dHB1dD47XG4gIG91dHB1dHM/OiBBcnJheTxJbnB1dE91dHB1dD47XG59O1xuZXhwb3J0IHR5cGUgTWV0aG9kID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHR5cGU6IE1ldGhvZFR5cGU7XG4gIHNpZ25hdHVyZXM6IEFycmF5PFNpZ25hdHVyZT47XG59O1xuZXhwb3J0IHR5cGUgQ29udHJhY3RNZXRob2RzID0gTWFwPHN0cmluZywgTWV0aG9kPjtcbmV4cG9ydCB0eXBlIENvbnRyYWN0TWV0aG9kc0xpc3QgPSBBcnJheTx7IG5hbWU6IHN0cmluZyB9ICYgTWV0aG9kPjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbnRyYWN0TWV0aG9kcyhhYmk6IEFCSS5GdW5jdGlvbk9yRXZlbnRbXSk6IE1ldGhvZFtdIHtcbiAgLy8gc29saWRpdHkgYWxsb3dzIGR1cGxpY2F0ZSBmdW5jdGlvbiBuYW1lc1xuICBjb25zdCBjb250cmFjdE1ldGhvZHMgPSBhYmkucmVkdWNlPENvbnRyYWN0TWV0aG9kcz4oKHNpZ25hdHVyZXMsIGFiaSkgPT4ge1xuICAgIGlmIChhYmkubmFtZSA9PT0gJycpIHtcbiAgICAgIHJldHVybiBzaWduYXR1cmVzO1xuICAgIH1cbiAgICBpZiAoYWJpLnR5cGUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnN0IG1ldGhvZCA9IHNpZ25hdHVyZXMuZ2V0KGFiaS5uYW1lKSB8fCB7XG4gICAgICAgIG5hbWU6IGFiaS5uYW1lLFxuICAgICAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgICAgICBzaWduYXR1cmVzOiBbXSxcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IHNpZ25hdHVyZSA9IHtcbiAgICAgICAgaGFzaDogZ2V0RnVuY3Rpb25TZWxlY3RvcihhYmkpLFxuICAgICAgICBjb25zdGFudDogYWJpLmNvbnN0YW50IHx8IGZhbHNlLFxuICAgICAgICBpbnB1dHM6IGdldElucHV0cyhhYmkpLFxuICAgICAgICBvdXRwdXRzOiBhYmkub3V0cHV0cz8ubWFwKChhYmkpID0+IHtcbiAgICAgICAgICByZXR1cm4geyBuYW1lOiBhYmkubmFtZSwgdHlwZTogYWJpLnR5cGUgfTtcbiAgICAgICAgfSksXG4gICAgICB9O1xuICAgICAgbWV0aG9kLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICAgICAgc2lnbmF0dXJlcy5zZXQobWV0aG9kLm5hbWUsIG1ldGhvZCk7XG4gICAgfSBlbHNlIGlmIChhYmkudHlwZSA9PT0gJ2V2ZW50Jykge1xuICAgICAgc2lnbmF0dXJlcy5zZXQoYWJpLm5hbWUsIHtcbiAgICAgICAgbmFtZTogYWJpLm5hbWUsXG4gICAgICAgIHR5cGU6ICdldmVudCcsXG4gICAgICAgIHNpZ25hdHVyZXM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBoYXNoOiBnZXRFdmVudFNpZ25hdHVyZShhYmkpLFxuICAgICAgICAgICAgY29uc3RhbnQ6IGZhbHNlLFxuICAgICAgICAgICAgaW5wdXRzOiBnZXRJbnB1dHMoYWJpKSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBzaWduYXR1cmVzO1xuICB9LCBuZXcgTWFwPHN0cmluZywgTWV0aG9kPigpKTtcbiAgcmV0dXJuIEFycmF5LmZyb20oY29udHJhY3RNZXRob2RzLCAoW25hbWUsIG1ldGhvZF0pID0+IHtcbiAgICByZXR1cm4geyBuYW1lOiBuYW1lLCB0eXBlOiBtZXRob2QudHlwZSwgc2lnbmF0dXJlczogbWV0aG9kLnNpZ25hdHVyZXMgfTtcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsaWJyYXJ5TmFtZShsaW5rOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gbGluay5zcGxpdCgnOicpLnNsaWNlKC0xKVswXTtcbn1cblxuZnVuY3Rpb24gZ2V0RnVuY3Rpb25TZWxlY3RvcihhYmk6IEFCSS5GdW5jKTogc3RyaW5nIHtcbiAgcmV0dXJuIHNoYTMobmFtZUZyb21BQkkoYWJpKSkuc2xpY2UoMCwgOCk7XG59XG5cbmZ1bmN0aW9uIGdldEV2ZW50U2lnbmF0dXJlKGFiaTogQUJJLkV2ZW50KTogc3RyaW5nIHtcbiAgcmV0dXJuIHNoYTMobmFtZUZyb21BQkkoYWJpKSk7XG59XG5cbmZ1bmN0aW9uIGdldElucHV0cyhhYmk6IEFCSS5GdW5jdGlvbk9yRXZlbnQpOiBJbnB1dE91dHB1dFtdIHtcbiAgcmV0dXJuIChcbiAgICBhYmkuaW5wdXRzXG4gICAgICA/LmZpbHRlcigoYWJpKSA9PiBhYmkubmFtZSAhPT0gJycpXG4gICAgICAubWFwKChhYmkpID0+IHtcbiAgICAgICAgcmV0dXJuIHsgbmFtZTogYWJpLm5hbWUsIHR5cGU6IGFiaS50eXBlIH07XG4gICAgICB9KSA/PyBbXVxuICApO1xufVxuIl19

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

});
it('should tokenize string', function () {
assert_1["default"].equal(solidity_1.tokenizeString('sol/Storage.sol:Storage'), 'sol_Storage_sol_Storage');
it('should extract library name', function () {
assert_1["default"].equal(solidity_1.libraryName('sol/Storage.sol:Storage'), 'Storage');
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29saWRpdHkudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zb2x0cy9saWIvc29saWRpdHkudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUE0QjtBQUU1Qix1Q0FBd0U7QUFFeEUsUUFBUSxDQUFDLGFBQWEsRUFBRTtJQUN0QixFQUFFLENBQUMsa0NBQWtDLEVBQUU7OztnQkFDckMsbUJBQU0sQ0FBQyxLQUFLLENBQUMsZUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQzs7OztLQUNoRSxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsZ0RBQWdELEVBQUU7Ozs7Z0JBQzdDLEdBQUcsR0FBYTtvQkFDcEIsSUFBSSxFQUFFLFVBQVU7b0JBQ2hCLElBQUksRUFBRSxLQUFLO29CQUNYLGVBQWUsRUFBRSxNQUFNO29CQUN2QixNQUFNLEVBQUU7d0JBQ047NEJBQ0UsSUFBSSxFQUFFLEdBQUc7NEJBQ1QsSUFBSSxFQUFFLFFBQVE7eUJBQ2Y7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLEdBQUc7NEJBQ1QsSUFBSSxFQUFFLE1BQU07eUJBQ2I7cUJBQ0Y7aUJBQ0YsQ0FBQztnQkFDRixtQkFBTSxDQUFDLEtBQUssQ0FBQyxzQkFBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7Ozs7S0FDcEQsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHlCQUF5QixFQUFFO1FBQzVCLG1CQUFNLENBQUMsS0FBSyxDQUFDLGtCQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsd0JBQXdCLEVBQUU7UUFDM0IsbUJBQU0sQ0FBQyxLQUFLLENBQUMseUJBQWMsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLHlCQUF5QixDQUFDLENBQUM7SUFDckYsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IEFCSSB9IGZyb20gJy4uLy4uL2NvbnRyYWN0cy9hYmknO1xuaW1wb3J0IHsgZ2V0U2l6ZSwgbmFtZUZyb21BQkksIHNoYTMsIHRva2VuaXplU3RyaW5nIH0gZnJvbSAnLi9zb2xpZGl0eSc7XG5cbmRlc2NyaWJlKCdhYmkgaGVscGVycycsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ3Nob3VsZCBjb21wdXRlIGEgdmFsaWQgbWV0aG9kIGlkJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgIGFzc2VydC5lcXVhbChzaGEzKCdiYXoodWludDMyLGJvb2wpJykuc2xpY2UoMCwgOCksICdDRENENzdDMCcpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiB0aGUgZnVsbCBmdW5jdGlvbiBuYW1lIHdpdGggYXJncycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBhYmk6IEFCSS5GdW5jID0ge1xuICAgICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICAgIG5hbWU6ICdiYXonLFxuICAgICAgc3RhdGVNdXRhYmlsaXR5OiAncHVyZScsXG4gICAgICBpbnB1dHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICcxJyxcbiAgICAgICAgICB0eXBlOiAndWludDMyJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICcyJyxcbiAgICAgICAgICB0eXBlOiAnYm9vbCcsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gICAgYXNzZXJ0LmVxdWFsKG5hbWVGcm9tQUJJKGFiaSksICdiYXoodWludDMyLGJvb2wpJyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgc3RyaXAgYXJyYXkgc2l6ZScsICgpID0+IHtcbiAgICBhc3NlcnQuZXF1YWwoZ2V0U2l6ZSgndWludFszXScpLCAzKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCB0b2tlbml6ZSBzdHJpbmcnLCAoKSA9PiB7XG4gICAgYXNzZXJ0LmVxdWFsKHRva2VuaXplU3RyaW5nKCdzb2wvU3RvcmFnZS5zb2w6U3RvcmFnZScpLCAnc29sX1N0b3JhZ2Vfc29sX1N0b3JhZ2UnKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29saWRpdHkudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zb2x0cy9saWIvc29saWRpdHkudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUE0QjtBQUU1Qix1Q0FBcUU7QUFFckUsUUFBUSxDQUFDLGFBQWEsRUFBRTtJQUN0QixFQUFFLENBQUMsa0NBQWtDLEVBQUU7OztnQkFDckMsbUJBQU0sQ0FBQyxLQUFLLENBQUMsZUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQzs7OztLQUNoRSxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsZ0RBQWdELEVBQUU7Ozs7Z0JBQzdDLEdBQUcsR0FBYTtvQkFDcEIsSUFBSSxFQUFFLFVBQVU7b0JBQ2hCLElBQUksRUFBRSxLQUFLO29CQUNYLGVBQWUsRUFBRSxNQUFNO29CQUN2QixNQUFNLEVBQUU7d0JBQ047NEJBQ0UsSUFBSSxFQUFFLEdBQUc7NEJBQ1QsSUFBSSxFQUFFLFFBQVE7eUJBQ2Y7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLEdBQUc7NEJBQ1QsSUFBSSxFQUFFLE1BQU07eUJBQ2I7cUJBQ0Y7aUJBQ0YsQ0FBQztnQkFDRixtQkFBTSxDQUFDLEtBQUssQ0FBQyxzQkFBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLENBQUM7Ozs7S0FDcEQsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHlCQUF5QixFQUFFO1FBQzVCLG1CQUFNLENBQUMsS0FBSyxDQUFDLGtCQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsNkJBQTZCLEVBQUU7UUFDaEMsbUJBQU0sQ0FBQyxLQUFLLENBQUMsc0JBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2xFLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBBQkkgfSBmcm9tICcuLi8uLi9jb250cmFjdHMvYWJpJztcbmltcG9ydCB7IGdldFNpemUsIGxpYnJhcnlOYW1lLCBuYW1lRnJvbUFCSSwgc2hhMyB9IGZyb20gJy4vc29saWRpdHknO1xuXG5kZXNjcmliZSgnYWJpIGhlbHBlcnMnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdzaG91bGQgY29tcHV0ZSBhIHZhbGlkIG1ldGhvZCBpZCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuZXF1YWwoc2hhMygnYmF6KHVpbnQzMixib29sKScpLnNsaWNlKDAsIDgpLCAnQ0RDRDc3QzAnKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gdGhlIGZ1bGwgZnVuY3Rpb24gbmFtZSB3aXRoIGFyZ3MnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgY29uc3QgYWJpOiBBQkkuRnVuYyA9IHtcbiAgICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgICBuYW1lOiAnYmF6JyxcbiAgICAgIHN0YXRlTXV0YWJpbGl0eTogJ3B1cmUnLFxuICAgICAgaW5wdXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnMScsXG4gICAgICAgICAgdHlwZTogJ3VpbnQzMicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnMicsXG4gICAgICAgICAgdHlwZTogJ2Jvb2wnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICAgIGFzc2VydC5lcXVhbChuYW1lRnJvbUFCSShhYmkpLCAnYmF6KHVpbnQzMixib29sKScpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHN0cmlwIGFycmF5IHNpemUnLCAoKSA9PiB7XG4gICAgYXNzZXJ0LmVxdWFsKGdldFNpemUoJ3VpbnRbM10nKSwgMyk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgZXh0cmFjdCBsaWJyYXJ5IG5hbWUnLCAoKSA9PiB7XG4gICAgYXNzZXJ0LmVxdWFsKGxpYnJhcnlOYW1lKCdzb2wvU3RvcmFnZS5zb2w6U3RvcmFnZScpLCAnU3RvcmFnZScpO1xuICB9KTtcbn0pO1xuIl19

@@ -52,3 +52,3 @@ import ts, { ConciseBody, MethodDeclaration, TypeNode } from 'typescript';

export declare function prop(obj: ts.Expression | string, name: string | ts.Identifier, optionChain?: boolean): ts.PropertyAccessExpression;
export declare function createParameter(name: string | ts.Identifier, typeNode?: ts.TypeNode, initializer?: ts.Expression, isOptional?: boolean, isVariadic?: boolean): ts.ParameterDeclaration;
export declare function createParameter(name: string | ts.BindingName, typeNode?: ts.TypeNode, initializer?: ts.Expression, isOptional?: boolean, isVariadic?: boolean): ts.ParameterDeclaration;
export declare function declareConstant(name: ts.Identifier | string, initializer?: ts.Expression, extern?: boolean): ts.VariableStatement;

@@ -55,0 +55,0 @@ export declare function declareLet(name: ts.Identifier, initializer: ts.Expression, extern?: boolean): ts.VariableStatement;

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

function createParameter(name, typeNode, initializer, isOptional, isVariadic) {
return typescript_1.factory.createParameterDeclaration(undefined, undefined, isVariadic ? exports.EllipsisToken : undefined, typeof name === 'string' ? typescript_1.factory.createIdentifier(name) : name, isOptional ? exports.QuestionToken : undefined, typeNode, initializer);
return typescript_1.factory.createParameterDeclaration(undefined, undefined, isVariadic ? exports.EllipsisToken : undefined, name, isOptional ? exports.QuestionToken : undefined, typeNode, initializer);
}

@@ -224,2 +224,2 @@ exports.createParameter = createParameter;

exports.Method = Method;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ludGF4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NvbHRzL2xpYi9zeW50YXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUFtRjtBQUV0RSxRQUFBLFNBQVMsR0FBRyxvQkFBTyxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3JELFFBQUEsUUFBUSxHQUFHLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzlELFFBQUEsVUFBVSxHQUFHLG9CQUFPLENBQUMscUJBQXFCLENBQUMsdUJBQUUsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDeEUsUUFBQSxVQUFVLEdBQUcsb0JBQU8sQ0FBQyxxQkFBcUIsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUN4RSxRQUFBLFdBQVcsR0FBRyxvQkFBTyxDQUFDLHFCQUFxQixDQUFDLHVCQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzFFLFFBQUEsV0FBVyxHQUFHLG9CQUFPLENBQUMscUJBQXFCLENBQUMsdUJBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDMUUsUUFBQSxhQUFhLEdBQUcsb0JBQU8sQ0FBQyxxQkFBcUIsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQzlFLFFBQUEsY0FBYyxHQUFHLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDL0QsUUFBQSxtQkFBbUIsR0FBRyxvQkFBTyxDQUFDLG1CQUFtQixDQUFDLENBQUMsc0JBQWMsRUFBRSxxQkFBYSxDQUFDLENBQUMsQ0FBQztBQUVuRixRQUFBLFdBQVcsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ2xELFFBQUEsWUFBWSxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDcEQsUUFBQSxVQUFVLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNoRCxRQUFBLE9BQU8sR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzlDLFFBQUEsS0FBSyxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDMUMsUUFBQSxhQUFhLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUMxRCxRQUFBLE1BQU0sR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzVDLFFBQUEsa0JBQWtCLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0FBQ3BFLFFBQUEsVUFBVSxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDcEQsUUFBQSxlQUFlLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUMxRCxRQUFBLFVBQVUsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ2hELFFBQUEsVUFBVSxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFFaEQsUUFBQSxLQUFLLEdBQUcsb0JBQU8sQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUM3QyxRQUFBLFdBQVcsR0FBRyxvQkFBTyxDQUFDLHVCQUF1QixDQUFDLGVBQU8sQ0FBQyxDQUFDO0FBQ3ZELFFBQUEsU0FBUyxHQUFHLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsYUFBSyxDQUFDLENBQUM7QUFDbkQsUUFBQSxpQkFBaUIsR0FBRyxvQkFBTyxDQUFDLHVCQUF1QixDQUFDLHFCQUFhLENBQUMsQ0FBQztBQUNuRSxRQUFBLHNCQUFzQixHQUFHLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsMEJBQWtCLENBQUMsQ0FBQztBQUU3RSxRQUFBLFlBQVksR0FBRyxvQkFBTyxDQUFDLFdBQVcsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNqRSxRQUFBLFdBQVcsR0FBRyxvQkFBTyxDQUFDLFdBQVcsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUMvRCxRQUFBLFdBQVcsR0FBRyxvQkFBTyxDQUFDLFdBQVcsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUMvRCxRQUFBLGFBQWEsR0FBRyxvQkFBTyxDQUFDLFdBQVcsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNsRSxRQUFBLGFBQWEsR0FBRyxvQkFBTyxDQUFDLFdBQVcsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUNqRSxRQUFBLGdCQUFnQixHQUFHLG9CQUFPLENBQUMsV0FBVyxDQUFDLHVCQUFFLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDdkUsUUFBQSxVQUFVLEdBQUcsb0JBQU8sQ0FBQyxXQUFXLENBQUMsdUJBQUUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDM0QsUUFBQSxVQUFVLEdBQUcsb0JBQU8sQ0FBQyxXQUFXLENBQUMsdUJBQUUsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDN0QsUUFBQSxhQUFhLEdBQUcsb0JBQU8sQ0FBQyxXQUFXLENBQUMsdUJBQUUsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7QUFDbkUsUUFBQSxzQkFBc0IsR0FBRyxvQkFBTyxDQUFDLFdBQVcsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQ25GLFFBQUEsU0FBUyxHQUFHLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUM7QUFFL0QsU0FBZ0IsVUFBVSxDQUFDLEVBQTBCLEVBQUUsSUFBc0I7SUFDM0UsT0FBTyxvQkFBTyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDbEUsQ0FBQztBQUZELGdDQUVDO0FBRUQsU0FBZ0IsVUFBVSxDQUFDLElBQW1CO0lBQzVDLE9BQU8sb0JBQU8sQ0FBQyw4QkFBOEIsQ0FBQyxvQkFBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzVFLENBQUM7QUFGRCxnQ0FFQztBQUVELFNBQWdCLFVBQVU7SUFBQyxjQUF3QjtTQUF4QixVQUF3QixFQUF4QixxQkFBd0IsRUFBeEIsSUFBd0I7UUFBeEIseUJBQXdCOztJQUNqRCxPQUFPLFVBQVUsQ0FBQyxvQkFBTyxDQUFDLDhCQUE4QixDQUFDLGtCQUFVLEVBQUUsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ2hILENBQUM7QUFGRCxnQ0FFQztBQUVELFNBQWdCLE9BQU8sQ0FBQyxJQUFpQjtJQUN2QyxPQUFPLG9CQUFPLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDM0MsQ0FBQztBQUZELDBCQUVDO0FBRUQsU0FBZ0IsT0FBTyxDQUFDLElBQWlCLEVBQUUsSUFBWTtJQUNyRCxPQUFPLG9CQUFPLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQzdELENBQUM7QUFGRCwwQkFFQztBQUVELFNBQWdCLFNBQVMsQ0FBQyxFQUFpQjtJQUN6QyxPQUFPLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3hELENBQUM7QUFGRCw4QkFFQztBQUVELFNBQWdCLE9BQU8sQ0FBQyxHQUFrQjtJQUN4QyxPQUFPLG9CQUFPLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztBQUNuRixDQUFDO0FBRkQsMEJBRUM7QUFFRCxTQUFnQixXQUFXLENBQUMsUUFBdUM7SUFDakUsT0FBTyxPQUFPLENBQUMsb0JBQU8sQ0FBQyw2QkFBNkIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0FBQ2xFLENBQUM7QUFGRCxrQ0FFQztBQUVELFNBQWdCLFNBQVMsQ0FBQyxNQUFpQyxFQUFFLElBQWlCO0lBQzVFLE9BQU8sb0JBQU8sQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsOEJBQXNCLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDNUcsQ0FBQztBQUZELDhCQUVDO0FBRUQsU0FBZ0IsV0FBVyxDQUFDLEdBQWtCO0lBQzVDLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBVSxFQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxFQUFFLG9CQUFPLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3pGLENBQUM7QUFGRCxrQ0FFQztBQUVELFNBQWdCLGNBQWMsQ0FBQyxHQUFrQjtJQUMvQyxnREFBZ0Q7SUFDaEQsT0FBTyxVQUFVLENBQ2YsSUFBSSxDQUNGLFVBQVUsQ0FDUixJQUFJLENBQUMsb0JBQU8sQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBVSxFQUFFLFNBQVMsRUFBRSxDQUFDLG9CQUFPLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxFQUN6RyxDQUFDLEdBQUcsRUFBRSxvQkFBTyxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQzFDLEVBQ0QsUUFBUSxDQUNULEVBQ0QsQ0FBQyxvQkFBTyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQ3hDLENBQUM7QUFDSixDQUFDO0FBWkQsd0NBWUM7QUFFRCxTQUFnQixVQUFVLENBQ3hCLE1BQWlDLEVBQ2pDLFVBQWdDLEVBQ2hDLElBQTBCLEVBQzFCLElBQWlCO0lBRWpCLE9BQU8sb0JBQU8sQ0FBQyxtQkFBbUIsQ0FDaEMsU0FBUyxFQUNULENBQUMsb0JBQU8sQ0FBQyw4QkFBOEIsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLENBQUMsRUFDekQsTUFBTSxFQUNOLElBQUksRUFDSiw4QkFBc0IsRUFDdEIsSUFBSSxDQUNMLENBQUM7QUFDSixDQUFDO0FBZEQsZ0NBY0M7QUFFRCxTQUFnQixJQUFJLENBQ2xCLEdBQTJCLEVBQzNCLElBQTRCLEVBQzVCLFdBQXFCO0lBRXJCLE9BQU8sb0JBQU8sQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyx3QkFBZ0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ3pHLENBQUM7QUFORCxvQkFNQztBQUVELFNBQVMsS0FBSyxDQUFDLEdBQTJCO0lBQ3hDLE9BQU8sT0FBTyxHQUFHLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7QUFDdkUsQ0FBQztBQUVELFNBQWdCLGVBQWUsQ0FDN0IsSUFBNEIsRUFDNUIsUUFBc0IsRUFDdEIsV0FBMkIsRUFDM0IsVUFBb0IsRUFDcEIsVUFBb0I7SUFFcEIsT0FBTyxvQkFBTyxDQUFDLDBCQUEwQixDQUN2QyxTQUFTLEVBQ1QsU0FBUyxFQUNULFVBQVUsQ0FBQyxDQUFDLENBQUMscUJBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUN0QyxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLG9CQUFPLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFDaEUsVUFBVSxDQUFDLENBQUMsQ0FBQyxxQkFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQ3RDLFFBQVEsRUFDUixXQUFXLENBQ1osQ0FBQztBQUNKLENBQUM7QUFoQkQsMENBZ0JDO0FBRUQsU0FBZ0IsZUFBZSxDQUM3QixJQUE0QixFQUM1QixXQUEyQixFQUMzQixNQUFnQjtJQUVoQixPQUFPLG9CQUFPLENBQUMsdUJBQXVCLENBQ3BDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFDM0Isb0JBQU8sQ0FBQyw2QkFBNkIsQ0FDbkMsQ0FBQyxvQkFBTyxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLEVBQzVFLHVCQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FDbkIsQ0FDRixDQUFDO0FBQ0osQ0FBQztBQVpELDBDQVlDO0FBRUQsU0FBZ0IsVUFBVSxDQUFDLElBQW1CLEVBQUUsV0FBMEIsRUFBRSxNQUFnQjtJQUMxRixPQUFPLG9CQUFPLENBQUMsdUJBQXVCLENBQ3BDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFDM0Isb0JBQU8sQ0FBQyw2QkFBNkIsQ0FDbkMsQ0FBQyxvQkFBTyxDQUFDLHlCQUF5QixDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLEVBQzVFLHVCQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FDakIsQ0FDRixDQUFDO0FBQ0osQ0FBQztBQVJELGdDQVFDO0FBRUQsSUFBTSxTQUFTLEdBQUcsb0JBQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUN0RCxJQUFNLFFBQVEsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXBELFNBQWdCLGVBQWU7SUFBQyxlQUF1QjtTQUF2QixVQUF1QixFQUF2QixxQkFBdUIsRUFBdkIsSUFBdUI7UUFBdkIsMEJBQXVCOztJQUNyRCxPQUFPLG9CQUFPLENBQUMsaUNBQWlDLENBQUMsbUJBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUN2RSxDQUFDO0FBRkQsMENBRUM7QUFFRCxTQUFnQix5QkFBeUIsQ0FBQyxJQUFtQixFQUFFLEtBQW9CO0lBQ2pGLE9BQU8sb0JBQU8sQ0FBQyx5QkFBeUIsQ0FBQyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2xGLENBQUM7QUFGRCw4REFFQztBQUVELFNBQWdCLGlCQUFpQixDQUFDLEtBQW9CLEVBQUUsVUFBMkI7SUFDakYsT0FBTyxvQkFBTyxDQUFDLHlCQUF5QixDQUN0QyxvQkFBTyxDQUFDLDJCQUEyQixDQUNqQyxLQUFLLEVBQ0wscUJBQWEsRUFDYixVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsRUFDN0Isa0JBQVUsRUFDVixVQUFVLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FDM0QsQ0FDRixDQUFDO0FBQ0osQ0FBQztBQVZELDhDQVVDO0FBRUQsU0FBZ0IsZUFBZSxDQUFDLEtBQW9CLEVBQUUsVUFBMEIsRUFBRSxPQUF3QjtJQUN4RyxPQUFPLG9CQUFPLENBQUMsaUJBQWlCLENBQzlCLEtBQUssRUFDTCxvQkFBTyxDQUFDLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ2hFLG9CQUFPLENBQUMsV0FBVyxpQ0FBSyxVQUFVLElBQUUsb0JBQU8sQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEdBQUUsQ0FDeEcsQ0FBQztBQUNKLENBQUM7QUFORCwwQ0FNQztBQUVELFNBQWdCLGdCQUFnQixDQUM5QixJQUFvQixFQUNwQixVQUF3QixFQUN4QixTQUFtQjtJQUVuQixPQUFPLG9CQUFPLENBQUMsbUJBQW1CLENBQUMsbUJBQVcsRUFBRSxTQUFTLEVBQUU7UUFDekQseUJBQXlCLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLFNBQVMsSUFBSSxLQUFLLENBQUM7S0FDckYsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQVJELDRDQVFDO0FBRUQsU0FBZ0IseUJBQXlCLENBQ3ZDLEtBQW9CLEVBQ3BCLE1BQXFCLEVBQ3JCLElBQW9CLEVBQ3BCLFVBQXdCLEVBQ3hCLFNBQW1CO0lBRW5CLE9BQU8sb0JBQU8sQ0FBQyxtQkFBbUIsQ0FDaEMsU0FBUyxFQUNULFNBQVMsRUFDVCxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUUsZUFBZSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxFQUN2RSxVQUFVLEVBQ1YsU0FBUyxFQUNULG9CQUFPLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FDckMsQ0FBQztBQUNKLENBQUM7QUFmRCw4REFlQztBQUVELFNBQWdCLGtCQUFrQixDQUNoQyxNQUFpQyxFQUNqQyxJQUE0QjtJQUE1QixxQkFBQSxFQUFBLE9BQW9CLGdCQUFRO0lBRTVCLE9BQU8sb0JBQU8sQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ2pFLENBQUM7QUFMRCxnREFLQztBQUVELFNBQVMsVUFBVSxDQUFDLEdBQVc7SUFBRSxnQkFBMEI7U0FBMUIsVUFBMEIsRUFBMUIscUJBQTBCLEVBQTFCLElBQTBCO1FBQTFCLCtCQUEwQjs7SUFDekQsT0FBTyxvQkFBTyxDQUFDLHVCQUF1QixDQUNwQyxTQUFTLEVBQ1QsU0FBUyxFQUNULG9CQUFPLENBQUMsa0JBQWtCLENBQ3hCLEtBQUssRUFDTCxTQUFTLEVBQ1Qsb0JBQU8sQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQUMsQ0FBQyxJQUFLLE9BQUEsb0JBQU8sQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLEVBQTNDLENBQTJDLENBQUMsQ0FBQyxDQUMzRixFQUNELG9CQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQ2pDLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBZ0IsY0FBYztJQUM1QixPQUFPLFVBQVUsQ0FBQyxRQUFRLEVBQUUsb0JBQVksQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFGRCx3Q0FFQztBQUVELFNBQWdCLFlBQVksQ0FBQyxnQkFBd0I7SUFDbkQsT0FBTyxVQUFVLENBQ2YsZ0JBQWdCLEVBQ2hCLGVBQU8sRUFDUCwwQkFBa0IsRUFDbEIscUJBQWEsRUFDYixhQUFLLEVBQ0wsa0JBQVUsRUFDVix1QkFBZSxFQUNmLGNBQU0sRUFDTixrQkFBVSxDQUNYLENBQUM7QUFDSixDQUFDO0FBWkQsb0NBWUM7QUFFRDtJQU1FLGdCQUFZLElBQVk7UUFIeEIsV0FBTSxHQUE4QixFQUFFLENBQUM7UUFJckMsSUFBSSxDQUFDLEVBQUUsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCwwQkFBUyxHQUFULFVBQVUsSUFBNEIsRUFBRSxJQUFpQixFQUFFLFFBQWtCLEVBQUUsVUFBb0I7UUFDakcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQy9FLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELDJCQUFVLEdBQVYsVUFBVyxHQUF3RDs7UUFDakUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3RCLENBQUEsS0FBQSxJQUFJLENBQUMsTUFBTSxDQUFBLENBQUMsSUFBSSxXQUFJLEdBQUcsRUFBRTtTQUMxQjthQUFNO1lBQ0wsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdkI7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCx3QkFBTyxHQUFQLFVBQVEsSUFBaUI7UUFDdkIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUM7UUFDaEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsMEJBQVMsR0FBVDtRQUNFLE9BQU8sb0JBQU8sQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFRCw0QkFBVyxHQUFYLFVBQVksVUFBMEIsRUFBRSxTQUFtQjtRQUN6RCxPQUFPLG9CQUFPLENBQUMsdUJBQXVCLENBQ3BDLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNULElBQUksQ0FBQyxFQUFFLEVBQ1AsU0FBUyxFQUNULFNBQVMsRUFDVCxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxHQUFHLEVBQ1Isb0JBQU8sQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUNILGFBQUM7QUFBRCxDQUFDLEFBOUNELElBOENDO0FBOUNZLHdCQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRzLCB7IENvbmNpc2VCb2R5LCBmYWN0b3J5LCBNZXRob2REZWNsYXJhdGlvbiwgVHlwZU5vZGUgfSBmcm9tICd0eXBlc2NyaXB0JztcblxuZXhwb3J0IGNvbnN0IEVycm9yVHlwZSA9IGZhY3RvcnkuY3JlYXRlVHlwZVJlZmVyZW5jZU5vZGUoJ0Vycm9yJyk7XG5leHBvcnQgY29uc3QgVm9pZFR5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKCd2b2lkJywgdW5kZWZpbmVkKTtcbmV4cG9ydCBjb25zdCBTdHJpbmdUeXBlID0gZmFjdG9yeS5jcmVhdGVLZXl3b3JkVHlwZU5vZGUodHMuU3ludGF4S2luZC5TdHJpbmdLZXl3b3JkKTtcbmV4cG9ydCBjb25zdCBOdW1iZXJUeXBlID0gZmFjdG9yeS5jcmVhdGVLZXl3b3JkVHlwZU5vZGUodHMuU3ludGF4S2luZC5OdW1iZXJLZXl3b3JkKTtcbmV4cG9ydCBjb25zdCBCb29sZWFuVHlwZSA9IGZhY3RvcnkuY3JlYXRlS2V5d29yZFR5cGVOb2RlKHRzLlN5bnRheEtpbmQuQm9vbGVhbktleXdvcmQpO1xuZXhwb3J0IGNvbnN0IFVua25vd25UeXBlID0gZmFjdG9yeS5jcmVhdGVLZXl3b3JkVHlwZU5vZGUodHMuU3ludGF4S2luZC5Vbmtub3duS2V5d29yZCk7XG5leHBvcnQgY29uc3QgVW5kZWZpbmVkVHlwZSA9IGZhY3RvcnkuY3JlYXRlS2V5d29yZFR5cGVOb2RlKHRzLlN5bnRheEtpbmQuVW5kZWZpbmVkS2V5d29yZCk7XG5leHBvcnQgY29uc3QgVWludDhBcnJheVR5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKCdVaW50OEFycmF5Jyk7XG5leHBvcnQgY29uc3QgTWF5YmVVaW50OEFycmF5VHlwZSA9IGZhY3RvcnkuY3JlYXRlVW5pb25UeXBlTm9kZShbVWludDhBcnJheVR5cGUsIFVuZGVmaW5lZFR5cGVdKTtcblxuZXhwb3J0IGNvbnN0IFByb21pc2VUeXBlID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdQcm9taXNlJyk7XG5leHBvcnQgY29uc3QgUmVhZGFibGVUeXBlID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdSZWFkYWJsZScpO1xuZXhwb3J0IGNvbnN0IEJ1ZmZlclR5cGUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ0J1ZmZlcicpO1xuZXhwb3J0IGNvbnN0IEFkZHJlc3MgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ0FkZHJlc3MnKTtcbmV4cG9ydCBjb25zdCBFdmVudCA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignRXZlbnQnKTtcbmV4cG9ydCBjb25zdCBDb250cmFjdENvZGVjID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdDb250cmFjdENvZGVjJyk7XG5leHBvcnQgY29uc3QgUmVzdWx0ID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdSZXN1bHQnKTtcbmV4cG9ydCBjb25zdCBDYW5jZWxTdHJlYW1TaWduYWwgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ0NhbmNlbFN0cmVhbVNpZ25hbCcpO1xuZXhwb3J0IGNvbnN0IFJldHVyblR5cGUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ1JldHVyblR5cGUnKTtcbmV4cG9ydCBjb25zdCBsaXN0ZW5lckZvck5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2xpc3RlbmVyRm9yJyk7XG5leHBvcnQgY29uc3QgbGlua2VyTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignbGlua2VyJyk7XG5leHBvcnQgY29uc3Qga2VjY2FrTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignS2VjY2FrJyk7XG5cbmV4cG9ydCBjb25zdCBUVHlwZSA9IGZhY3RvcnkuY3JlYXRlVHlwZVJlZmVyZW5jZU5vZGUoJ1QnKTtcbmV4cG9ydCBjb25zdCBBZGRyZXNzVHlwZSA9IGZhY3RvcnkuY3JlYXRlVHlwZVJlZmVyZW5jZU5vZGUoQWRkcmVzcyk7XG5leHBvcnQgY29uc3QgRXZlbnRUeXBlID0gZmFjdG9yeS5jcmVhdGVUeXBlUmVmZXJlbmNlTm9kZShFdmVudCk7XG5leHBvcnQgY29uc3QgQ29udHJhY3RDb2RlY1R5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKENvbnRyYWN0Q29kZWMpO1xuZXhwb3J0IGNvbnN0IENhbmNlbFN0cmVhbVNpZ25hbFR5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKENhbmNlbFN0cmVhbVNpZ25hbCk7XG5cbmV4cG9ydCBjb25zdCBQcml2YXRlVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuUHJpdmF0ZUtleXdvcmQpO1xuZXhwb3J0IGNvbnN0IFB1YmxpY1Rva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLlB1YmxpY0tleXdvcmQpO1xuZXhwb3J0IGNvbnN0IEV4cG9ydFRva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLkV4cG9ydEtleXdvcmQpO1xuZXhwb3J0IGNvbnN0IEVsbGlwc2lzVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuRG90RG90RG90VG9rZW4pO1xuZXhwb3J0IGNvbnN0IFF1ZXN0aW9uVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuUXVlc3Rpb25Ub2tlbik7XG5leHBvcnQgY29uc3QgUXVlc3Rpb25Eb3RUb2tlbiA9IGZhY3RvcnkuY3JlYXRlVG9rZW4odHMuU3ludGF4S2luZC5RdWVzdGlvbkRvdFRva2VuKTtcbmV4cG9ydCBjb25zdCBDb2xvblRva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLkNvbG9uVG9rZW4pO1xuZXhwb3J0IGNvbnN0IEFzeW5jVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuQXN5bmNLZXl3b3JkKTtcbmV4cG9ydCBjb25zdCBSZWFkb25seVRva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLlJlYWRvbmx5S2V5d29yZCk7XG5leHBvcnQgY29uc3QgRXF1YWxzR3JlYXRlclRoYW5Ub2tlbiA9IGZhY3RvcnkuY3JlYXRlVG9rZW4odHMuU3ludGF4S2luZC5FcXVhbHNHcmVhdGVyVGhhblRva2VuKTtcbmV4cG9ydCBjb25zdCBVbmRlZmluZWQgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ3VuZGVmaW5lZCcpO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ2FsbChmbjogdHMuRXhwcmVzc2lvbiB8IHN0cmluZywgYXJncz86IHRzLkV4cHJlc3Npb25bXSk6IHRzLkNhbGxFeHByZXNzaW9uIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlQ2FsbEV4cHJlc3Npb24oYXNFeHAoZm4pLCB1bmRlZmluZWQsIGFyZ3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWNjZXNzVGhpcyhuYW1lOiB0cy5JZGVudGlmaWVyKTogdHMuUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uKGZhY3RvcnkuY3JlYXRlVGhpcygpLCBuYW1lKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1ZmZlckZyb20oLi4uYXJnczogdHMuRXhwcmVzc2lvbltdKTogdHMuQ2FsbEV4cHJlc3Npb24ge1xuICByZXR1cm4gY3JlYXRlQ2FsbChmYWN0b3J5LmNyZWF0ZVByb3BlcnR5QWNjZXNzRXhwcmVzc2lvbihCdWZmZXJUeXBlLCBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2Zyb20nKSksIGFyZ3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNBcnJheSh0eXBlOiB0cy5UeXBlTm9kZSk6IHRzLkFycmF5VHlwZU5vZGUge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVBcnJheVR5cGVOb2RlKHR5cGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNUdXBsZSh0eXBlOiB0cy5UeXBlTm9kZSwgc2l6ZTogbnVtYmVyKTogdHMuVHVwbGVUeXBlTm9kZSB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZVR1cGxlVHlwZU5vZGUoQXJyYXkoc2l6ZSkuZmlsbCh0eXBlKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc1JlZk5vZGUoaWQ6IHRzLklkZW50aWZpZXIpOiB0cy5UeXBlUmVmZXJlbmNlTm9kZSB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKGlkLCB1bmRlZmluZWQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNDb25zdChleHA6IHRzLkV4cHJlc3Npb24pOiB0cy5Bc0V4cHJlc3Npb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVBc0V4cHJlc3Npb24oZXhwLCBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKCdjb25zdCcpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnN0T2JqZWN0KGVsZW1lbnRzOiB0cy5PYmplY3RMaXRlcmFsRWxlbWVudExpa2VbXSk6IHRzLkFzRXhwcmVzc2lvbiB7XG4gIHJldHVybiBhc0NvbnN0KGZhY3RvcnkuY3JlYXRlT2JqZWN0TGl0ZXJhbEV4cHJlc3Npb24oZWxlbWVudHMpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFycm93RnVuYyhwYXJhbXM6IHRzLlBhcmFtZXRlckRlY2xhcmF0aW9uW10sIGJvZHk6IENvbmNpc2VCb2R5KTogdHMuQXJyb3dGdW5jdGlvbiB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUFycm93RnVuY3Rpb24odW5kZWZpbmVkLCB1bmRlZmluZWQsIHBhcmFtcywgdW5kZWZpbmVkLCBFcXVhbHNHcmVhdGVyVGhhblRva2VuLCBib2R5KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhleFRvQnVmZmVyKGFyZzogdHMuRXhwcmVzc2lvbik6IHRzLkNhbGxFeHByZXNzaW9uIHtcbiAgcmV0dXJuIGNyZWF0ZUNhbGwocHJvcChCdWZmZXJUeXBlLCAnZnJvbScpLCBbYXJnLCBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJ2hleCcpXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoZXhUb0tlY2NhazI1NihzdHI6IHRzLkV4cHJlc3Npb24pOiB0cy5DYWxsRXhwcmVzc2lvbiB7XG4gIC8vIG5ldyBLZWNjYWsoMjU2KS51cGRhdGUoc3RyKS5kaWdlc3QoJ2JpbmFyeScpO1xuICByZXR1cm4gY3JlYXRlQ2FsbChcbiAgICBwcm9wKFxuICAgICAgY3JlYXRlQ2FsbChcbiAgICAgICAgcHJvcChmYWN0b3J5LmNyZWF0ZU5ld0V4cHJlc3Npb24oa2VjY2FrTmFtZSwgdW5kZWZpbmVkLCBbZmFjdG9yeS5jcmVhdGVOdW1lcmljTGl0ZXJhbCgnMjU2JyldKSwgJ3VwZGF0ZScpLFxuICAgICAgICBbc3RyLCBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJ2hleCcpXSxcbiAgICAgICksXG4gICAgICAnZGlnZXN0JyxcbiAgICApLFxuICAgIFtmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJ2JpbmFyeScpXSxcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFycm93RnVuY1QoXG4gIHBhcmFtczogdHMuUGFyYW1ldGVyRGVjbGFyYXRpb25bXSxcbiAgY29uc3RyYWludDogVHlwZU5vZGUgfCB1bmRlZmluZWQsXG4gIHR5cGU6IFR5cGVOb2RlIHwgdW5kZWZpbmVkLFxuICBib2R5OiBDb25jaXNlQm9keSxcbik6IHRzLkFycm93RnVuY3Rpb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVBcnJvd0Z1bmN0aW9uKFxuICAgIHVuZGVmaW5lZCxcbiAgICBbZmFjdG9yeS5jcmVhdGVUeXBlUGFyYW1ldGVyRGVjbGFyYXRpb24oJ1QnLCBjb25zdHJhaW50KV0sXG4gICAgcGFyYW1zLFxuICAgIHR5cGUsXG4gICAgRXF1YWxzR3JlYXRlclRoYW5Ub2tlbixcbiAgICBib2R5LFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvcChcbiAgb2JqOiB0cy5FeHByZXNzaW9uIHwgc3RyaW5nLFxuICBuYW1lOiBzdHJpbmcgfCB0cy5JZGVudGlmaWVyLFxuICBvcHRpb25DaGFpbj86IGJvb2xlYW4sXG4pOiB0cy5Qcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVQcm9wZXJ0eUFjY2Vzc0NoYWluKGFzRXhwKG9iaiksIG9wdGlvbkNoYWluID8gUXVlc3Rpb25Eb3RUb2tlbiA6IHVuZGVmaW5lZCwgbmFtZSk7XG59XG5cbmZ1bmN0aW9uIGFzRXhwKGV4cDogdHMuRXhwcmVzc2lvbiB8IHN0cmluZyk6IHRzLkV4cHJlc3Npb24ge1xuICByZXR1cm4gdHlwZW9mIGV4cCA9PT0gJ3N0cmluZycgPyBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoZXhwKSA6IGV4cDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVBhcmFtZXRlcihcbiAgbmFtZTogc3RyaW5nIHwgdHMuSWRlbnRpZmllcixcbiAgdHlwZU5vZGU/OiB0cy5UeXBlTm9kZSxcbiAgaW5pdGlhbGl6ZXI/OiB0cy5FeHByZXNzaW9uLFxuICBpc09wdGlvbmFsPzogYm9vbGVhbixcbiAgaXNWYXJpYWRpYz86IGJvb2xlYW4sXG4pOiB0cy5QYXJhbWV0ZXJEZWNsYXJhdGlvbiB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZVBhcmFtZXRlckRlY2xhcmF0aW9uKFxuICAgIHVuZGVmaW5lZCxcbiAgICB1bmRlZmluZWQsXG4gICAgaXNWYXJpYWRpYyA/IEVsbGlwc2lzVG9rZW4gOiB1bmRlZmluZWQsXG4gICAgdHlwZW9mIG5hbWUgPT09ICdzdHJpbmcnID8gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKG5hbWUpIDogbmFtZSxcbiAgICBpc09wdGlvbmFsID8gUXVlc3Rpb25Ub2tlbiA6IHVuZGVmaW5lZCxcbiAgICB0eXBlTm9kZSxcbiAgICBpbml0aWFsaXplcixcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY2xhcmVDb25zdGFudChcbiAgbmFtZTogdHMuSWRlbnRpZmllciB8IHN0cmluZyxcbiAgaW5pdGlhbGl6ZXI/OiB0cy5FeHByZXNzaW9uLFxuICBleHRlcm4/OiBib29sZWFuLFxuKTogdHMuVmFyaWFibGVTdGF0ZW1lbnQge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVWYXJpYWJsZVN0YXRlbWVudChcbiAgICBleHRlcm4gPyBbRXhwb3J0VG9rZW5dIDogW10sXG4gICAgZmFjdG9yeS5jcmVhdGVWYXJpYWJsZURlY2xhcmF0aW9uTGlzdChcbiAgICAgIFtmYWN0b3J5LmNyZWF0ZVZhcmlhYmxlRGVjbGFyYXRpb24obmFtZSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIGluaXRpYWxpemVyKV0sXG4gICAgICB0cy5Ob2RlRmxhZ3MuQ29uc3QsXG4gICAgKSxcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRlY2xhcmVMZXQobmFtZTogdHMuSWRlbnRpZmllciwgaW5pdGlhbGl6ZXI6IHRzLkV4cHJlc3Npb24sIGV4dGVybj86IGJvb2xlYW4pOiB0cy5WYXJpYWJsZVN0YXRlbWVudCB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZVZhcmlhYmxlU3RhdGVtZW50KFxuICAgIGV4dGVybiA/IFtFeHBvcnRUb2tlbl0gOiBbXSxcbiAgICBmYWN0b3J5LmNyZWF0ZVZhcmlhYmxlRGVjbGFyYXRpb25MaXN0KFxuICAgICAgW2ZhY3RvcnkuY3JlYXRlVmFyaWFibGVEZWNsYXJhdGlvbihuYW1lLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgaW5pdGlhbGl6ZXIpXSxcbiAgICAgIHRzLk5vZGVGbGFncy5MZXQsXG4gICAgKSxcbiAgKTtcbn1cblxuY29uc3QgcmVzb2x2ZUZuID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdyZXNvbHZlJyk7XG5jb25zdCByZWplY3RGbiA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcigncmVqZWN0Jyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlT2YoLi4ubm9kZXM6IHRzLlR5cGVOb2RlW10pOiB0cy5FeHByZXNzaW9uV2l0aFR5cGVBcmd1bWVudHMge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVFeHByZXNzaW9uV2l0aFR5cGVBcmd1bWVudHMoUHJvbWlzZVR5cGUsIG5vZGVzKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFzc2lnbm1lbnRTdGF0ZW1lbnQobGVmdDogdHMuRXhwcmVzc2lvbiwgcmlnaHQ6IHRzLkV4cHJlc3Npb24pOiB0cy5FeHByZXNzaW9uU3RhdGVtZW50IHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlRXhwcmVzc2lvblN0YXRlbWVudChmYWN0b3J5LmNyZWF0ZUFzc2lnbm1lbnQobGVmdCwgcmlnaHQpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVByb21pc2VCb2R5KGVycm9yOiB0cy5JZGVudGlmaWVyLCBzdGF0ZW1lbnRzOiB0cy5FeHByZXNzaW9uW10pOiB0cy5FeHByZXNzaW9uU3RhdGVtZW50IHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlRXhwcmVzc2lvblN0YXRlbWVudChcbiAgICBmYWN0b3J5LmNyZWF0ZUNvbmRpdGlvbmFsRXhwcmVzc2lvbihcbiAgICAgIGVycm9yLFxuICAgICAgUXVlc3Rpb25Ub2tlbixcbiAgICAgIGNyZWF0ZUNhbGwocmVqZWN0Rm4sIFtlcnJvcl0pLFxuICAgICAgQ29sb25Ub2tlbixcbiAgICAgIGNyZWF0ZUNhbGwocmVzb2x2ZUZuLCBzdGF0ZW1lbnRzID8gc3RhdGVtZW50cyA6IHVuZGVmaW5lZCksXG4gICAgKSxcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlamVjdE9yUmVzb2x2ZShlcnJvcjogdHMuSWRlbnRpZmllciwgc3RhdGVtZW50czogdHMuU3RhdGVtZW50W10sIHN1Y2Nlc3M6IHRzLkV4cHJlc3Npb25bXSkge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVJZlN0YXRlbWVudChcbiAgICBlcnJvcixcbiAgICBmYWN0b3J5LmNyZWF0ZUV4cHJlc3Npb25TdGF0ZW1lbnQoY3JlYXRlQ2FsbChyZWplY3RGbiwgW2Vycm9yXSkpLFxuICAgIGZhY3RvcnkuY3JlYXRlQmxvY2soWy4uLnN0YXRlbWVudHMsIGZhY3RvcnkuY3JlYXRlRXhwcmVzc2lvblN0YXRlbWVudChjcmVhdGVDYWxsKHJlc29sdmVGbiwgc3VjY2VzcykpXSksXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDcmVhdGVOZXdQcm9taXNlKFxuICBib2R5OiB0cy5TdGF0ZW1lbnRbXSxcbiAgcmV0dXJuVHlwZT86IHRzLlR5cGVOb2RlLFxuICBtdWx0aUxpbmU/OiBib29sZWFuLFxuKTogdHMuTmV3RXhwcmVzc2lvbiB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZU5ld0V4cHJlc3Npb24oUHJvbWlzZVR5cGUsIHVuZGVmaW5lZCwgW1xuICAgIENyZWF0ZUNhbGxiYWNrRGVjbGFyYXRpb24ocmVzb2x2ZUZuLCByZWplY3RGbiwgYm9keSwgcmV0dXJuVHlwZSwgbXVsdGlMaW5lIHx8IGZhbHNlKSxcbiAgXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDcmVhdGVDYWxsYmFja0RlY2xhcmF0aW9uKFxuICBmaXJzdDogdHMuSWRlbnRpZmllcixcbiAgc2Vjb25kOiB0cy5JZGVudGlmaWVyLFxuICBib2R5OiB0cy5TdGF0ZW1lbnRbXSxcbiAgcmV0dXJuVHlwZT86IHRzLlR5cGVOb2RlLFxuICBtdWx0aUxpbmU/OiBib29sZWFuLFxuKTogdHMuQXJyb3dGdW5jdGlvbiB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUFycm93RnVuY3Rpb24oXG4gICAgdW5kZWZpbmVkLFxuICAgIHVuZGVmaW5lZCxcbiAgICBbY3JlYXRlUGFyYW1ldGVyKGZpcnN0LCB1bmRlZmluZWQpLCBjcmVhdGVQYXJhbWV0ZXIoc2Vjb25kLCB1bmRlZmluZWQpXSxcbiAgICByZXR1cm5UeXBlLFxuICAgIHVuZGVmaW5lZCxcbiAgICBmYWN0b3J5LmNyZWF0ZUJsb2NrKGJvZHksIG11bHRpTGluZSksXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDYWxsYmFja1R5cGUoXG4gIHBhcmFtczogdHMuUGFyYW1ldGVyRGVjbGFyYXRpb25bXSxcbiAgdHlwZTogdHMuVHlwZU5vZGUgPSBWb2lkVHlwZSxcbik6IHRzLkZ1bmN0aW9uVHlwZU5vZGUge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVGdW5jdGlvblR5cGVOb2RlKHVuZGVmaW5lZCwgcGFyYW1zLCB0eXBlKTtcbn1cblxuZnVuY3Rpb24gaW1wb3J0RnJvbShwa2c6IHN0cmluZywgLi4udGhpbmdzOiB0cy5JZGVudGlmaWVyW10pIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlSW1wb3J0RGVjbGFyYXRpb24oXG4gICAgdW5kZWZpbmVkLFxuICAgIHVuZGVmaW5lZCxcbiAgICBmYWN0b3J5LmNyZWF0ZUltcG9ydENsYXVzZShcbiAgICAgIGZhbHNlLFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgZmFjdG9yeS5jcmVhdGVOYW1lZEltcG9ydHModGhpbmdzLm1hcCgodCkgPT4gZmFjdG9yeS5jcmVhdGVJbXBvcnRTcGVjaWZpZXIodW5kZWZpbmVkLCB0KSkpLFxuICAgICksXG4gICAgZmFjdG9yeS5jcmVhdGVTdHJpbmdMaXRlcmFsKHBrZyksXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpbXBvcnRSZWFkYWJsZSgpOiB0cy5JbXBvcnREZWNsYXJhdGlvbiB7XG4gIHJldHVybiBpbXBvcnRGcm9tKCdzdHJlYW0nLCBSZWFkYWJsZVR5cGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW1wb3J0QnVycm93KGJ1cnJvd0ltcG9ydFBhdGg6IHN0cmluZyk6IHRzLkltcG9ydERlY2xhcmF0aW9uIHtcbiAgcmV0dXJuIGltcG9ydEZyb20oXG4gICAgYnVycm93SW1wb3J0UGF0aCxcbiAgICBBZGRyZXNzLFxuICAgIENhbmNlbFN0cmVhbVNpZ25hbCxcbiAgICBDb250cmFjdENvZGVjLFxuICAgIEV2ZW50LFxuICAgIGxpbmtlck5hbWUsXG4gICAgbGlzdGVuZXJGb3JOYW1lLFxuICAgIFJlc3VsdCxcbiAgICBrZWNjYWtOYW1lLFxuICApO1xufVxuXG5leHBvcnQgY2xhc3MgTWV0aG9kIHtcbiAgcmVhZG9ubHkgaWQ6IHRzLklkZW50aWZpZXI7XG4gIHR5cGU/OiB0cy5UeXBlUmVmZXJlbmNlTm9kZTtcbiAgcGFyYW1zOiB0cy5QYXJhbWV0ZXJEZWNsYXJhdGlvbltdID0gW107XG4gIHJldD86IHRzLlR5cGVOb2RlO1xuXG4gIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuaWQgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIobmFtZSk7XG4gIH1cblxuICBwYXJhbWV0ZXIobmFtZTogc3RyaW5nIHwgdHMuSWRlbnRpZmllciwgdHlwZTogdHMuVHlwZU5vZGUsIG9wdGlvbmFsPzogYm9vbGVhbiwgaXNWYXJpYWRpYz86IGJvb2xlYW4pOiBNZXRob2Qge1xuICAgIHRoaXMucGFyYW1zLnB1c2goY3JlYXRlUGFyYW1ldGVyKG5hbWUsIHR5cGUsIHVuZGVmaW5lZCwgb3B0aW9uYWwsIGlzVmFyaWFkaWMpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHBhcmFtZXRlcnMoYXJnOiB0cy5QYXJhbWV0ZXJEZWNsYXJhdGlvbiB8IHRzLlBhcmFtZXRlckRlY2xhcmF0aW9uW10pOiBNZXRob2Qge1xuICAgIGlmIChBcnJheS5pc0FycmF5KGFyZykpIHtcbiAgICAgIHRoaXMucGFyYW1zLnB1c2goLi4uYXJnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wYXJhbXMucHVzaChhcmcpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHJldHVybnModHlwZTogdHMuVHlwZU5vZGUpOiBNZXRob2Qge1xuICAgIHRoaXMucmV0ID0gdHlwZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNpZ25hdHVyZSgpOiB0cy5NZXRob2RTaWduYXR1cmUge1xuICAgIHJldHVybiBmYWN0b3J5LmNyZWF0ZU1ldGhvZFNpZ25hdHVyZSh1bmRlZmluZWQsIHRoaXMuaWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB0aGlzLnBhcmFtcywgdGhpcy5yZXQpO1xuICB9XG5cbiAgZGVjbGFyYXRpb24oc3RhdGVtZW50czogdHMuU3RhdGVtZW50W10sIG11bHRpTGluZT86IGJvb2xlYW4pOiBNZXRob2REZWNsYXJhdGlvbiB7XG4gICAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlTWV0aG9kRGVjbGFyYXRpb24oXG4gICAgICB1bmRlZmluZWQsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICB1bmRlZmluZWQsXG4gICAgICB0aGlzLmlkLFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgdGhpcy5wYXJhbXMsXG4gICAgICB0aGlzLnJldCxcbiAgICAgIGZhY3RvcnkuY3JlYXRlQmxvY2soc3RhdGVtZW50cywgbXVsdGlMaW5lKSxcbiAgICApO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ludGF4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NvbHRzL2xpYi9zeW50YXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVEQUFtRjtBQUV0RSxRQUFBLFNBQVMsR0FBRyxvQkFBTyxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3JELFFBQUEsUUFBUSxHQUFHLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzlELFFBQUEsVUFBVSxHQUFHLG9CQUFPLENBQUMscUJBQXFCLENBQUMsdUJBQUUsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDeEUsUUFBQSxVQUFVLEdBQUcsb0JBQU8sQ0FBQyxxQkFBcUIsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUN4RSxRQUFBLFdBQVcsR0FBRyxvQkFBTyxDQUFDLHFCQUFxQixDQUFDLHVCQUFFLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzFFLFFBQUEsV0FBVyxHQUFHLG9CQUFPLENBQUMscUJBQXFCLENBQUMsdUJBQUUsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDMUUsUUFBQSxhQUFhLEdBQUcsb0JBQU8sQ0FBQyxxQkFBcUIsQ0FBQyx1QkFBRSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQzlFLFFBQUEsY0FBYyxHQUFHLG9CQUFPLENBQUMsdUJBQXVCLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDL0QsUUFBQSxtQkFBbUIsR0FBRyxvQkFBTyxDQUFDLG1CQUFtQixDQUFDLENBQUMsc0JBQWMsRUFBRSxxQkFBYSxDQUFDLENBQUMsQ0FBQztBQUVuRixRQUFBLFdBQVcsR0FBRyxvQkFBTyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ2xELFFBQUEs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LEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFRCw0QkFBVyxHQUFYLFVBQVksVUFBMEIsRUFBRSxTQUFtQjtRQUN6RCxPQUFPLG9CQUFPLENBQUMsdUJBQXVCLENBQ3BDLFNBQVMsRUFDVCxTQUFTLEVBQ1QsU0FBUyxFQUNULElBQUksQ0FBQyxFQUFFLEVBQ1AsU0FBUyxFQUNULFNBQVMsRUFDVCxJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxHQUFHLEVBQ1Isb0JBQU8sQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUNILGFBQUM7QUFBRCxDQUFDLEFBOUNELElBOENDO0FBOUNZLHdCQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRzLCB7IENvbmNpc2VCb2R5LCBmYWN0b3J5LCBNZXRob2REZWNsYXJhdGlvbiwgVHlwZU5vZGUgfSBmcm9tICd0eXBlc2NyaXB0JztcblxuZXhwb3J0IGNvbnN0IEVycm9yVHlwZSA9IGZhY3RvcnkuY3JlYXRlVHlwZVJlZmVyZW5jZU5vZGUoJ0Vycm9yJyk7XG5leHBvcnQgY29uc3QgVm9pZFR5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKCd2b2lkJywgdW5kZWZpbmVkKTtcbmV4cG9ydCBjb25zdCBTdHJpbmdUeXBlID0gZmFjdG9yeS5jcmVhdGVLZXl3b3JkVHlwZU5vZGUodHMuU3ludGF4S2luZC5TdHJpbmdLZXl3b3JkKTtcbmV4cG9ydCBjb25zdCBOdW1iZXJUeXBlID0gZmFjdG9yeS5jcmVhdGVLZXl3b3JkVHlwZU5vZGUodHMuU3ludGF4S2luZC5OdW1iZXJLZXl3b3JkKTtcbmV4cG9ydCBjb25zdCBCb29sZWFuVHlwZSA9IGZhY3RvcnkuY3JlYXRlS2V5d29yZFR5cGVOb2RlKHRzLlN5bnRheEtpbmQuQm9vbGVhbktleXdvcmQpO1xuZXhwb3J0IGNvbnN0IFVua25vd25UeXBlID0gZmFjdG9yeS5jcmVhdGVLZXl3b3JkVHlwZU5vZGUodHMuU3ludGF4S2luZC5Vbmtub3duS2V5d29yZCk7XG5leHBvcnQgY29uc3QgVW5kZWZpbmVkVHlwZSA9IGZhY3RvcnkuY3JlYXRlS2V5d29yZFR5cGVOb2RlKHRzLlN5bnRheEtpbmQuVW5kZWZpbmVkS2V5d29yZCk7XG5leHBvcnQgY29uc3QgVWludDhBcnJheVR5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKCdVaW50OEFycmF5Jyk7XG5leHBvcnQgY29uc3QgTWF5YmVVaW50OEFycmF5VHlwZSA9IGZhY3RvcnkuY3JlYXRlVW5pb25UeXBlTm9kZShbVWludDhBcnJheVR5cGUsIFVuZGVmaW5lZFR5cGVdKTtcblxuZXhwb3J0IGNvbnN0IFByb21pc2VUeXBlID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdQcm9taXNlJyk7XG5leHBvcnQgY29uc3QgUmVhZGFibGVUeXBlID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdSZWFkYWJsZScpO1xuZXhwb3J0IGNvbnN0IEJ1ZmZlclR5cGUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ0J1ZmZlcicpO1xuZXhwb3J0IGNvbnN0IEFkZHJlc3MgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ0FkZHJlc3MnKTtcbmV4cG9ydCBjb25zdCBFdmVudCA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignRXZlbnQnKTtcbmV4cG9ydCBjb25zdCBDb250cmFjdENvZGVjID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdDb250cmFjdENvZGVjJyk7XG5leHBvcnQgY29uc3QgUmVzdWx0ID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKCdSZXN1bHQnKTtcbmV4cG9ydCBjb25zdCBDYW5jZWxTdHJlYW1TaWduYWwgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ0NhbmNlbFN0cmVhbVNpZ25hbCcpO1xuZXhwb3J0IGNvbnN0IFJldHVyblR5cGUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ1JldHVyblR5cGUnKTtcbmV4cG9ydCBjb25zdCBsaXN0ZW5lckZvck5hbWUgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2xpc3RlbmVyRm9yJyk7XG5leHBvcnQgY29uc3QgbGlua2VyTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignbGlua2VyJyk7XG5leHBvcnQgY29uc3Qga2VjY2FrTmFtZSA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcignS2VjY2FrJyk7XG5cbmV4cG9ydCBjb25zdCBUVHlwZSA9IGZhY3RvcnkuY3JlYXRlVHlwZVJlZmVyZW5jZU5vZGUoJ1QnKTtcbmV4cG9ydCBjb25zdCBBZGRyZXNzVHlwZSA9IGZhY3RvcnkuY3JlYXRlVHlwZVJlZmVyZW5jZU5vZGUoQWRkcmVzcyk7XG5leHBvcnQgY29uc3QgRXZlbnRUeXBlID0gZmFjdG9yeS5jcmVhdGVUeXBlUmVmZXJlbmNlTm9kZShFdmVudCk7XG5leHBvcnQgY29uc3QgQ29udHJhY3RDb2RlY1R5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKENvbnRyYWN0Q29kZWMpO1xuZXhwb3J0IGNvbnN0IENhbmNlbFN0cmVhbVNpZ25hbFR5cGUgPSBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKENhbmNlbFN0cmVhbVNpZ25hbCk7XG5cbmV4cG9ydCBjb25zdCBQcml2YXRlVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuUHJpdmF0ZUtleXdvcmQpO1xuZXhwb3J0IGNvbnN0IFB1YmxpY1Rva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLlB1YmxpY0tleXdvcmQpO1xuZXhwb3J0IGNvbnN0IEV4cG9ydFRva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLkV4cG9ydEtleXdvcmQpO1xuZXhwb3J0IGNvbnN0IEVsbGlwc2lzVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuRG90RG90RG90VG9rZW4pO1xuZXhwb3J0IGNvbnN0IFF1ZXN0aW9uVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuUXVlc3Rpb25Ub2tlbik7XG5leHBvcnQgY29uc3QgUXVlc3Rpb25Eb3RUb2tlbiA9IGZhY3RvcnkuY3JlYXRlVG9rZW4odHMuU3ludGF4S2luZC5RdWVzdGlvbkRvdFRva2VuKTtcbmV4cG9ydCBjb25zdCBDb2xvblRva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLkNvbG9uVG9rZW4pO1xuZXhwb3J0IGNvbnN0IEFzeW5jVG9rZW4gPSBmYWN0b3J5LmNyZWF0ZVRva2VuKHRzLlN5bnRheEtpbmQuQXN5bmNLZXl3b3JkKTtcbmV4cG9ydCBjb25zdCBSZWFkb25seVRva2VuID0gZmFjdG9yeS5jcmVhdGVUb2tlbih0cy5TeW50YXhLaW5kLlJlYWRvbmx5S2V5d29yZCk7XG5leHBvcnQgY29uc3QgRXF1YWxzR3JlYXRlclRoYW5Ub2tlbiA9IGZhY3RvcnkuY3JlYXRlVG9rZW4odHMuU3ludGF4S2luZC5FcXVhbHNHcmVhdGVyVGhhblRva2VuKTtcbmV4cG9ydCBjb25zdCBVbmRlZmluZWQgPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ3VuZGVmaW5lZCcpO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ2FsbChmbjogdHMuRXhwcmVzc2lvbiB8IHN0cmluZywgYXJncz86IHRzLkV4cHJlc3Npb25bXSk6IHRzLkNhbGxFeHByZXNzaW9uIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlQ2FsbEV4cHJlc3Npb24oYXNFeHAoZm4pLCB1bmRlZmluZWQsIGFyZ3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWNjZXNzVGhpcyhuYW1lOiB0cy5JZGVudGlmaWVyKTogdHMuUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlUHJvcGVydHlBY2Nlc3NFeHByZXNzaW9uKGZhY3RvcnkuY3JlYXRlVGhpcygpLCBuYW1lKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1ZmZlckZyb20oLi4uYXJnczogdHMuRXhwcmVzc2lvbltdKTogdHMuQ2FsbEV4cHJlc3Npb24ge1xuICByZXR1cm4gY3JlYXRlQ2FsbChmYWN0b3J5LmNyZWF0ZVByb3BlcnR5QWNjZXNzRXhwcmVzc2lvbihCdWZmZXJUeXBlLCBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ2Zyb20nKSksIGFyZ3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNBcnJheSh0eXBlOiB0cy5UeXBlTm9kZSk6IHRzLkFycmF5VHlwZU5vZGUge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVBcnJheVR5cGVOb2RlKHR5cGUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNUdXBsZSh0eXBlOiB0cy5UeXBlTm9kZSwgc2l6ZTogbnVtYmVyKTogdHMuVHVwbGVUeXBlTm9kZSB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZVR1cGxlVHlwZU5vZGUoQXJyYXkoc2l6ZSkuZmlsbCh0eXBlKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc1JlZk5vZGUoaWQ6IHRzLklkZW50aWZpZXIpOiB0cy5UeXBlUmVmZXJlbmNlTm9kZSB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKGlkLCB1bmRlZmluZWQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNDb25zdChleHA6IHRzLkV4cHJlc3Npb24pOiB0cy5Bc0V4cHJlc3Npb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVBc0V4cHJlc3Npb24oZXhwLCBmYWN0b3J5LmNyZWF0ZVR5cGVSZWZlcmVuY2VOb2RlKCdjb25zdCcpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnN0T2JqZWN0KGVsZW1lbnRzOiB0cy5PYmplY3RMaXRlcmFsRWxlbWVudExpa2VbXSk6IHRzLkFzRXhwcmVzc2lvbiB7XG4gIHJldHVybiBhc0NvbnN0KGZhY3RvcnkuY3JlYXRlT2JqZWN0TGl0ZXJhbEV4cHJlc3Npb24oZWxlbWVudHMpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFycm93RnVuYyhwYXJhbXM6IHRzLlBhcmFtZXRlckRlY2xhcmF0aW9uW10sIGJvZHk6IENvbmNpc2VCb2R5KTogdHMuQXJyb3dGdW5jdGlvbiB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUFycm93RnVuY3Rpb24odW5kZWZpbmVkLCB1bmRlZmluZWQsIHBhcmFtcywgdW5kZWZpbmVkLCBFcXVhbHNHcmVhdGVyVGhhblRva2VuLCBib2R5KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhleFRvQnVmZmVyKGFyZzogdHMuRXhwcmVzc2lvbik6IHRzLkNhbGxFeHByZXNzaW9uIHtcbiAgcmV0dXJuIGNyZWF0ZUNhbGwocHJvcChCdWZmZXJUeXBlLCAnZnJvbScpLCBbYXJnLCBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJ2hleCcpXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoZXhUb0tlY2NhazI1NihzdHI6IHRzLkV4cHJlc3Npb24pOiB0cy5DYWxsRXhwcmVzc2lvbiB7XG4gIC8vIG5ldyBLZWNjYWsoMjU2KS51cGRhdGUoc3RyKS5kaWdlc3QoJ2JpbmFyeScpO1xuICByZXR1cm4gY3JlYXRlQ2FsbChcbiAgICBwcm9wKFxuICAgICAgY3JlYXRlQ2FsbChcbiAgICAgICAgcHJvcChmYWN0b3J5LmNyZWF0ZU5ld0V4cHJlc3Npb24oa2VjY2FrTmFtZSwgdW5kZWZpbmVkLCBbZmFjdG9yeS5jcmVhdGVOdW1lcmljTGl0ZXJhbCgnMjU2JyldKSwgJ3VwZGF0ZScpLFxuICAgICAgICBbc3RyLCBmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJ2hleCcpXSxcbiAgICAgICksXG4gICAgICAnZGlnZXN0JyxcbiAgICApLFxuICAgIFtmYWN0b3J5LmNyZWF0ZVN0cmluZ0xpdGVyYWwoJ2JpbmFyeScpXSxcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFycm93RnVuY1QoXG4gIHBhcmFtczogdHMuUGFyYW1ldGVyRGVjbGFyYXRpb25bXSxcbiAgY29uc3RyYWludDogVHlwZU5vZGUgfCB1bmRlZmluZWQsXG4gIHR5cGU6IFR5cGVOb2RlIHwgdW5kZWZpbmVkLFxuICBib2R5OiBDb25jaXNlQm9keSxcbik6IHRzLkFycm93RnVuY3Rpb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVBcnJvd0Z1bmN0aW9uKFxuICAgIHVuZGVmaW5lZCxcbiAgICBbZmFjdG9yeS5jcmVhdGVUeXBlUGFyYW1ldGVyRGVjbGFyYXRpb24oJ1QnLCBjb25zdHJhaW50KV0sXG4gICAgcGFyYW1zLFxuICAgIHR5cGUsXG4gICAgRXF1YWxzR3JlYXRlclRoYW5Ub2tlbixcbiAgICBib2R5LFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvcChcbiAgb2JqOiB0cy5FeHByZXNzaW9uIHwgc3RyaW5nLFxuICBuYW1lOiBzdHJpbmcgfCB0cy5JZGVudGlmaWVyLFxuICBvcHRpb25DaGFpbj86IGJvb2xlYW4sXG4pOiB0cy5Qcm9wZXJ0eUFjY2Vzc0V4cHJlc3Npb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVQcm9wZXJ0eUFjY2Vzc0NoYWluKGFzRXhwKG9iaiksIG9wdGlvbkNoYWluID8gUXVlc3Rpb25Eb3RUb2tlbiA6IHVuZGVmaW5lZCwgbmFtZSk7XG59XG5cbmZ1bmN0aW9uIGFzRXhwKGV4cDogdHMuRXhwcmVzc2lvbiB8IHN0cmluZyk6IHRzLkV4cHJlc3Npb24ge1xuICByZXR1cm4gdHlwZW9mIGV4cCA9PT0gJ3N0cmluZycgPyBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoZXhwKSA6IGV4cDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVBhcmFtZXRlcihcbiAgbmFtZTogc3RyaW5nIHwgdHMuQmluZGluZ05hbWUsXG4gIHR5cGVOb2RlPzogdHMuVHlwZU5vZGUsXG4gIGluaXRpYWxpemVyPzogdHMuRXhwcmVzc2lvbixcbiAgaXNPcHRpb25hbD86IGJvb2xlYW4sXG4gIGlzVmFyaWFkaWM/OiBib29sZWFuLFxuKTogdHMuUGFyYW1ldGVyRGVjbGFyYXRpb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVQYXJhbWV0ZXJEZWNsYXJhdGlvbihcbiAgICB1bmRlZmluZWQsXG4gICAgdW5kZWZpbmVkLFxuICAgIGlzVmFyaWFkaWMgPyBFbGxpcHNpc1Rva2VuIDogdW5kZWZpbmVkLFxuICAgIG5hbWUsXG4gICAgaXNPcHRpb25hbCA/IFF1ZXN0aW9uVG9rZW4gOiB1bmRlZmluZWQsXG4gICAgdHlwZU5vZGUsXG4gICAgaW5pdGlhbGl6ZXIsXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNsYXJlQ29uc3RhbnQoXG4gIG5hbWU6IHRzLklkZW50aWZpZXIgfCBzdHJpbmcsXG4gIGluaXRpYWxpemVyPzogdHMuRXhwcmVzc2lvbixcbiAgZXh0ZXJuPzogYm9vbGVhbixcbik6IHRzLlZhcmlhYmxlU3RhdGVtZW50IHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlVmFyaWFibGVTdGF0ZW1lbnQoXG4gICAgZXh0ZXJuID8gW0V4cG9ydFRva2VuXSA6IFtdLFxuICAgIGZhY3RvcnkuY3JlYXRlVmFyaWFibGVEZWNsYXJhdGlvbkxpc3QoXG4gICAgICBbZmFjdG9yeS5jcmVhdGVWYXJpYWJsZURlY2xhcmF0aW9uKG5hbWUsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBpbml0aWFsaXplcildLFxuICAgICAgdHMuTm9kZUZsYWdzLkNvbnN0LFxuICAgICksXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWNsYXJlTGV0KG5hbWU6IHRzLklkZW50aWZpZXIsIGluaXRpYWxpemVyOiB0cy5FeHByZXNzaW9uLCBleHRlcm4/OiBib29sZWFuKTogdHMuVmFyaWFibGVTdGF0ZW1lbnQge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVWYXJpYWJsZVN0YXRlbWVudChcbiAgICBleHRlcm4gPyBbRXhwb3J0VG9rZW5dIDogW10sXG4gICAgZmFjdG9yeS5jcmVhdGVWYXJpYWJsZURlY2xhcmF0aW9uTGlzdChcbiAgICAgIFtmYWN0b3J5LmNyZWF0ZVZhcmlhYmxlRGVjbGFyYXRpb24obmFtZSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIGluaXRpYWxpemVyKV0sXG4gICAgICB0cy5Ob2RlRmxhZ3MuTGV0LFxuICAgICksXG4gICk7XG59XG5cbmNvbnN0IHJlc29sdmVGbiA9IGZhY3RvcnkuY3JlYXRlSWRlbnRpZmllcigncmVzb2x2ZScpO1xuY29uc3QgcmVqZWN0Rm4gPSBmYWN0b3J5LmNyZWF0ZUlkZW50aWZpZXIoJ3JlamVjdCcpO1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUHJvbWlzZU9mKC4uLm5vZGVzOiB0cy5UeXBlTm9kZVtdKTogdHMuRXhwcmVzc2lvbldpdGhUeXBlQXJndW1lbnRzIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlRXhwcmVzc2lvbldpdGhUeXBlQXJndW1lbnRzKFByb21pc2VUeXBlLCBub2Rlcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBc3NpZ25tZW50U3RhdGVtZW50KGxlZnQ6IHRzLkV4cHJlc3Npb24sIHJpZ2h0OiB0cy5FeHByZXNzaW9uKTogdHMuRXhwcmVzc2lvblN0YXRlbWVudCB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUV4cHJlc3Npb25TdGF0ZW1lbnQoZmFjdG9yeS5jcmVhdGVBc3NpZ25tZW50KGxlZnQsIHJpZ2h0KSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlQm9keShlcnJvcjogdHMuSWRlbnRpZmllciwgc3RhdGVtZW50czogdHMuRXhwcmVzc2lvbltdKTogdHMuRXhwcmVzc2lvblN0YXRlbWVudCB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUV4cHJlc3Npb25TdGF0ZW1lbnQoXG4gICAgZmFjdG9yeS5jcmVhdGVDb25kaXRpb25hbEV4cHJlc3Npb24oXG4gICAgICBlcnJvcixcbiAgICAgIFF1ZXN0aW9uVG9rZW4sXG4gICAgICBjcmVhdGVDYWxsKHJlamVjdEZuLCBbZXJyb3JdKSxcbiAgICAgIENvbG9uVG9rZW4sXG4gICAgICBjcmVhdGVDYWxsKHJlc29sdmVGbiwgc3RhdGVtZW50cyA/IHN0YXRlbWVudHMgOiB1bmRlZmluZWQpLFxuICAgICksXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWplY3RPclJlc29sdmUoZXJyb3I6IHRzLklkZW50aWZpZXIsIHN0YXRlbWVudHM6IHRzLlN0YXRlbWVudFtdLCBzdWNjZXNzOiB0cy5FeHByZXNzaW9uW10pIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlSWZTdGF0ZW1lbnQoXG4gICAgZXJyb3IsXG4gICAgZmFjdG9yeS5jcmVhdGVFeHByZXNzaW9uU3RhdGVtZW50KGNyZWF0ZUNhbGwocmVqZWN0Rm4sIFtlcnJvcl0pKSxcbiAgICBmYWN0b3J5LmNyZWF0ZUJsb2NrKFsuLi5zdGF0ZW1lbnRzLCBmYWN0b3J5LmNyZWF0ZUV4cHJlc3Npb25TdGF0ZW1lbnQoY3JlYXRlQ2FsbChyZXNvbHZlRm4sIHN1Y2Nlc3MpKV0pLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQ3JlYXRlTmV3UHJvbWlzZShcbiAgYm9keTogdHMuU3RhdGVtZW50W10sXG4gIHJldHVyblR5cGU/OiB0cy5UeXBlTm9kZSxcbiAgbXVsdGlMaW5lPzogYm9vbGVhbixcbik6IHRzLk5ld0V4cHJlc3Npb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVOZXdFeHByZXNzaW9uKFByb21pc2VUeXBlLCB1bmRlZmluZWQsIFtcbiAgICBDcmVhdGVDYWxsYmFja0RlY2xhcmF0aW9uKHJlc29sdmVGbiwgcmVqZWN0Rm4sIGJvZHksIHJldHVyblR5cGUsIG11bHRpTGluZSB8fCBmYWxzZSksXG4gIF0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQ3JlYXRlQ2FsbGJhY2tEZWNsYXJhdGlvbihcbiAgZmlyc3Q6IHRzLklkZW50aWZpZXIsXG4gIHNlY29uZDogdHMuSWRlbnRpZmllcixcbiAgYm9keTogdHMuU3RhdGVtZW50W10sXG4gIHJldHVyblR5cGU/OiB0cy5UeXBlTm9kZSxcbiAgbXVsdGlMaW5lPzogYm9vbGVhbixcbik6IHRzLkFycm93RnVuY3Rpb24ge1xuICByZXR1cm4gZmFjdG9yeS5jcmVhdGVBcnJvd0Z1bmN0aW9uKFxuICAgIHVuZGVmaW5lZCxcbiAgICB1bmRlZmluZWQsXG4gICAgW2NyZWF0ZVBhcmFtZXRlcihmaXJzdCwgdW5kZWZpbmVkKSwgY3JlYXRlUGFyYW1ldGVyKHNlY29uZCwgdW5kZWZpbmVkKV0sXG4gICAgcmV0dXJuVHlwZSxcbiAgICB1bmRlZmluZWQsXG4gICAgZmFjdG9yeS5jcmVhdGVCbG9jayhib2R5LCBtdWx0aUxpbmUpLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ2FsbGJhY2tUeXBlKFxuICBwYXJhbXM6IHRzLlBhcmFtZXRlckRlY2xhcmF0aW9uW10sXG4gIHR5cGU6IHRzLlR5cGVOb2RlID0gVm9pZFR5cGUsXG4pOiB0cy5GdW5jdGlvblR5cGVOb2RlIHtcbiAgcmV0dXJuIGZhY3RvcnkuY3JlYXRlRnVuY3Rpb25UeXBlTm9kZSh1bmRlZmluZWQsIHBhcmFtcywgdHlwZSk7XG59XG5cbmZ1bmN0aW9uIGltcG9ydEZyb20ocGtnOiBzdHJpbmcsIC4uLnRoaW5nczogdHMuSWRlbnRpZmllcltdKSB7XG4gIHJldHVybiBmYWN0b3J5LmNyZWF0ZUltcG9ydERlY2xhcmF0aW9uKFxuICAgIHVuZGVmaW5lZCxcbiAgICB1bmRlZmluZWQsXG4gICAgZmFjdG9yeS5jcmVhdGVJbXBvcnRDbGF1c2UoXG4gICAgICBmYWxzZSxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIGZhY3RvcnkuY3JlYXRlTmFtZWRJbXBvcnRzKHRoaW5ncy5tYXAoKHQpID0+IGZhY3RvcnkuY3JlYXRlSW1wb3J0U3BlY2lmaWVyKHVuZGVmaW5lZCwgdCkpKSxcbiAgICApLFxuICAgIGZhY3RvcnkuY3JlYXRlU3RyaW5nTGl0ZXJhbChwa2cpLFxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW1wb3J0UmVhZGFibGUoKTogdHMuSW1wb3J0RGVjbGFyYXRpb24ge1xuICByZXR1cm4gaW1wb3J0RnJvbSgnc3RyZWFtJywgUmVhZGFibGVUeXBlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGltcG9ydEJ1cnJvdyhidXJyb3dJbXBvcnRQYXRoOiBzdHJpbmcpOiB0cy5JbXBvcnREZWNsYXJhdGlvbiB7XG4gIHJldHVybiBpbXBvcnRGcm9tKFxuICAgIGJ1cnJvd0ltcG9ydFBhdGgsXG4gICAgQWRkcmVzcyxcbiAgICBDYW5jZWxTdHJlYW1TaWduYWwsXG4gICAgQ29udHJhY3RDb2RlYyxcbiAgICBFdmVudCxcbiAgICBsaW5rZXJOYW1lLFxuICAgIGxpc3RlbmVyRm9yTmFtZSxcbiAgICBSZXN1bHQsXG4gICAga2VjY2FrTmFtZSxcbiAgKTtcbn1cblxuZXhwb3J0IGNsYXNzIE1ldGhvZCB7XG4gIHJlYWRvbmx5IGlkOiB0cy5JZGVudGlmaWVyO1xuICB0eXBlPzogdHMuVHlwZVJlZmVyZW5jZU5vZGU7XG4gIHBhcmFtczogdHMuUGFyYW1ldGVyRGVjbGFyYXRpb25bXSA9IFtdO1xuICByZXQ/OiB0cy5UeXBlTm9kZTtcblxuICBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLmlkID0gZmFjdG9yeS5jcmVhdGVJZGVudGlmaWVyKG5hbWUpO1xuICB9XG5cbiAgcGFyYW1ldGVyKG5hbWU6IHN0cmluZyB8IHRzLklkZW50aWZpZXIsIHR5cGU6IHRzLlR5cGVOb2RlLCBvcHRpb25hbD86IGJvb2xlYW4sIGlzVmFyaWFkaWM/OiBib29sZWFuKTogTWV0aG9kIHtcbiAgICB0aGlzLnBhcmFtcy5wdXNoKGNyZWF0ZVBhcmFtZXRlcihuYW1lLCB0eXBlLCB1bmRlZmluZWQsIG9wdGlvbmFsLCBpc1ZhcmlhZGljKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwYXJhbWV0ZXJzKGFyZzogdHMuUGFyYW1ldGVyRGVjbGFyYXRpb24gfCB0cy5QYXJhbWV0ZXJEZWNsYXJhdGlvbltdKTogTWV0aG9kIHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShhcmcpKSB7XG4gICAgICB0aGlzLnBhcmFtcy5wdXNoKC4uLmFyZyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGFyYW1zLnB1c2goYXJnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICByZXR1cm5zKHR5cGU6IHRzLlR5cGVOb2RlKTogTWV0aG9kIHtcbiAgICB0aGlzLnJldCA9IHR5cGU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzaWduYXR1cmUoKTogdHMuTWV0aG9kU2lnbmF0dXJlIHtcbiAgICByZXR1cm4gZmFjdG9yeS5jcmVhdGVNZXRob2RTaWduYXR1cmUodW5kZWZpbmVkLCB0aGlzLmlkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdGhpcy5wYXJhbXMsIHRoaXMucmV0KTtcbiAgfVxuXG4gIGRlY2xhcmF0aW9uKHN0YXRlbWVudHM6IHRzLlN0YXRlbWVudFtdLCBtdWx0aUxpbmU/OiBib29sZWFuKTogTWV0aG9kRGVjbGFyYXRpb24ge1xuICAgIHJldHVybiBmYWN0b3J5LmNyZWF0ZU1ldGhvZERlY2xhcmF0aW9uKFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgdGhpcy5pZCxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIHRoaXMucGFyYW1zLFxuICAgICAgdGhpcy5yZXQsXG4gICAgICBmYWN0b3J5LmNyZWF0ZUJsb2NrKHN0YXRlbWVudHMsIG11bHRpTGluZSksXG4gICAgKTtcbiAgfVxufVxuIl19

@@ -17,7 +17,19 @@ /// <reference types="node" />

const contractName = "Addition";
const abi = "[{\"constant\":true,\"inputs\":[{\"internalType\":\"int256\",\"name\":\"a\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"b\",\"type\":\"int256\"}],\"name\":\"add\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"sum\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"}]";
const bytecode = "608060405234801561001057600080fd5b5060b88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a5f3c23b14602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600081830190509291505056fea265627a7a72315820bf9f1b3176bb0e5383e0dbeabc3258cbe895f39124127f38452c4ce85df9672964736f6c63430005110032";
const deployedBytecode = "6080604052348015600f57600080fd5b506004361060285760003560e01c8063a5f3c23b14602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600081830190509291505056fea265627a7a72315820bf9f1b3176bb0e5383e0dbeabc3258cbe895f39124127f38452c4ce85df9672964736f6c63430005110032";
function deploy(client: Provider, withContractMeta?: boolean): Promise<string>;
function deployContract(client: Provider, withContractMeta?: boolean): Promise<Contract>;
const abi = "[{\"constant\":true,\"inputs\":[{\"internalType\":\"int256\",\"name\":\"a\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"b\",\"type\":\"int256\"}],\"name\":\"add\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"sum\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"int256\",\"name\":\"a\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"b\",\"type\":\"int256\"}],\"name\":\"sub\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"}]";
const bytecode = "608060405234801561001057600080fd5b506101b2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a5f3c23b1461003b578063adefc37b14610087575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100d3565b6040518082815260200191505060405180910390f35b6100bd6004803603604081101561009d57600080fd5b8101908080359060200190929190803590602001909291905050506100e0565b6040518082815260200191505060405180910390f35b6000818301905092915050565b60006101758373__$c58c94ed6aafc60c33b5e1db056449bb85$__6325b832d9856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561013557600080fd5b505af4158015610149573d6000803e3d6000fd5b505050506040513d602081101561015f57600080fd5b81019080805190602001909291905050506100d3565b90509291505056fea265627a7a723158200e39adfefd6f39f3fc67f179a9482aaffb5acf36277d704070d5a0e5f22916c064736f6c63430005110032";
const deployedBytecode = "608060405234801561001057600080fd5b50600436106100365760003560e01c8063a5f3c23b1461003b578063adefc37b14610087575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100d3565b6040518082815260200191505060405180910390f35b6100bd6004803603604081101561009d57600080fd5b8101908080359060200190929190803590602001909291905050506100e0565b6040518082815260200191505060405180910390f35b6000818301905092915050565b60006101758373__$c58c94ed6aafc60c33b5e1db056449bb85$__6325b832d9856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561013557600080fd5b505af4158015610149573d6000803e3d6000fd5b505050506040513d602081101561015f57600080fd5b81019080805190602001909291905050506100d3565b90509291505056fea265627a7a723158200e39adfefd6f39f3fc67f179a9482aaffb5acf36277d704070d5a0e5f22916c064736f6c63430005110032";
function deploy({ client, withContractMeta, libraries: { NegationLib }, }: {
client: Provider;
withContractMeta?: boolean;
libraries: {
NegationLib: string;
};
}): Promise<string>;
function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
libraries: {
NegationLib: string;
};
}): Promise<Contract>;
type Contract = ReturnType<typeof contract>;

@@ -31,2 +43,3 @@ const contract: (client: Provider, address: string) => {

}>;
readonly sub: (a: number, b: number, call?: typeof defaultCall) => Promise<[number]>;
};

@@ -36,2 +49,3 @@ };

add: (a: number, b: number) => Buffer;
sub: (a: number, b: number) => Buffer;
};

@@ -42,4 +56,5 @@ const decode: (client: Provider, data: Uint8Array | undefined, topics?: Uint8Array[]) => {

};
sub: () => [number];
};
}
export {};

@@ -59,16 +59,22 @@ "use strict";

Addition.contractName = 'Addition';
Addition.abi = '[{"constant":true,"inputs":[{"internalType":"int256","name":"a","type":"int256"},{"internalType":"int256","name":"b","type":"int256"}],"name":"add","outputs":[{"internalType":"int256","name":"sum","type":"int256"}],"payable":false,"stateMutability":"pure","type":"function"}]';
Addition.bytecode = '608060405234801561001057600080fd5b5060b88061001f6000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063a5f3c23b14602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600081830190509291505056fea265627a7a72315820bf9f1b3176bb0e5383e0dbeabc3258cbe895f39124127f38452c4ce85df9672964736f6c63430005110032';
Addition.deployedBytecode = '6080604052348015600f57600080fd5b506004361060285760003560e01c8063a5f3c23b14602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600081830190509291505056fea265627a7a72315820bf9f1b3176bb0e5383e0dbeabc3258cbe895f39124127f38452c4ce85df9672964736f6c63430005110032';
function deploy(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
Addition.abi = '[{"constant":true,"inputs":[{"internalType":"int256","name":"a","type":"int256"},{"internalType":"int256","name":"b","type":"int256"}],"name":"add","outputs":[{"internalType":"int256","name":"sum","type":"int256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"internalType":"int256","name":"a","type":"int256"},{"internalType":"int256","name":"b","type":"int256"}],"name":"sub","outputs":[{"internalType":"int256","name":"","type":"int256"}],"payable":false,"stateMutability":"pure","type":"function"}]';
Addition.bytecode = '608060405234801561001057600080fd5b506101b2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a5f3c23b1461003b578063adefc37b14610087575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100d3565b6040518082815260200191505060405180910390f35b6100bd6004803603604081101561009d57600080fd5b8101908080359060200190929190803590602001909291905050506100e0565b6040518082815260200191505060405180910390f35b6000818301905092915050565b60006101758373__$c58c94ed6aafc60c33b5e1db056449bb85$__6325b832d9856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561013557600080fd5b505af4158015610149573d6000803e3d6000fd5b505050506040513d602081101561015f57600080fd5b81019080805190602001909291905050506100d3565b90509291505056fea265627a7a723158200e39adfefd6f39f3fc67f179a9482aaffb5acf36277d704070d5a0e5f22916c064736f6c63430005110032';
Addition.deployedBytecode = '608060405234801561001057600080fd5b50600436106100365760003560e01c8063a5f3c23b1461003b578063adefc37b14610087575b600080fd5b6100716004803603604081101561005157600080fd5b8101908080359060200190929190803590602001909291905050506100d3565b6040518082815260200191505060405180910390f35b6100bd6004803603604081101561009d57600080fd5b8101908080359060200190929190803590602001909291905050506100e0565b6040518082815260200191505060405180910390f35b6000818301905092915050565b60006101758373__$c58c94ed6aafc60c33b5e1db056449bb85$__6325b832d9856040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b15801561013557600080fd5b505af4158015610149573d6000803e3d6000fd5b505050506040513d602081101561015f57600080fd5b81019080805190602001909291905050506100d3565b90509291505056fea265627a7a723158200e39adfefd6f39f3fc67f179a9482aaffb5acf36277d704070d5a0e5f22916c064736f6c63430005110032';
function deploy(_a) {
var client = _a.client, withContractMeta = _a.withContractMeta, NegationLib = _a.libraries.NegationLib;
var codec = client.contractCodec(Addition.abi);
var data = Buffer.concat([Buffer.from(Addition.bytecode, 'hex'), codec.encodeDeploy()]);
var links = [{ name: '$c58c94ed6aafc60c33b5e1db056449bb85$', address: NegationLib }];
var linkedBytecode = index_1.linker(Addition.bytecode, links);
var data = Buffer.concat([Buffer.from(linkedBytecode, 'hex'), codec.encodeDeploy()]);
return client.deploy(data, withContractMeta
? [{ abi: Addition.abi, codeHash: new index_1.Keccak(256).update(Addition.deployedBytecode, 'hex').digest('binary') }]
? [
{
abi: Addition.abi,
codeHash: new index_1.Keccak(256).update(index_1.linker(Addition.deployedBytecode, links), 'hex').digest('binary')
},
]
: undefined);
}
Addition.deploy = deploy;
function deployContract(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps) {
return __awaiter(this, void 0, void 0, function () {

@@ -78,6 +84,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps)];
case 1:
address = _a.sent();
return [2 /*return*/, Addition.contract(client, address)];
return [2 /*return*/, Addition.contract(deps.client, address)];
}

@@ -99,2 +105,9 @@ });

});
},
sub: function (a, b, call) {
if (call === void 0) { call = defaultCall; }
var data = Addition.encode(client).sub(a, b);
return call(client, address, data, true, function (data) {
return Addition.decode(client, data).sub();
});
}

@@ -109,2 +122,5 @@ }

return codec.encodeFunctionData('A5F3C23B', a, b);
},
sub: function (a, b) {
return codec.encodeFunctionData('ADEFC37B', a, b);
}

@@ -120,2 +136,5 @@ };

return { sum: sum };
},
sub: function () {
return codec.decodeFunctionResult('ADEFC37B', data);
}

@@ -125,2 +144,2 @@ };

})(Addition = exports.Addition || (exports.Addition = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWRkaXRpb24uYWJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NvbHRzL3NvbC9BZGRpdGlvbi5hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXVDO0FBQ3ZDLHFDQUF3RjtBQXFCeEYsU0FBc0IsV0FBVyxDQUMvQixNQUFnQixFQUNoQixJQUFZLEVBQ1osSUFBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQXdEOzs7Ozt3QkFFckMscUJBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFBOztvQkFBakYsVUFBVSxHQUFHLFNBQW9FO29CQUN2RixzQkFBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUM7Ozs7Q0FDN0I7QUFURCxrQ0FTQztBQUNELElBQWlCLFFBQVEsQ0ErRHhCO0FBL0RELFdBQWlCLFFBQVE7SUFDVixxQkFBWSxHQUFHLFVBQVUsQ0FBQztJQUMxQixZQUFHLEdBQ2QscVJBQXFSLENBQUM7SUFDM1EsaUJBQVEsR0FDbkIsZ2JBQWdiLENBQUM7SUFDdGEseUJBQWdCLEdBQzNCLGtYQUFrWCxDQUFDO0lBQ3JYLFNBQWdCLE1BQU0sQ0FBQyxNQUFnQixFQUFFLGdCQUF3QjtRQUF4QixpQ0FBQSxFQUFBLHdCQUF3QjtRQUMvRCxJQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQUEsR0FBRyxDQUFDLENBQUM7UUFDeEMsSUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBQSxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNqRixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLElBQUksRUFDSixnQkFBZ0I7WUFDZCxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLGNBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQzlHLENBQUMsQ0FBQyxTQUFTLENBQ2QsQ0FBQztJQUNKLENBQUM7SUFUZSxlQUFNLFNBU3JCLENBQUE7SUFDRCxTQUFzQixjQUFjLENBQUMsTUFBZ0IsRUFBRSxnQkFBd0I7UUFBeEIsaUNBQUEsRUFBQSx3QkFBd0I7Ozs7OzRCQUM3RCxxQkFBTSxNQUFNLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDLEVBQUE7O3dCQUFoRCxPQUFPLEdBQUcsU0FBc0M7d0JBQ3RELHNCQUFPLFNBQUEsUUFBUSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBQzs7OztLQUNsQztJQUhxQix1QkFBYyxpQkFHbkMsQ0FBQTtJQUVZLGlCQUFRLEdBQUcsVUFBQyxNQUFnQixFQUFFLE9BQWU7UUFDeEQsT0FBQSxDQUFDO1lBQ0MsSUFBSSxFQUFFLFVBQVU7WUFDaEIsT0FBTyxTQUFBO1lBQ1AsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBSCxVQUNFLENBQVMsRUFDVCxDQUFTLEVBQ1QsSUFBa0I7b0JBQWxCLHFCQUFBLEVBQUEsa0JBQWtCO29CQUlsQixJQUFNLElBQUksR0FBRyxTQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUN0QyxPQUFPLElBQUksQ0FFUixNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBQyxJQUE0Qjt3QkFDM0QsT0FBTyxTQUFBLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQ3BDLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUM7YUFDTztTQUNELENBQUE7SUFuQlgsQ0FtQlcsQ0FBQztJQUNELGVBQU0sR0FBRyxVQUFDLE1BQWdCO1FBQ3JDLElBQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxPQUFPO1lBQ0wsR0FBRyxFQUFFLFVBQUMsQ0FBUyxFQUFFLENBQVM7Z0JBQ3hCLE9BQU8sS0FBSyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDcEQsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDLENBQUM7SUFDVyxlQUFNLEdBQUcsVUFBQyxNQUFnQixFQUFFLElBQTRCLEVBQUUsTUFBeUI7UUFBekIsdUJBQUEsRUFBQSxXQUF5QjtRQUM5RixJQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQUEsR0FBRyxDQUFDLENBQUM7UUFDeEMsT0FBTztZQUNMLEdBQUcsRUFBRTtnQkFHSSxJQUFBLEdBQUcsR0FBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxHQUFoRCxDQUFpRDtnQkFDM0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztZQUN0QixDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsRUEvRGdCLFFBQVEsR0FBUixnQkFBUSxLQUFSLGdCQUFRLFFBK0R4QiIsInNvdXJjZXNDb250ZW50IjpbIi8vQ29kZSBnZW5lcmF0ZWQgYnkgc29sdHMuIERPIE5PVCBFRElULlxuaW1wb3J0IHsgQWRkcmVzcywgQ2FuY2VsU3RyZWFtU2lnbmFsLCBDb250cmFjdENvZGVjLCBFdmVudCwgS2VjY2FrIH0gZnJvbSAnLi4vLi4vaW5kZXgnO1xuaW50ZXJmYWNlIFByb3ZpZGVyIHtcbiAgZGVwbG95KFxuICAgIGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgY29udHJhY3RNZXRhPzoge1xuICAgICAgYWJpOiBzdHJpbmc7XG4gICAgICBjb2RlSGFzaDogVWludDhBcnJheTtcbiAgICB9W10sXG4gICk6IFByb21pc2U8QWRkcmVzcz47XG4gIGNhbGwoZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgY2FsbFNpbShkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBsaXN0ZW4oXG4gICAgc2lnbmF0dXJlczogc3RyaW5nW10sXG4gICAgYWRkcmVzczogc3RyaW5nLFxuICAgIGNhbGxiYWNrOiAoZXJyPzogRXJyb3IsIGV2ZW50PzogRXZlbnQpID0+IENhbmNlbFN0cmVhbVNpZ25hbCB8IHZvaWQsXG4gICAgc3RhcnQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgICBlbmQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgKTogdW5rbm93bjtcbiAgY29udHJhY3RDb2RlYyhjb250cmFjdEFCSTogc3RyaW5nKTogQ29udHJhY3RDb2RlYztcbn1cbmV4cG9ydCB0eXBlIENhbGxlciA9IHR5cGVvZiBkZWZhdWx0Q2FsbDtcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWZhdWx0Q2FsbDxPdXRwdXQ+KFxuICBjbGllbnQ6IFByb3ZpZGVyLFxuICBhZGRyOiBzdHJpbmcsXG4gIGRhdGE6IFVpbnQ4QXJyYXksXG4gIGlzU2ltOiBib29sZWFuLFxuICBjYWxsYmFjazogKHJldHVybkRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IE91dHB1dCxcbik6IFByb21pc2U8T3V0cHV0PiB7XG4gIGNvbnN0IHJldHVybkRhdGEgPSBhd2FpdCAoaXNTaW0gPyBjbGllbnQuY2FsbFNpbShkYXRhLCBhZGRyKSA6IGNsaWVudC5jYWxsKGRhdGEsIGFkZHIpKTtcbiAgcmV0dXJuIGNhbGxiYWNrKHJldHVybkRhdGEpO1xufVxuZXhwb3J0IG5hbWVzcGFjZSBBZGRpdGlvbiB7XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdE5hbWUgPSAnQWRkaXRpb24nO1xuICBleHBvcnQgY29uc3QgYWJpID1cbiAgICAnW3tcImNvbnN0YW50XCI6dHJ1ZSxcImlucHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiYVwiLFwidHlwZVwiOlwiaW50MjU2XCJ9LHtcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJiXCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwibmFtZVwiOlwiYWRkXCIsXCJvdXRwdXRzXCI6W3tcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJzdW1cIixcInR5cGVcIjpcImludDI1NlwifV0sXCJwYXlhYmxlXCI6ZmFsc2UsXCJzdGF0ZU11dGFiaWxpdHlcIjpcInB1cmVcIixcInR5cGVcIjpcImZ1bmN0aW9uXCJ9XSc7XG4gIGV4cG9ydCBjb25zdCBieXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwYjg4MDYxMDAxZjYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYwMGY1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjAyODU3NjAwMDM1NjBlMDFjODA2M2E1ZjNjMjNiMTQ2MDJkNTc1YjYwMDA4MGZkNWI2MDYwNjAwNDgwMzYwMzYwNDA4MTEwMTU2MDQxNTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDkyOTE5MDgwMzU5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjA3NjU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MTgzMDE5MDUwOTI5MTUwNTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwYmY5ZjFiMzE3NmJiMGU1MzgzZTBkYmVhYmMzMjU4Y2JlODk1ZjM5MTI0MTI3ZjM4NDUyYzRjZTg1ZGY5NjcyOTY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MDBmNTc2MDAwODBmZDViNTA2MDA0MzYxMDYwMjg1NzYwMDAzNTYwZTAxYzgwNjNhNWYzYzIzYjE0NjAyZDU3NWI2MDAwODBmZDViNjA2MDYwMDQ4MDM2MDM2MDQwODExMDE1NjA0MTU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA5MjkxOTA4MDM1OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYwNzY1NjViNjA0MDUxODA4MjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDAwODE4MzAxOTA1MDkyOTE1MDUwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMGJmOWYxYjMxNzZiYjBlNTM4M2UwZGJlYWJjMzI1OGNiZTg5NWYzOTEyNDEyN2YzODQ1MmM0Y2U4NWRmOTY3Mjk2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGZ1bmN0aW9uIGRlcGxveShjbGllbnQ6IFByb3ZpZGVyLCB3aXRoQ29udHJhY3RNZXRhID0gZmFsc2UpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICBjb25zdCBkYXRhID0gQnVmZmVyLmNvbmNhdChbQnVmZmVyLmZyb20oYnl0ZWNvZGUsICdoZXgnKSwgY29kZWMuZW5jb2RlRGVwbG95KCldKTtcbiAgICByZXR1cm4gY2xpZW50LmRlcGxveShcbiAgICAgIGRhdGEsXG4gICAgICB3aXRoQ29udHJhY3RNZXRhXG4gICAgICAgID8gW3sgYWJpOiBBZGRpdGlvbi5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKEFkZGl0aW9uLmRlcGxveWVkQnl0ZWNvZGUsICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpIH1dXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICk7XG4gIH1cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveUNvbnRyYWN0KGNsaWVudDogUHJvdmlkZXIsIHdpdGhDb250cmFjdE1ldGEgPSBmYWxzZSk6IFByb21pc2U8Q29udHJhY3Q+IHtcbiAgICBjb25zdCBhZGRyZXNzID0gYXdhaXQgZGVwbG95KGNsaWVudCwgd2l0aENvbnRyYWN0TWV0YSk7XG4gICAgcmV0dXJuIGNvbnRyYWN0KGNsaWVudCwgYWRkcmVzcyk7XG4gIH1cbiAgZXhwb3J0IHR5cGUgQ29udHJhY3QgPSBSZXR1cm5UeXBlPHR5cGVvZiBjb250cmFjdD47XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdCA9IChjbGllbnQ6IFByb3ZpZGVyLCBhZGRyZXNzOiBzdHJpbmcpID0+XG4gICAgKHtcbiAgICAgIG5hbWU6ICdBZGRpdGlvbicsXG4gICAgICBhZGRyZXNzLFxuICAgICAgZnVuY3Rpb25zOiB7XG4gICAgICAgIGFkZChcbiAgICAgICAgICBhOiBudW1iZXIsXG4gICAgICAgICAgYjogbnVtYmVyLFxuICAgICAgICAgIGNhbGwgPSBkZWZhdWx0Q2FsbCxcbiAgICAgICAgKTogUHJvbWlzZTx7XG4gICAgICAgICAgc3VtOiBudW1iZXI7XG4gICAgICAgIH0+IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gZW5jb2RlKGNsaWVudCkuYWRkKGEsIGIpO1xuICAgICAgICAgIHJldHVybiBjYWxsPHtcbiAgICAgICAgICAgIHN1bTogbnVtYmVyO1xuICAgICAgICAgIH0+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgdHJ1ZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5hZGQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgfSBhcyBjb25zdCk7XG4gIGV4cG9ydCBjb25zdCBlbmNvZGUgPSAoY2xpZW50OiBQcm92aWRlcikgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgYWRkOiAoYTogbnVtYmVyLCBiOiBudW1iZXIpID0+IHtcbiAgICAgICAgcmV0dXJuIGNvZGVjLmVuY29kZUZ1bmN0aW9uRGF0YSgnQTVGM0MyM0InLCBhLCBiKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbiAgZXhwb3J0IGNvbnN0IGRlY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyLCBkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCB0b3BpY3M6IFVpbnQ4QXJyYXlbXSA9IFtdKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBhZGQ6ICgpOiB7XG4gICAgICAgIHN1bTogbnVtYmVyO1xuICAgICAgfSA9PiB7XG4gICAgICAgIGNvbnN0IFtzdW1dID0gY29kZWMuZGVjb2RlRnVuY3Rpb25SZXN1bHQoJ0E1RjNDMjNCJywgZGF0YSk7XG4gICAgICAgIHJldHVybiB7IHN1bTogc3VtIH07XG4gICAgICB9LFxuICAgIH07XG4gIH07XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWRkaXRpb24uYWJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NvbHRzL3NvbC9BZGRpdGlvbi5hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXVDO0FBQ3ZDLHFDQUFnRztBQXFCaEcsU0FBc0IsV0FBVyxDQUMvQixNQUFnQixFQUNoQixJQUFZLEVBQ1osSUFBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQXdEOzs7Ozt3QkFFckMscUJBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFBOztvQkFBakYsVUFBVSxHQUFHLFNBQW9FO29CQUN2RixzQkFBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUM7Ozs7Q0FDN0I7QUFURCxrQ0FTQztBQUNELElBQWlCLFFBQVEsQ0FrR3hCO0FBbEdELFdBQWlCLFFBQVE7SUFDVixxQkFBWSxHQUFHLFVBQVUsQ0FBQztJQUMxQixZQUFHLEdBQ2Qsb2lCQUFvaUIsQ0FBQztJQUMxaEIsaUJBQVEsR0FDbkIsczZCQUFzNkIsQ0FBQztJQUM1NUIseUJBQWdCLEdBQzNCLHMyQkFBczJCLENBQUM7SUFDejJCLFNBQWdCLE1BQU0sQ0FBQyxFQVV0QjtZQVRDLE1BQU0sWUFBQSxFQUNOLGdCQUFnQixzQkFBQSxFQUNILFdBQVcsMkJBQUE7UUFReEIsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sS0FBSyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsc0NBQXNDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkYsSUFBTSxjQUFjLEdB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O1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUNXLGVBQU0sR0FBRyxVQUFDLE1BQWdCLEVBQUUsSUFBNEIsRUFBRSxNQUF5QjtRQUF6Qix1QkFBQSxFQUFBLFdBQXlCO1FBQzlGLElBQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxPQUFPO1lBQ0wsR0FBRyxFQUFFO2dCQUdJLElBQUEsR0FBRyxHQUFJLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQWhELENBQWlEO2dCQUMzRCxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1lBQ3RCLENBQUM7WUFDRCxHQUFHLEVBQUU7Z0JBQ0gsT0FBTyxLQUFLLENBQUMsb0JBQW9CLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3RELENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxFQWxHZ0IsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFrR3hCIiwic291cmNlc0NvbnRlbnQiOlsiLy9Db2RlIGdlbmVyYXRlZCBieSBzb2x0cy4gRE8gTk9UIEVESVQuXG5pbXBvcnQgeyBBZGRyZXNzLCBDYW5jZWxTdHJlYW1TaWduYWwsIENvbnRyYWN0Q29kZWMsIEV2ZW50LCBLZWNjYWssIGxpbmtlciB9IGZyb20gJy4uLy4uL2luZGV4JztcbmludGVyZmFjZSBQcm92aWRlciB7XG4gIGRlcGxveShcbiAgICBkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGNvbnRyYWN0TWV0YT86IHtcbiAgICAgIGFiaTogc3RyaW5nO1xuICAgICAgY29kZUhhc2g6IFVpbnQ4QXJyYXk7XG4gICAgfVtdLFxuICApOiBQcm9taXNlPEFkZHJlc3M+O1xuICBjYWxsKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGNhbGxTaW0oZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgbGlzdGVuKFxuICAgIHNpZ25hdHVyZXM6IHN0cmluZ1tdLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBjYWxsYmFjazogKGVycj86IEVycm9yLCBldmVudD86IEV2ZW50KSA9PiBDYW5jZWxTdHJlYW1TaWduYWwgfCB2b2lkLFxuICAgIHN0YXJ0PzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgZW5kPzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICk6IHVua25vd247XG4gIGNvbnRyYWN0Q29kZWMoY29udHJhY3RBQkk6IHN0cmluZyk6IENvbnRyYWN0Q29kZWM7XG59XG5leHBvcnQgdHlwZSBDYWxsZXIgPSB0eXBlb2YgZGVmYXVsdENhbGw7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVmYXVsdENhbGw8T3V0cHV0PihcbiAgY2xpZW50OiBQcm92aWRlcixcbiAgYWRkcjogc3RyaW5nLFxuICBkYXRhOiBVaW50OEFycmF5LFxuICBpc1NpbTogYm9vbGVhbixcbiAgY2FsbGJhY2s6IChyZXR1cm5EYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiBPdXRwdXQsXG4pOiBQcm9taXNlPE91dHB1dD4ge1xuICBjb25zdCByZXR1cm5EYXRhID0gYXdhaXQgKGlzU2ltID8gY2xpZW50LmNhbGxTaW0oZGF0YSwgYWRkcikgOiBjbGllbnQuY2FsbChkYXRhLCBhZGRyKSk7XG4gIHJldHVybiBjYWxsYmFjayhyZXR1cm5EYXRhKTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgQWRkaXRpb24ge1xuICBleHBvcnQgY29uc3QgY29udHJhY3ROYW1lID0gJ0FkZGl0aW9uJztcbiAgZXhwb3J0IGNvbnN0IGFiaSA9XG4gICAgJ1t7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcImFcIixcInR5cGVcIjpcImludDI1NlwifSx7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiYlwiLFwidHlwZVwiOlwiaW50MjU2XCJ9XSxcIm5hbWVcIjpcImFkZFwiLFwib3V0cHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwic3VtXCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJwdXJlXCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifSx7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcImFcIixcInR5cGVcIjpcImludDI1NlwifSx7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiYlwiLFwidHlwZVwiOlwiaW50MjU2XCJ9XSxcIm5hbWVcIjpcInN1YlwiLFwib3V0cHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiXCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJwdXJlXCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifV0nO1xuICBleHBvcnQgY29uc3QgYnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MTAxYjI4MDYxMDAyMDYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMzY1NzYwMDAzNTYwZTAxYzgwNjNhNWYzYzIzYjE0NjEwMDNiNTc4MDYzYWRlZmMzN2IxNDYxMDA4NzU3NWI2MDAwODBmZDViNjEwMDcxNjAwNDgwMzYwMzYwNDA4MTEwMTU2MTAwNTE1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwOTI5MTkwODAzNTkwNjAyMDAxOTA5MjkxOTA1MDUwNTA2MTAwZDM1NjViNjA0MDUxODA4MjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MTAwYmQ2MDA0ODAzNjAzNjA0MDgxMTAxNTYxMDA5ZDU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA5MjkxOTA4MDM1OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYxMDBlMDU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MTgzMDE5MDUwOTI5MTUwNTA1NjViNjAwMDYxMDE3NTgzNzNfXyRjNThjOTRlZDZhYWZjNjBjMzNiNWUxZGIwNTY0NDliYjg1JF9fNjMyNWI4MzJkOTg1NjA0MDUxODI2M2ZmZmZmZmZmMTY2MGUwMWI4MTUyNjAwNDAxODA4MjgxNTI2MDIwMDE5MTUwNTA2MDIwNjA0MDUxODA4MzAzODE4NjgwM2IxNTgwMTU2MTAxMzU1NzYwMDA4MGZkNWI1MDVhZjQxNTgwMTU2MTAxNDk1NzNkNjAwMDgwM2UzZDYwMDBmZDViNTA1MDUwNTA2MDQwNTEzZDYwMjA4MTEwMTU2MTAxNWY1NzYwMDA4MGZkNWI4MTAxOTA4MDgwNTE5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjEwMGQzNTY1YjkwNTA5MjkxNTA1MDU2ZmVhMjY1NjI3YTdhNzIzMTU4MjAwZTM5YWRmZWZkNmYzOWYzZmM2N2YxNzlhOTQ4MmFhZmZiNWFjZjM2Mjc3ZDcwNDA3MGQ1YTBlNWYyMjkxNmMwNjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBjb25zdCBkZXBsb3llZEJ5dGVjb2RlID1cbiAgICAnNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMzY1NzYwMDAzNTYwZTAxYzgwNjNhNWYzYzIzYjE0NjEwMDNiNTc4MDYzYWRlZmMzN2IxNDYxMDA4NzU3NWI2MDAwODBmZDViNjEwMDcxNjAwNDgwMzYwMzYwNDA4MTEwMTU2MTAwNTE1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwOTI5MTkwODAzNTkwNjAyMDAxOTA5MjkxOTA1MDUwNTA2MTAwZDM1NjViNjA0MDUxODA4MjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MTAwYmQ2MDA0ODAzNjAzNjA0MDgxMTAxNTYxMDA5ZDU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA5MjkxOTA4MDM1OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYxMDBlMDU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MTgzMDE5MDUwOTI5MTUwNTA1NjViNjAwMDYxMDE3NTgzNzNfXyRjNThjOTRlZDZhYWZjNjBjMzNiNWUxZGIwNTY0NDliYjg1JF9fNjMyNWI4MzJkOTg1NjA0MDUxODI2M2ZmZmZmZmZmMTY2MGUwMWI4MTUyNjAwNDAxODA4MjgxNTI2MDIwMDE5MTUwNTA2MDIwNjA0MDUxODA4MzAzODE4NjgwM2IxNTgwMTU2MTAxMzU1NzYwMDA4MGZkNWI1MDVhZjQxNTgwMTU2MTAxNDk1NzNkNjAwMDgwM2UzZDYwMDBmZDViNTA1MDUwNTA2MDQwNTEzZDYwMjA4MTEwMTU2MTAxNWY1NzYwMDA4MGZkNWI4MTAxOTA4MDgwNTE5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjEwMGQzNTY1YjkwNTA5MjkxNTA1MDU2ZmVhMjY1NjI3YTdhNzIzMTU4MjAwZTM5YWRmZWZkNmYzOWYzZmM2N2YxNzlhOTQ4MmFhZmZiNWFjZjM2Mjc3ZDcwNDA3MGQ1YTBlNWYyMjkxNmMwNjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBmdW5jdGlvbiBkZXBsb3koe1xuICAgIGNsaWVudCxcbiAgICB3aXRoQ29udHJhY3RNZXRhLFxuICAgIGxpYnJhcmllczogeyBOZWdhdGlvbkxpYiB9LFxuICB9OiB7XG4gICAgY2xpZW50OiBQcm92aWRlcjtcbiAgICB3aXRoQ29udHJhY3RNZXRhPzogYm9vbGVhbjtcbiAgICBsaWJyYXJpZXM6IHtcbiAgICAgIE5lZ2F0aW9uTGliOiBzdHJpbmc7XG4gICAgfTtcbiAgfSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIGNvbnN0IGxpbmtzID0gW3sgbmFtZTogJyRjNThjOTRlZDZhYWZjNjBjMzNiNWUxZGIwNTY0NDliYjg1JCcsIGFkZHJlc3M6IE5lZ2F0aW9uTGliIH1dO1xuICAgIGNvbnN0IGxpbmtlZEJ5dGVjb2RlID0gbGlua2VyKGJ5dGVjb2RlLCBsaW5rcyk7XG4gICAgY29uc3QgZGF0YSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKGxpbmtlZEJ5dGVjb2RlLCAnaGV4JyksIGNvZGVjLmVuY29kZURlcGxveSgpXSk7XG4gICAgcmV0dXJuIGNsaWVudC5kZXBsb3koXG4gICAgICBkYXRhLFxuICAgICAgd2l0aENvbnRyYWN0TWV0YVxuICAgICAgICA/IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgYWJpOiBBZGRpdGlvbi5hYmksXG4gICAgICAgICAgICAgIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKGxpbmtlcihBZGRpdGlvbi5kZXBsb3llZEJ5dGVjb2RlLCBsaW5rcyksICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICk7XG4gIH1cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveUNvbnRyYWN0KGRlcHM6IHtcbiAgICBjbGllbnQ6IFByb3ZpZGVyO1xuICAgIHdpdGhDb250cmFjdE1ldGE/OiBib29sZWFuO1xuICAgIGxpYnJhcmllczoge1xuICAgICAgTmVnYXRpb25MaWI6IHN0cmluZztcbiAgICB9O1xuICB9KTogUHJvbWlzZTxDb250cmFjdD4ge1xuICAgIGNvbnN0IGFkZHJlc3MgPSBhd2FpdCBkZXBsb3koZGVwcyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0KGRlcHMuY2xpZW50LCBhZGRyZXNzKTtcbiAgfVxuICBleHBvcnQgdHlwZSBDb250cmFjdCA9IFJldHVyblR5cGU8dHlwZW9mIGNvbnRyYWN0PjtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0ID0gKGNsaWVudDogUHJvdmlkZXIsIGFkZHJlc3M6IHN0cmluZykgPT5cbiAgICAoe1xuICAgICAgbmFtZTogJ0FkZGl0aW9uJyxcbiAgICAgIGFkZHJlc3MsXG4gICAgICBmdW5jdGlvbnM6IHtcbiAgICAgICAgYWRkKFxuICAgICAgICAgIGE6IG51bWJlcixcbiAgICAgICAgICBiOiBudW1iZXIsXG4gICAgICAgICAgY2FsbCA9IGRlZmF1bHRDYWxsLFxuICAgICAgICApOiBQcm9taXNlPHtcbiAgICAgICAgICBzdW06IG51bWJlcjtcbiAgICAgICAgfT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5hZGQoYSwgYik7XG4gICAgICAgICAgcmV0dXJuIGNhbGw8e1xuICAgICAgICAgICAgc3VtOiBudW1iZXI7XG4gICAgICAgICAgfT4oY2xpZW50LCBhZGRyZXNzLCBkYXRhLCB0cnVlLCAoZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGRlY29kZShjbGllbnQsIGRhdGEpLmFkZCgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBzdWIoYTogbnVtYmVyLCBiOiBudW1iZXIsIGNhbGwgPSBkZWZhdWx0Q2FsbCk6IFByb21pc2U8W251bWJlcl0+IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gZW5jb2RlKGNsaWVudCkuc3ViKGEsIGIpO1xuICAgICAgICAgIHJldHVybiBjYWxsPFtudW1iZXJdPihjbGllbnQsIGFkZHJlc3MsIGRhdGEsIHRydWUsIChkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlKGNsaWVudCwgZGF0YSkuc3ViKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICB9IGFzIGNvbnN0LFxuICAgIH0gYXMgY29uc3QpO1xuICBleHBvcnQgY29uc3QgZW5jb2RlID0gKGNsaWVudDogUHJvdmlkZXIpID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFkZDogKGE6IG51bWJlciwgYjogbnVtYmVyKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJ0E1RjNDMjNCJywgYSwgYik7XG4gICAgICB9LFxuICAgICAgc3ViOiAoYTogbnVtYmVyLCBiOiBudW1iZXIpID0+IHtcbiAgICAgICAgcmV0dXJuIGNvZGVjLmVuY29kZUZ1bmN0aW9uRGF0YSgnQURFRkMzN0InLCBhLCBiKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbiAgZXhwb3J0IGNvbnN0IGRlY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyLCBkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCB0b3BpY3M6IFVpbnQ4QXJyYXlbXSA9IFtdKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBhZGQ6ICgpOiB7XG4gICAgICAgIHN1bTogbnVtYmVyO1xuICAgICAgfSA9PiB7XG4gICAgICAgIGNvbnN0IFtzdW1dID0gY29kZWMuZGVjb2RlRnVuY3Rpb25SZXN1bHQoJ0E1RjNDMjNCJywgZGF0YSk7XG4gICAgICAgIHJldHVybiB7IHN1bTogc3VtIH07XG4gICAgICB9LFxuICAgICAgc3ViOiAoKTogW251bWJlcl0gPT4ge1xuICAgICAgICByZXR1cm4gY29kZWMuZGVjb2RlRnVuY3Rpb25SZXN1bHQoJ0FERUZDMzdCJywgZGF0YSk7XG4gICAgICB9LFxuICAgIH07XG4gIH07XG59XG4iXX0=

@@ -20,4 +20,10 @@ /// <reference types="node" />

const deployedBytecode = "608060405234801561001057600080fd5b50600436106100365760003560e01c80633da80d661461003b578063b32b8e2c1461012b575b600080fd5b6101116004803603604081101561005157600080fd5b810190808035906020019064010000000081111561006e57600080fd5b82018360208201111561008057600080fd5b803590602001918460208302840111640100000000831117156100a257600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610205565b604051808215151515815260200191505060405180910390f35b6101eb6004803603604081101561014157600080fd5b810190808035906020019064010000000081111561015e57600080fd5b82018360208201111561017057600080fd5b8035906020019184602083028401116401000000008311171561019257600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610280565b604051808215151515815260200191505060405180910390f35b600080600090505b8351811015610274578273ffffffffffffffffffffffffffffffffffffffff1684828151811061023957fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141561026757600191505061027a565b808060010191505061020d565b50600090505b92915050565b600080600090505b83518110156102c3578284828151811061029e57fe5b602002602001015114156102b65760019150506102c9565b8080600101915050610288565b50600090505b9291505056fea265627a7a7231582032d6f06ddf667cc291458c6ed27a81fe8ef6fa213f3cf25c0fef50500bc05f2264736f6c63430005110032";
function deploy(client: Provider, withContractMeta?: boolean): Promise<string>;
function deployContract(client: Provider, withContractMeta?: boolean): Promise<Contract>;
function deploy({ client, withContractMeta, }: {
client: Provider;
withContractMeta?: boolean;
}): Promise<string>;
function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
}): Promise<Contract>;
type Contract = ReturnType<typeof contract>;

@@ -24,0 +30,0 @@ const contract: (client: Provider, address: string) => {

@@ -62,4 +62,4 @@ "use strict";

Contains.deployedBytecode = '608060405234801561001057600080fd5b50600436106100365760003560e01c80633da80d661461003b578063b32b8e2c1461012b575b600080fd5b6101116004803603604081101561005157600080fd5b810190808035906020019064010000000081111561006e57600080fd5b82018360208201111561008057600080fd5b803590602001918460208302840111640100000000831117156100a257600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610205565b604051808215151515815260200191505060405180910390f35b6101eb6004803603604081101561014157600080fd5b810190808035906020019064010000000081111561015e57600080fd5b82018360208201111561017057600080fd5b8035906020019184602083028401116401000000008311171561019257600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050919291929080359060200190929190505050610280565b604051808215151515815260200191505060405180910390f35b600080600090505b8351811015610274578273ffffffffffffffffffffffffffffffffffffffff1684828151811061023957fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16141561026757600191505061027a565b808060010191505061020d565b50600090505b92915050565b600080600090505b83518110156102c3578284828151811061029e57fe5b602002602001015114156102b65760019150506102c9565b8080600101915050610288565b50600090505b9291505056fea265627a7a7231582032d6f06ddf667cc291458c6ed27a81fe8ef6fa213f3cf25c0fef50500bc05f2264736f6c63430005110032';
function deploy(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deploy(_a) {
var client = _a.client, withContractMeta = _a.withContractMeta;
var codec = client.contractCodec(Contains.abi);

@@ -72,4 +72,3 @@ var data = Buffer.concat([Buffer.from(Contains.bytecode, 'hex'), codec.encodeDeploy()]);

Contains.deploy = deploy;
function deployContract(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps) {
return __awaiter(this, void 0, void 0, function () {

@@ -79,6 +78,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps)];
case 1:
address = _a.sent();
return [2 /*return*/, Contains.contract(client, address)];
return [2 /*return*/, Contains.contract(deps.client, address)];
}

@@ -139,2 +138,2 @@ });

})(Contains = exports.Contains || (exports.Contains = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGFpbnMuYWJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NvbHRzL3NvbC9Db250YWlucy5hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXVDO0FBQ3ZDLHFDQUF3RjtBQXFCeEYsU0FBc0IsV0FBVyxDQUMvQixNQUFnQixFQUNoQixJQUFZLEVBQ1osSUFBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQXdEOzs7Ozt3QkFFckMscUJBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFBOztvQkFBakYsVUFBVSxHQUFHLFNBQW9FO29CQUN2RixzQkFBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUM7Ozs7Q0FDN0I7QUFURCxrQ0FTQztBQUNELElBQWlCLFFBQVEsQ0FvRXhCO0FBcEVELFdBQWlCLFFBQVE7SUFDVixxQkFBWSxHQUFHLFVBQVUsQ0FBQztJQUMxQixZQUFHLEdBQ2QscWtCQUFxa0IsQ0FBQztJQUMzakIsaUJBQVEsR0FDbkIsMGtEQUEwa0QsQ0FBQztJQUNoa0QseUJBQWdCLEdBQzNCLDBnREFBMGdELENBQUM7SUFDN2dELFNBQWdCLE1BQU0sQ0FBQyxNQUFnQixFQUFFLGdCQUF3QjtRQUF4QixpQ0FBQSxFQUFBLHdCQUF3QjtRQUMvRCxJQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQUEsR0FBRyxDQUFDLENBQUM7UUFDeEMsSUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBQSxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLFlBQVksRUFB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QUFBLEVBQUEsV0FBeUI7UUFDOUYsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE9BQU87WUFDTCxRQUFRLEVBQUU7Z0JBQ1I7b0JBQ0UsT0FBTyxLQUFLLENBQUMsb0JBQW9CLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO2dCQUNEO29CQUNFLE9BQU8sS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDdEQsQ0FBQzthQUNPO1NBQ1gsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsRUFwRWdCLFFBQVEsR0FBUixnQkFBUSxLQUFSLGdCQUFRLFFBb0V4QiIsInNvdXJjZXNDb250ZW50IjpbIi8vQ29kZSBnZW5lcmF0ZWQgYnkgc29sdHMuIERPIE5PVCBFRElULlxuaW1wb3J0IHsgQWRkcmVzcywgQ2FuY2VsU3RyZWFtU2lnbmFsLCBDb250cmFjdENvZGVjLCBFdmVudCwgS2VjY2FrIH0gZnJvbSAnLi4vLi4vaW5kZXgnO1xuaW50ZXJmYWNlIFByb3ZpZGVyIHtcbiAgZGVwbG95KFxuICAgIGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgY29udHJhY3RNZXRhPzoge1xuICAgICAgYWJpOiBzdHJpbmc7XG4gICAgICBjb2RlSGFzaDogVWludDhBcnJheTtcbiAgICB9W10sXG4gICk6IFByb21pc2U8QWRkcmVzcz47XG4gIGNhbGwoZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgY2FsbFNpbShkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBsaXN0ZW4oXG4gICAgc2lnbmF0dXJlczogc3RyaW5nW10sXG4gICAgYWRkcmVzczogc3RyaW5nLFxuICAgIGNhbGxiYWNrOiAoZXJyPzogRXJyb3IsIGV2ZW50PzogRXZlbnQpID0+IENhbmNlbFN0cmVhbVNpZ25hbCB8IHZvaWQsXG4gICAgc3RhcnQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgICBlbmQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgKTogdW5rbm93bjtcbiAgY29udHJhY3RDb2RlYyhjb250cmFjdEFCSTogc3RyaW5nKTogQ29udHJhY3RDb2RlYztcbn1cbmV4cG9ydCB0eXBlIENhbGxlciA9IHR5cGVvZiBkZWZhdWx0Q2FsbDtcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWZhdWx0Q2FsbDxPdXRwdXQ+KFxuICBjbGllbnQ6IFByb3ZpZGVyLFxuICBhZGRyOiBzdHJpbmcsXG4gIGRhdGE6IFVpbnQ4QXJyYXksXG4gIGlzU2ltOiBib29sZWFuLFxuICBjYWxsYmFjazogKHJldHVybkRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IE91dHB1dCxcbik6IFByb21pc2U8T3V0cHV0PiB7XG4gIGNvbnN0IHJldHVybkRhdGEgPSBhd2FpdCAoaXNTaW0gPyBjbGllbnQuY2FsbFNpbShkYXRhLCBhZGRyKSA6IGNsaWVudC5jYWxsKGRhdGEsIGFkZHIpKTtcbiAgcmV0dXJuIGNhbGxiYWNrKHJldHVybkRhdGEpO1xufVxuZXhwb3J0IG5hbWVzcGFjZSBDb250YWlucyB7XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdE5hbWUgPSAnQ29udGFpbnMnO1xuICBleHBvcnQgY29uc3QgYWJpID1cbiAgICAnW3tcImNvbnN0YW50XCI6dHJ1ZSxcImlucHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImFkZHJlc3NbXVwiLFwibmFtZVwiOlwiX2xpc3RcIixcInR5cGVcIjpcImFkZHJlc3NbXVwifSx7XCJpbnRlcm5hbFR5cGVcIjpcImFkZHJlc3NcIixcIm5hbWVcIjpcIl92YWx1ZVwiLFwidHlwZVwiOlwiYWRkcmVzc1wifV0sXCJuYW1lXCI6XCJjb250YWluc1wiLFwib3V0cHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImJvb2xcIixcIm5hbWVcIjpcIlwiLFwidHlwZVwiOlwiYm9vbFwifV0sXCJwYXlhYmxlXCI6ZmFsc2UsXCJzdGF0ZU11dGFiaWxpdHlcIjpcInB1cmVcIixcInR5cGVcIjpcImZ1bmN0aW9uXCJ9LHtcImNvbnN0YW50XCI6dHJ1ZSxcImlucHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcInVpbnQyNTZbXVwiLFwibmFtZVwiOlwiX2xpc3RcIixcInR5cGVcIjpcInVpbnQyNTZbXVwifSx7XCJpbnRlcm5hbFR5cGVcIjpcInVpbnQyNTZcIixcIm5hbWVcIjpcIl92YWx1ZVwiLFwidHlwZVwiOlwidWludDI1NlwifV0sXCJuYW1lXCI6XCJjb250YWluc1wiLFwib3V0cHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImJvb2xcIixcIm5hbWVcIjpcIlwiLFwidHlwZVwiOlwiYm9vbFwifV0sXCJwYXlhYmxlXCI6ZmFsc2UsXCJzdGF0ZU11dGFiaWxpdHlcIjpcInB1cmVcIixcInR5cGVcIjpcImZ1bmN0aW9uXCJ9XSc7XG4gIGV4cG9ydCBjb25zdCBieXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYxMDMwNDgwNjEwMDIwNjAwMDM5NjAwMGYzZmU2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDA0MzYxMDYxMDAzNjU3NjAwMDM1NjBlMDFjODA2MzNkYTgwZDY2MTQ2MTAwM2I1NzgwNjNiMzJiOGUyYzE0NjEwMTJiNTc1YjYwMDA4MGZkNWI2MTAxMTE2MDA0ODAzNjAzNjA0MDgxMTAxNTYxMDA1MTU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA2NDAxMDAwMDAwMDA4MTExMTU2MTAwNmU1NzYwMDA4MGZkNWI4MjAxODM2MDIwODIwMTExMTU2MTAwODA1NzYwMDA4MGZkNWI4MDM1OTA2MDIwMDE5MTg0NjAyMDgzMDI4NDAxMTE2NDAxMDAwMDAwMDA4MzExMTcxNTYxMDBhMjU3NjAwMDgwZmQ1YjkxOTA4MDgwNjAyMDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MzkyOTE5MDgxODE1MjYwMjAwMTgzODM2MDIwMDI4MDgyODQzNzYwMDA4MTg0MDE1MjYwMWYxOTYwMWY4MjAxMTY5MDUwODA4MzAxOTI1MDUwNTA1MDUwNTA1MDkxOTI5MTkyOTA4MDM1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjEwMjA1NTY1YjYwNDA1MTgwODIxNTE1MTUxNTgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MTAxZWI2MDA0ODAzNjAzNjA0MDgxMTAxNTYxMDE0MTU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA2NDAxMDAwMDAwMDA4MTExMTU2MTAxNWU1NzYwMDA4MGZkNWI4MjAxODM2MDIwODIwMTExMTU2MTAxNzA1NzYwMDA4MGZkNWI4MDM1OTA2MDIwMDE5MTg0NjAyMDgzMDI4NDAxMTE2NDAxMDAwMDAwMDA4MzExMTcxNTYxMDE5MjU3NjAwMDgwZmQ1YjkxOTA4MDgwNjAyMDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MzkyOTE5MDgxODE1MjYwMjAwMTgzODM2MDIwMDI4MDgyODQzNzYwMDA4MTg0MDE1MjYwMWYxOTYwMWY4MjAxMTY5MDUwODA4MzAxOTI1MDUwNTA1MDUwNTA1MDkxOTI5MTkyOTA4MDM1OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYxMDI4MDU2NWI2MDQwNTE4MDgyMTUxNTE1MTU4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViNjAwMDgwNjAwMDkwNTA1YjgzNTE4MTEwMTU2MTAyNzQ1NzgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4NDgyODE1MTgxMTA2MTAyMzk1N2ZlNWI2MDIwMDI2MDIwMDEwMTUxNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTYxNDE1NjEwMjY3NTc2MDAxOTE1MDUwNjEwMjdhNTY1YjgwODA2MDAxMDE5MTUwNTA2MTAyMGQ1NjViNTA2MDAwOTA1MDViOTI5MTUwNTA1NjViNjAwMDgwNjAwMDkwNTA1YjgzNTE4MTEwMTU2MTAyYzM1NzgyODQ4MjgxNTE4MTEwNjEwMjllNTdmZTViNjAyMDAyNjAyMDAxMDE1MTE0MTU2MTAyYjY1NzYwMDE5MTUwNTA2MTAyYzk1NjViODA4MDYwMDEwMTkxNTA1MDYxMDI4ODU2NWI1MDYwMDA5MDUwNWI5MjkxNTA1MDU2ZmVhMjY1NjI3YTdhNzIzMTU4MjAzMmQ2ZjA2ZGRmNjY3Y2MyOTE0NThjNmVkMjdhODFmZThlZjZmYTIxM2YzY2YyNWMwZmVmNTA1MDBiYzA1ZjIyNjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBjb25zdCBkZXBsb3llZEJ5dGVjb2RlID1cbiAgICAnNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMzY1NzYwMDAzNTYwZTAxYzgwNjMzZGE4MGQ2NjE0NjEwMDNiNTc4MDYzYjMyYjhlMmMxNDYxMDEyYjU3NWI2MDAwODBmZDViNjEwMTExNjAwNDgwMzYwMzYwNDA4MTEwMTU2MTAwNTE1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwNjQwMTAwMDAwMDAwODExMTE1NjEwMDZlNTc2MDAwODBmZDViODIwMTgzNjAyMDgyMDExMTE1NjEwMDgwNTc2MDAwODBmZDViODAzNTkwNjAyMDAxOTE4NDYwMjA4MzAyODQwMTExNjQwMTAwMDAwMDAwODMxMTE3MTU2MTAwYTI1NzYwMDA4MGZkNWI5MTkwODA4MDYwMjAwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzNjAyMDAyODA4Mjg0Mzc2MDAwODE4NDAxNTI2MDFmMTk2MDFmODIwMTE2OTA1MDgwODMwMTkyNTA1MDUwNTA1MDUwNTA5MTkyOTE5MjkwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYxMDIwNTU2NWI2MDQwNTE4MDgyMTUxNTE1MTU4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViNjEwMWViNjAwNDgwMzYwMzYwNDA4MTEwMTU2MTAxNDE1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwNjQwMTAwMDAwMDAwODExMTE1NjEwMTVlNTc2MDAwODBmZDViODIwMTgzNjAyMDgyMDExMTE1NjEwMTcwNTc2MDAwODBmZDViODAzNTkwNjAyMDAxOTE4NDYwMjA4MzAyODQwMTExNjQwMTAwMDAwMDAwODMxMTE3MTU2MTAxOTI1NzYwMDA4MGZkNWI5MTkwODA4MDYwMjAwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzNjAyMDAyODA4Mjg0Mzc2MDAwODE4NDAxNTI2MDFmMTk2MDFmODIwMTE2OTA1MDgwODMwMTkyNTA1MDUwNTA1MDUwNTA5MTkyOTE5MjkwODAzNTkwNjAyMDAxOTA5MjkxOTA1MDUwNTA2MTAyODA1NjViNjA0MDUxODA4MjE1MTUxNTE1ODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MDYwMDA5MDUwNWI4MzUxODExMDE1NjEwMjc0NTc4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODQ4MjgxNTE4MTEwNjEwMjM5NTdmZTViNjAyMDAyNjAyMDAxMDE1MTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MTQxNTYxMDI2NzU3NjAwMTkxNTA1MDYxMDI3YTU2NWI4MDgwNjAwMTAxOTE1MDUwNjEwMjBkNTY1YjUwNjAwMDkwNTA1YjkyOTE1MDUwNTY1YjYwMDA4MDYwMDA5MDUwNWI4MzUxODExMDE1NjEwMmMzNTc4Mjg0ODI4MTUxODExMDYxMDI5ZTU3ZmU1YjYwMjAwMjYwMjAwMTAxNTExNDE1NjEwMmI2NTc2MDAxOTE1MDUwNjEwMmM5NTY1YjgwODA2MDAxMDE5MTUwNTA2MTAyODg1NjViNTA2MDAwOTA1MDViOTI5MTUwNTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwMzJkNmYwNmRkZjY2N2NjMjkxNDU4YzZlZDI3YTgxZmU4ZWY2ZmEyMTNmM2NmMjVjMGZlZjUwNTAwYmMwNWYyMjY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgZnVuY3Rpb24gZGVwbG95KGNsaWVudDogUHJvdmlkZXIsIHdpdGhDb250cmFjdE1ldGEgPSBmYWxzZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIGNvbnN0IGRhdGEgPSBCdWZmZXIuY29uY2F0KFtCdWZmZXIuZnJvbShieXRlY29kZSwgJ2hleCcpLCBjb2RlYy5lbmNvZGVEZXBsb3koKV0pO1xuICAgIHJldHVybiBjbGllbnQuZGVwbG95KFxuICAgICAgZGF0YSxcbiAgICAgIHdpdGhDb250cmFjdE1ldGFcbiAgICAgICAgPyBbeyBhYmk6IENvbnRhaW5zLmFiaSwgY29kZUhhc2g6IG5ldyBLZWNjYWsoMjU2KS51cGRhdGUoQ29udGFpbnMuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfV1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgKTtcbiAgfVxuICBleHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVwbG95Q29udHJhY3QoY2xpZW50OiBQcm92aWRlciwgd2l0aENvbnRyYWN0TWV0YSA9IGZhbHNlKTogUHJvbWlzZTxDb250cmFjdD4ge1xuICAgIGNvbnN0IGFkZHJlc3MgPSBhd2FpdCBkZXBsb3koY2xpZW50LCB3aXRoQ29udHJhY3RNZXRhKTtcbiAgICByZXR1cm4gY29udHJhY3QoY2xpZW50LCBhZGRyZXNzKTtcbiAgfVxuICBleHBvcnQgdHlwZSBDb250cmFjdCA9IFJldHVyblR5cGU8dHlwZW9mIGNvbnRyYWN0PjtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0ID0gKGNsaWVudDogUHJvdmlkZXIsIGFkZHJlc3M6IHN0cmluZykgPT5cbiAgICAoe1xuICAgICAgbmFtZTogJ0NvbnRhaW5zJyxcbiAgICAgIGFkZHJlc3MsXG4gICAgICBmdW5jdGlvbnM6IHtcbiAgICAgICAgY29udGFpbnMoX2xpc3Q6IHN0cmluZ1tdLCBfdmFsdWU6IHN0cmluZywgY2FsbCA9IGRlZmF1bHRDYWxsKTogUHJvbWlzZTxbYm9vbGVhbl0+IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gZW5jb2RlKGNsaWVudCkuY29udGFpbnNbMF0oX2xpc3QsIF92YWx1ZSk7XG4gICAgICAgICAgcmV0dXJuIGNhbGw8W2Jvb2xlYW5dPihjbGllbnQsIGFkZHJlc3MsIGRhdGEsIHRydWUsIChkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlKGNsaWVudCwgZGF0YSkuY29udGFpbnNbMF0oKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgY29udGFpbnNfMShfbGlzdDogbnVtYmVyW10sIF92YWx1ZTogbnVtYmVyLCBjYWxsID0gZGVmYXVsdENhbGwpOiBQcm9taXNlPFtib29sZWFuXT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5jb250YWluc1sxXShfbGlzdCwgX3ZhbHVlKTtcbiAgICAgICAgICByZXR1cm4gY2FsbDxbYm9vbGVhbl0+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgdHJ1ZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5jb250YWluc1sxXSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSBhcyBjb25zdCxcbiAgICB9IGFzIGNvbnN0KTtcbiAgZXhwb3J0IGNvbnN0IGVuY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBjb250YWluczogW1xuICAgICAgICAoX2xpc3Q6IHN0cmluZ1tdLCBfdmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJzNEQTgwRDY2JywgX2xpc3QsIF92YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIChfbGlzdDogbnVtYmVyW10sIF92YWx1ZTogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGNvZGVjLmVuY29kZUZ1bmN0aW9uRGF0YSgnQjMyQjhFMkMnLCBfbGlzdCwgX3ZhbHVlKTtcbiAgICAgICAgfSxcbiAgICAgIF0gYXMgY29uc3QsXG4gICAgfTtcbiAgfTtcbiAgZXhwb3J0IGNvbnN0IGRlY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyLCBkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCB0b3BpY3M6IFVpbnQ4QXJyYXlbXSA9IFtdKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBjb250YWluczogW1xuICAgICAgICAoKTogW2Jvb2xlYW5dID0+IHtcbiAgICAgICAgICByZXR1cm4gY29kZWMuZGVjb2RlRnVuY3Rpb25SZXN1bHQoJzNEQTgwRDY2JywgZGF0YSk7XG4gICAgICAgIH0sXG4gICAgICAgICgpOiBbYm9vbGVhbl0gPT4ge1xuICAgICAgICAgIHJldHVybiBjb2RlYy5kZWNvZGVGdW5jdGlvblJlc3VsdCgnQjMyQjhFMkMnLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgIF0gYXMgY29uc3QsXG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGFpbnMuYWJpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NvbHRzL3NvbC9Db250YWlucy5hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXVDO0FBQ3ZDLHFDQUF3RjtBQXFCeEYsU0FBc0IsV0FBVyxDQUMvQixNQUFnQixFQUNoQixJQUFZLEVBQ1osSUFBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQXdEOzs7Ozt3QkFFckMscUJBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFBOztvQkFBakYsVUFBVSxHQUFHLFNBQW9FO29CQUN2RixzQkFBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUM7Ozs7Q0FDN0I7QUFURCxrQ0FTQztBQUNELElBQWlCLFFBQVEsQ0EwRXhCO0FBMUVELFdBQWlCLFFBQVE7SUFDVixxQkFBWSxHQUFHLFVBQVUsQ0FBQztJQUMxQixZQUFHLEdBQ2QscWtCQUFxa0IsQ0FBQztJQUMzakIsaUJBQVEsR0FDbkIsMGtEQUEwa0QsQ0FBQztJQUNoa0QseUJBQWdCLEdBQzNCLDBnREFBMGdELENBQUM7SUFDN2dELFNBQWdCLE1BQU0sQ0FBQyxFQU10QjtZQUxDLE1BQU0sWUFBQSxFQUNOLGdCQUFnQixzQkFBQTtRQUtoQixJQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQUEsR0FBRyxDQUFDLENBQUM7UUFDeEMsSUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBQSxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLFlBQVksRUFBRSxD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Q0FBQyxhQUFhLENBQUMsU0FBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxPQUFPO1lBQ0wsUUFBUSxFQUFFO2dCQUNSO29CQUNFLE9BQU8sS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDdEQsQ0FBQztnQkFDRDtvQkFDRSxPQUFPLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQ3RELENBQUM7YUFDTztTQUNYLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDLEVBMUVnQixRQUFRLEdBQVIsZ0JBQVEsS0FBUixnQkFBUSxRQTBFeEIiLCJzb3VyY2VzQ29udGVudCI6WyIvL0NvZGUgZ2VuZXJhdGVkIGJ5IHNvbHRzLiBETyBOT1QgRURJVC5cbmltcG9ydCB7IEFkZHJlc3MsIENhbmNlbFN0cmVhbVNpZ25hbCwgQ29udHJhY3RDb2RlYywgRXZlbnQsIEtlY2NhayB9IGZyb20gJy4uLy4uL2luZGV4JztcbmludGVyZmFjZSBQcm92aWRlciB7XG4gIGRlcGxveShcbiAgICBkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGNvbnRyYWN0TWV0YT86IHtcbiAgICAgIGFiaTogc3RyaW5nO1xuICAgICAgY29kZUhhc2g6IFVpbnQ4QXJyYXk7XG4gICAgfVtdLFxuICApOiBQcm9taXNlPEFkZHJlc3M+O1xuICBjYWxsKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGNhbGxTaW0oZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgbGlzdGVuKFxuICAgIHNpZ25hdHVyZXM6IHN0cmluZ1tdLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBjYWxsYmFjazogKGVycj86IEVycm9yLCBldmVudD86IEV2ZW50KSA9PiBDYW5jZWxTdHJlYW1TaWduYWwgfCB2b2lkLFxuICAgIHN0YXJ0PzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgZW5kPzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICk6IHVua25vd247XG4gIGNvbnRyYWN0Q29kZWMoY29udHJhY3RBQkk6IHN0cmluZyk6IENvbnRyYWN0Q29kZWM7XG59XG5leHBvcnQgdHlwZSBDYWxsZXIgPSB0eXBlb2YgZGVmYXVsdENhbGw7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVmYXVsdENhbGw8T3V0cHV0PihcbiAgY2xpZW50OiBQcm92aWRlcixcbiAgYWRkcjogc3RyaW5nLFxuICBkYXRhOiBVaW50OEFycmF5LFxuICBpc1NpbTogYm9vbGVhbixcbiAgY2FsbGJhY2s6IChyZXR1cm5EYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiBPdXRwdXQsXG4pOiBQcm9taXNlPE91dHB1dD4ge1xuICBjb25zdCByZXR1cm5EYXRhID0gYXdhaXQgKGlzU2ltID8gY2xpZW50LmNhbGxTaW0oZGF0YSwgYWRkcikgOiBjbGllbnQuY2FsbChkYXRhLCBhZGRyKSk7XG4gIHJldHVybiBjYWxsYmFjayhyZXR1cm5EYXRhKTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgQ29udGFpbnMge1xuICBleHBvcnQgY29uc3QgY29udHJhY3ROYW1lID0gJ0NvbnRhaW5zJztcbiAgZXhwb3J0IGNvbnN0IGFiaSA9XG4gICAgJ1t7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJhZGRyZXNzW11cIixcIm5hbWVcIjpcIl9saXN0XCIsXCJ0eXBlXCI6XCJhZGRyZXNzW11cIn0se1wiaW50ZXJuYWxUeXBlXCI6XCJhZGRyZXNzXCIsXCJuYW1lXCI6XCJfdmFsdWVcIixcInR5cGVcIjpcImFkZHJlc3NcIn1dLFwibmFtZVwiOlwiY29udGFpbnNcIixcIm91dHB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJib29sXCIsXCJuYW1lXCI6XCJcIixcInR5cGVcIjpcImJvb2xcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJwdXJlXCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifSx7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJ1aW50MjU2W11cIixcIm5hbWVcIjpcIl9saXN0XCIsXCJ0eXBlXCI6XCJ1aW50MjU2W11cIn0se1wiaW50ZXJuYWxUeXBlXCI6XCJ1aW50MjU2XCIsXCJuYW1lXCI6XCJfdmFsdWVcIixcInR5cGVcIjpcInVpbnQyNTZcIn1dLFwibmFtZVwiOlwiY29udGFpbnNcIixcIm91dHB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJib29sXCIsXCJuYW1lXCI6XCJcIixcInR5cGVcIjpcImJvb2xcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJwdXJlXCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifV0nO1xuICBleHBvcnQgY29uc3QgYnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MTAzMDQ4MDYxMDAyMDYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMzY1NzYwMDAzNTYwZTAxYzgwNjMzZGE4MGQ2NjE0NjEwMDNiNTc4MDYzYjMyYjhlMmMxNDYxMDEyYjU3NWI2MDAwODBmZDViNjEwMTExNjAwNDgwMzYwMzYwNDA4MTEwMTU2MTAwNTE1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwNjQwMTAwMDAwMDAwODExMTE1NjEwMDZlNTc2MDAwODBmZDViODIwMTgzNjAyMDgyMDExMTE1NjEwMDgwNTc2MDAwODBmZDViODAzNTkwNjAyMDAxOTE4NDYwMjA4MzAyODQwMTExNjQwMTAwMDAwMDAwODMxMTE3MTU2MTAwYTI1NzYwMDA4MGZkNWI5MTkwODA4MDYwMjAwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzNjAyMDAyODA4Mjg0Mzc2MDAwODE4NDAxNTI2MDFmMTk2MDFmODIwMTE2OTA1MDgwODMwMTkyNTA1MDUwNTA1MDUwNTA5MTkyOTE5MjkwODAzNTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYxMDIwNTU2NWI2MDQwNTE4MDgyMTUxNTE1MTU4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViNjEwMWViNjAwNDgwMzYwMzYwNDA4MTEwMTU2MTAxNDE1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwNjQwMTAwMDAwMDAwODExMTE1NjEwMTVlNTc2MDAwODBmZDViODIwMTgzNjAyMDgyMDExMTE1NjEwMTcwNTc2MDAwODBmZDViODAzNTkwNjAyMDAxOTE4NDYwMjA4MzAyODQwMTExNjQwMTAwMDAwMDAwODMxMTE3MTU2MTAxOTI1NzYwMDA4MGZkNWI5MTkwODA4MDYwMjAwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTM5MjkxOTA4MTgxNTI2MDIwMDE4MzgzNjAyMDAyODA4Mjg0Mzc2MDAwODE4NDAxNTI2MDFmMTk2MDFmODIwMTE2OTA1MDgwODMwMTkyNTA1MDUwNTA1MDUwNTA5MTkyOTE5MjkwODAzNTkwNjAyMDAxOTA5MjkxOTA1MDUwNTA2MTAyODA1NjViNjA0MDUxODA4MjE1MTUxNTE1ODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MDYwMDA5MDUwNWI4MzUxODExMDE1NjEwMjc0NTc4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODQ4MjgxNTE4MTEwNjEwMjM5NTdmZTViNjAyMDAyNjAyMDAxMDE1MTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2MTQxNTYxMDI2NzU3NjAwMTkxNTA1MDYxMDI3YTU2NWI4MDgwNjAwMTAxOTE1MDUwNjEwMjBkNTY1YjUwNjAwMDkwNTA1YjkyOTE1MDUwNTY1YjYwMDA4MDYwMDA5MDUwNWI4MzUxODExMDE1NjEwMmMzNTc4Mjg0ODI4MTUxODExMDYxMDI5ZTU3ZmU1YjYwMjAwMjYwMjAwMTAxNTExNDE1NjEwMmI2NTc2MDAxOTE1MDUwNjEwMmM5NTY1YjgwODA2MDAxMDE5MTUwNTA2MTAyODg1NjViNTA2MDAwOTA1MDViOTI5MTUwNTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwMzJkNmYwNmRkZjY2N2NjMjkxNDU4YzZlZDI3YTgxZmU4ZWY2ZmEyMTNmM2NmMjVjMGZlZjUwNTAwYmMwNWYyMjY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjEwMDM2NTc2MDAwMzU2MGUwMWM4MDYzM2RhODBkNjYxNDYxMDAzYjU3ODA2M2IzMmI4ZTJjMTQ2MTAxMmI1NzViNjAwMDgwZmQ1YjYxMDExMTYwMDQ4MDM2MDM2MDQwODExMDE1NjEwMDUxNTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDY0MDEwMDAwMDAwMDgxMTExNTYxMDA2ZTU3NjAwMDgwZmQ1YjgyMDE4MzYwMjA4MjAxMTExNTYxMDA4MDU3NjAwMDgwZmQ1YjgwMzU5MDYwMjAwMTkxODQ2MDIwODMwMjg0MDExMTY0MDEwMDAwMDAwMDgzMTExNzE1NjEwMGEyNTc2MDAwODBmZDViOTE5MDgwODA2MDIwMDI2MDIwMDE2MDQwNTE5MDgxMDE2MDQwNTI4MDkzOTI5MTkwODE4MTUyNjAyMDAxODM4MzYwMjAwMjgwODI4NDM3NjAwMDgxODQwMTUyNjAxZjE5NjAxZjgyMDExNjkwNTA4MDgzMDE5MjUwNTA1MDUwNTA1MDUwOTE5MjkxOTI5MDgwMzU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjkwNjAyMDAxOTA5MjkxOTA1MDUwNTA2MTAyMDU1NjViNjA0MDUxODA4MjE1MTUxNTE1ODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYxMDFlYjYwMDQ4MDM2MDM2MDQwODExMDE1NjEwMTQxNTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDY0MDEwMDAwMDAwMDgxMTExNTYxMDE1ZTU3NjAwMDgwZmQ1YjgyMDE4MzYwMjA4MjAxMTExNTYxMDE3MDU3NjAwMDgwZmQ1YjgwMzU5MDYwMjAwMTkxODQ2MDIwODMwMjg0MDExMTY0MDEwMDAwMDAwMDgzMTExNzE1NjEwMTkyNTc2MDAwODBmZDViOTE5MDgwODA2MDIwMDI2MDIwMDE2MDQwNTE5MDgxMDE2MDQwNTI4MDkzOTI5MTkwODE4MTUyNjAyMDAxODM4MzYwMjAwMjgwODI4NDM3NjAwMDgxODQwMTUyNjAxZjE5NjAxZjgyMDExNjkwNTA4MDgzMDE5MjUwNTA1MDUwNTA1MDUwOTE5MjkxOTI5MDgwMzU5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjEwMjgwNTY1YjYwNDA1MTgwODIxNTE1MTUxNTgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDAwODA2MDAwOTA1MDViODM1MTgxMTAxNTYxMDI3NDU3ODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjg0ODI4MTUxODExMDYxMDIzOTU3ZmU1YjYwMjAwMjYwMjAwMTAxNTE3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjE0MTU2MTAyNjc1NzYwMDE5MTUwNTA2MTAyN2E1NjViODA4MDYwMDEwMTkxNTA1MDYxMDIwZDU2NWI1MDYwMDA5MDUwNWI5MjkxNTA1MDU2NWI2MDAwODA2MDAwOTA1MDViODM1MTgxMTAxNTYxMDJjMzU3ODI4NDgyODE1MTgxMTA2MTAyOWU1N2ZlNWI2MDIwMDI2MDIwMDEwMTUxMTQxNTYxMDJiNjU3NjAwMTkxNTA1MDYxMDJjOTU2NWI4MDgwNjAwMTAxOTE1MDUwNjEwMjg4NTY1YjUwNjAwMDkwNTA1YjkyOTE1MDUwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMDMyZDZmMDZkZGY2NjdjYzI5MTQ1OGM2ZWQyN2E4MWZlOGVmNmZhMjEzZjNjZjI1YzBmZWY1MDUwMGJjMDVmMjI2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGZ1bmN0aW9uIGRlcGxveSh7XG4gICAgY2xpZW50LFxuICAgIHdpdGhDb250cmFjdE1ldGEsXG4gIH06IHtcbiAgICBjbGllbnQ6IFByb3ZpZGVyO1xuICAgIHdpdGhDb250cmFjdE1ldGE/OiBib29sZWFuO1xuICB9KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgY29uc3QgZGF0YSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKGJ5dGVjb2RlLCAnaGV4JyksIGNvZGVjLmVuY29kZURlcGxveSgpXSk7XG4gICAgcmV0dXJuIGNsaWVudC5kZXBsb3koXG4gICAgICBkYXRhLFxuICAgICAgd2l0aENvbnRyYWN0TWV0YVxuICAgICAgICA/IFt7IGFiaTogQ29udGFpbnMuYWJpLCBjb2RlSGFzaDogbmV3IEtlY2NhaygyNTYpLnVwZGF0ZShDb250YWlucy5kZXBsb3llZEJ5dGVjb2RlLCAnaGV4JykuZGlnZXN0KCdiaW5hcnknKSB9XVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZXBsb3lDb250cmFjdChkZXBzOiB7IGNsaWVudDogUHJvdmlkZXI7IHdpdGhDb250cmFjdE1ldGE/OiBib29sZWFuIH0pOiBQcm9taXNlPENvbnRyYWN0PiB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IGRlcGxveShkZXBzKTtcbiAgICByZXR1cm4gY29udHJhY3QoZGVwcy5jbGllbnQsIGFkZHJlc3MpO1xuICB9XG4gIGV4cG9ydCB0eXBlIENvbnRyYWN0ID0gUmV0dXJuVHlwZTx0eXBlb2YgY29udHJhY3Q+O1xuICBleHBvcnQgY29uc3QgY29udHJhY3QgPSAoY2xpZW50OiBQcm92aWRlciwgYWRkcmVzczogc3RyaW5nKSA9PlxuICAgICh7XG4gICAgICBuYW1lOiAnQ29udGFpbnMnLFxuICAgICAgYWRkcmVzcyxcbiAgICAgIGZ1bmN0aW9uczoge1xuICAgICAgICBjb250YWlucyhfbGlzdDogc3RyaW5nW10sIF92YWx1ZTogc3RyaW5nLCBjYWxsID0gZGVmYXVsdENhbGwpOiBQcm9taXNlPFtib29sZWFuXT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5jb250YWluc1swXShfbGlzdCwgX3ZhbHVlKTtcbiAgICAgICAgICByZXR1cm4gY2FsbDxbYm9vbGVhbl0+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgdHJ1ZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5jb250YWluc1swXSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBjb250YWluc18xKF9saXN0OiBudW1iZXJbXSwgX3ZhbHVlOiBudW1iZXIsIGNhbGwgPSBkZWZhdWx0Q2FsbCk6IFByb21pc2U8W2Jvb2xlYW5dPiB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IGVuY29kZShjbGllbnQpLmNvbnRhaW5zWzFdKF9saXN0LCBfdmFsdWUpO1xuICAgICAgICAgIHJldHVybiBjYWxsPFtib29sZWFuXT4oY2xpZW50LCBhZGRyZXNzLCBkYXRhLCB0cnVlLCAoZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGRlY29kZShjbGllbnQsIGRhdGEpLmNvbnRhaW5zWzFdKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICB9IGFzIGNvbnN0LFxuICAgIH0gYXMgY29uc3QpO1xuICBleHBvcnQgY29uc3QgZW5jb2RlID0gKGNsaWVudDogUHJvdmlkZXIpID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbnRhaW5zOiBbXG4gICAgICAgIChfbGlzdDogc3RyaW5nW10sIF92YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGNvZGVjLmVuY29kZUZ1bmN0aW9uRGF0YSgnM0RBODBENjYnLCBfbGlzdCwgX3ZhbHVlKTtcbiAgICAgICAgfSxcbiAgICAgICAgKF9saXN0OiBudW1iZXJbXSwgX3ZhbHVlOiBudW1iZXIpID0+IHtcbiAgICAgICAgICByZXR1cm4gY29kZWMuZW5jb2RlRnVuY3Rpb25EYXRhKCdCMzJCOEUyQycsIF9saXN0LCBfdmFsdWUpO1xuICAgICAgICB9LFxuICAgICAgXSBhcyBjb25zdCxcbiAgICB9O1xuICB9O1xuICBleHBvcnQgY29uc3QgZGVjb2RlID0gKGNsaWVudDogUHJvdmlkZXIsIGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQsIHRvcGljczogVWludDhBcnJheVtdID0gW10pID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbnRhaW5zOiBbXG4gICAgICAgICgpOiBbYm9vbGVhbl0gPT4ge1xuICAgICAgICAgIHJldHVybiBjb2RlYy5kZWNvZGVGdW5jdGlvblJlc3VsdCgnM0RBODBENjYnLCBkYXRhKTtcbiAgICAgICAgfSxcbiAgICAgICAgKCk6IFtib29sZWFuXSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGNvZGVjLmRlY29kZUZ1bmN0aW9uUmVzdWx0KCdCMzJCOEUyQycsIGRhdGEpO1xuICAgICAgICB9LFxuICAgICAgXSBhcyBjb25zdCxcbiAgICB9O1xuICB9O1xufVxuIl19

@@ -20,4 +20,10 @@ /// <reference types="node" />

const deployedBytecode = "608060405234801561001057600080fd5b506004361061002b5760003560e01c8063b6a46b3b14610030575b600080fd5b6100a76004803603602081101561004657600080fd5b810190808035906020019064010000000081111561006357600080fd5b82018360208201111561007557600080fd5b8035906020019184600183028401116401000000008311171561009757600080fd5b90919293919293905050506100e9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600082826040516100f990610153565b80806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509350505050604051809103906000f08015801561014a573d6000803e3d6000fd5b50905092915050565b61036f806101618339019056fe60806040526040518060200160405280600081525060009080519060200190610029929190610131565b5034801561003657600080fd5b5060405161036f38038061036f8339818101604052602081101561005957600080fd5b810190808051604051939291908464010000000082111561007957600080fd5b8382019150602082018581111561008f57600080fd5b82518660018202830111640100000000821117156100ac57600080fd5b8083526020830192505050908051906020019080838360005b838110156100e05780820151818401526020810190506100c5565b50505050905090810190601f16801561010d5780820380516001836020036101000a031916815260200191505b50604052505050806000908051906020019061012a929190610131565b50506101d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061017257805160ff19168380011785556101a0565b828001600101855582156101a0579182015b8281111561019f578251825591602001919060010190610184565b5b5090506101ad91906101b1565b5090565b6101d391905b808211156101cf5760008160009055506001016101b7565b5090565b90565b61018a806101e56000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80636d4ce63c14610030575b600080fd5b6100386100b3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561007857808201518184015260208101905061005d565b50505050905090810190601f1680156100a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561014b5780601f106101205761010080835404028352916020019161014b565b820191906000526020600020905b81548152906001019060200180831161012e57829003601f168201915b505050505090509056fea265627a7a723158206774e6bd107164a63f42ab8950431a6d5e09eed4da0c066049dc9db7278bbeb364736f6c63430005110032a265627a7a72315820cf64c1da8de972eb1f9f2b5e6799c7af3385d3ee9b08b51fb8d7b060fa7eb4e864736f6c63430005110032";
function deploy(client: Provider, withContractMeta?: boolean): Promise<string>;
function deployContract(client: Provider, withContractMeta?: boolean): Promise<Contract>;
function deploy({ client, withContractMeta, }: {
client: Provider;
withContractMeta?: boolean;
}): Promise<string>;
function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
}): Promise<Contract>;
type Contract = ReturnType<typeof contract>;

@@ -47,4 +53,10 @@ const contract: (client: Provider, address: string) => {

const deployedBytecode = "608060405234801561001057600080fd5b506004361061002b5760003560e01c80636d4ce63c14610030575b600080fd5b6100386100b3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561007857808201518184015260208101905061005d565b50505050905090810190601f1680156100a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561014b5780601f106101205761010080835404028352916020019161014b565b820191906000526020600020905b81548152906001019060200180831161012e57829003601f168201915b505050505090509056fea265627a7a723158206774e6bd107164a63f42ab8950431a6d5e09eed4da0c066049dc9db7278bbeb364736f6c63430005110032";
function deploy(client: Provider, _name: string, withContractMeta?: boolean): Promise<string>;
function deployContract(client: Provider, _name: string, withContractMeta?: boolean): Promise<Contract>;
function deploy({ client, withContractMeta, }: {
client: Provider;
withContractMeta?: boolean;
}, _name: string): Promise<string>;
function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
}, _name: string): Promise<Contract>;
type Contract = ReturnType<typeof contract>;

@@ -51,0 +63,0 @@ const contract: (client: Provider, address: string) => {

@@ -62,4 +62,4 @@ "use strict";

Creator.deployedBytecode = '608060405234801561001057600080fd5b506004361061002b5760003560e01c8063b6a46b3b14610030575b600080fd5b6100a76004803603602081101561004657600080fd5b810190808035906020019064010000000081111561006357600080fd5b82018360208201111561007557600080fd5b8035906020019184600183028401116401000000008311171561009757600080fd5b90919293919293905050506100e9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600082826040516100f990610153565b80806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509350505050604051809103906000f08015801561014a573d6000803e3d6000fd5b50905092915050565b61036f806101618339019056fe60806040526040518060200160405280600081525060009080519060200190610029929190610131565b5034801561003657600080fd5b5060405161036f38038061036f8339818101604052602081101561005957600080fd5b810190808051604051939291908464010000000082111561007957600080fd5b8382019150602082018581111561008f57600080fd5b82518660018202830111640100000000821117156100ac57600080fd5b8083526020830192505050908051906020019080838360005b838110156100e05780820151818401526020810190506100c5565b50505050905090810190601f16801561010d5780820380516001836020036101000a031916815260200191505b50604052505050806000908051906020019061012a929190610131565b50506101d6565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061017257805160ff19168380011785556101a0565b828001600101855582156101a0579182015b8281111561019f578251825591602001919060010190610184565b5b5090506101ad91906101b1565b5090565b6101d391905b808211156101cf5760008160009055506001016101b7565b5090565b90565b61018a806101e56000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80636d4ce63c14610030575b600080fd5b6100386100b3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561007857808201518184015260208101905061005d565b50505050905090810190601f1680156100a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561014b5780601f106101205761010080835404028352916020019161014b565b820191906000526020600020905b81548152906001019060200180831161012e57829003601f168201915b505050505090509056fea265627a7a723158206774e6bd107164a63f42ab8950431a6d5e09eed4da0c066049dc9db7278bbeb364736f6c63430005110032a265627a7a72315820cf64c1da8de972eb1f9f2b5e6799c7af3385d3ee9b08b51fb8d7b060fa7eb4e864736f6c63430005110032';
function deploy(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deploy(_a) {
var client = _a.client, withContractMeta = _a.withContractMeta;
var codec = client.contractCodec(Creator.abi);

@@ -75,4 +75,3 @@ var data = Buffer.concat([Buffer.from(Creator.bytecode, 'hex'), codec.encodeDeploy()]);

Creator.deploy = deploy;
function deployContract(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps) {
return __awaiter(this, void 0, void 0, function () {

@@ -82,6 +81,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps)];
case 1:
address = _a.sent();
return [2 /*return*/, Creator.contract(client, address)];
return [2 /*return*/, Creator.contract(deps.client, address)];
}

@@ -132,4 +131,4 @@ });

Proxy.deployedBytecode = '608060405234801561001057600080fd5b506004361061002b5760003560e01c80636d4ce63c14610030575b600080fd5b6100386100b3565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561007857808201518184015260208101905061005d565b50505050905090810190601f1680156100a55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b606060008054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561014b5780601f106101205761010080835404028352916020019161014b565b820191906000526020600020905b81548152906001019060200180831161012e57829003601f168201915b505050505090509056fea265627a7a723158206774e6bd107164a63f42ab8950431a6d5e09eed4da0c066049dc9db7278bbeb364736f6c63430005110032';
function deploy(client, _name, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deploy(_a, _name) {
var client = _a.client, withContractMeta = _a.withContractMeta;
var codec = client.contractCodec(Proxy.abi);

@@ -145,4 +144,3 @@ var data = Buffer.concat([Buffer.from(Proxy.bytecode, 'hex'), codec.encodeDeploy(_name)]);

Proxy.deploy = deploy;
function deployContract(client, _name, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps, _name) {
return __awaiter(this, void 0, void 0, function () {

@@ -152,6 +150,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, _name, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps, _name)];
case 1:
address = _a.sent();
return [2 /*return*/, Proxy.contract(client, address)];
return [2 /*return*/, Proxy.contract(deps.client, address)];
}

@@ -195,2 +193,2 @@ });

})(Proxy = exports.Proxy || (exports.Proxy = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRvci5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvc29sL0NyZWF0b3IuYWJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF1QztBQUN2QyxxQ0FBd0Y7QUFxQnhGLFNBQXNCLFdBQVcsQ0FDL0IsTUFBZ0IsRUFDaEIsSUFBWSxFQUNaLElBQWdCLEVBQ2hCLEtBQWMsRUFDZCxRQUF3RDs7Ozs7d0JBRXJDLHFCQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBQTs7b0JBQWpGLFVBQVUsR0FBRyxTQUFvRTtvQkFDdkYsc0JBQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFDOzs7O0NBQzdCO0FBVEQsa0NBU0M7QUFDRCxJQUFpQixPQUFPLENBaUV2QjtBQWpFRCxXQUFpQixPQUFPO0lBQ1Qsb0JBQVksR0FBRyxTQUFTLENBQUM7SUFDekIsV0FBRyxHQUNkLGtQQUFrUCxDQUFDO0lBQ3hPLGdCQUFRLEdBQ25CLDBrRkFBMGtGLENBQUM7SUFDaGtGLHdCQUFnQixHQUMzQiwwZ0ZBQTBnRixDQUFDO0lBQzdnRixTQUFnQixNQUFNLENBQUMsTUFBZ0IsRUFBRSxnQkFBd0I7UUFBeEIsaUNBQUEsRUFBQSx3QkFBd0I7UUFDL0QsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FB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RTtnQkFDSCxPQUFPLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDdEQsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDLEVBdkRnQixLQUFLLEdBQUwsYUFBSyxLQUFMLGFBQUssUUF1RHJCIiwic291cmNlc0NvbnRlbnQiOlsiLy9Db2RlIGdlbmVyYXRlZCBieSBzb2x0cy4gRE8gTk9UIEVESVQuXG5pbXBvcnQgeyBBZGRyZXNzLCBDYW5jZWxTdHJlYW1TaWduYWwsIENvbnRyYWN0Q29kZWMsIEV2ZW50LCBLZWNjYWsgfSBmcm9tICcuLi8uLi9pbmRleCc7XG5pbnRlcmZhY2UgUHJvdmlkZXIge1xuICBkZXBsb3koXG4gICAgZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBjb250cmFjdE1ldGE/OiB7XG4gICAgICBhYmk6IHN0cmluZztcbiAgICAgIGNvZGVIYXNoOiBVaW50OEFycmF5O1xuICAgIH1bXSxcbiAgKTogUHJvbWlzZTxBZGRyZXNzPjtcbiAgY2FsbChkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBjYWxsU2ltKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGxpc3RlbihcbiAgICBzaWduYXR1cmVzOiBzdHJpbmdbXSxcbiAgICBhZGRyZXNzOiBzdHJpbmcsXG4gICAgY2FsbGJhY2s6IChlcnI/OiBFcnJvciwgZXZlbnQ/OiBFdmVudCkgPT4gQ2FuY2VsU3RyZWFtU2lnbmFsIHwgdm9pZCxcbiAgICBzdGFydD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgIGVuZD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICApOiB1bmtub3duO1xuICBjb250cmFjdENvZGVjKGNvbnRyYWN0QUJJOiBzdHJpbmcpOiBDb250cmFjdENvZGVjO1xufVxuZXhwb3J0IHR5cGUgQ2FsbGVyID0gdHlwZW9mIGRlZmF1bHRDYWxsO1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlZmF1bHRDYWxsPE91dHB1dD4oXG4gIGNsaWVudDogUHJvdmlkZXIsXG4gIGFkZHI6IHN0cmluZyxcbiAgZGF0YTogVWludDhBcnJheSxcbiAgaXNTaW06IGJvb2xlYW4sXG4gIGNhbGxiYWNrOiAocmV0dXJuRGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4gT3V0cHV0LFxuKTogUHJvbWlzZTxPdXRwdXQ+IHtcbiAgY29uc3QgcmV0dXJuRGF0YSA9IGF3YWl0IChpc1NpbSA/IGNsaWVudC5jYWxsU2ltKGRhdGEsIGFkZHIpIDogY2xpZW50LmNhbGwoZGF0YSwgYWRkcikpO1xuICByZXR1cm4gY2FsbGJhY2socmV0dXJuRGF0YSk7XG59XG5leHBvcnQgbmFtZXNwYWNlIENyZWF0b3Ige1xuICBleHBvcnQgY29uc3QgY29udHJhY3ROYW1lID0gJ0NyZWF0b3InO1xuICBleHBvcnQgY29uc3QgYWJpID1cbiAgICAnW3tcImNvbnN0YW50XCI6ZmFsc2UsXCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcIl9uYW1lXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn1dLFwibmFtZVwiOlwiY3JlYXRlXCIsXCJvdXRwdXRzXCI6W3tcImludGVybmFsVHlwZVwiOlwiYWRkcmVzc1wiLFwibmFtZVwiOlwicHJveHlcIixcInR5cGVcIjpcImFkZHJlc3NcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJub25wYXlhYmxlXCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifV0nO1xuICBleHBvcnQgY29uc3QgYnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MTA1MDQ4MDYxMDAyMDYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMmI1NzYwMDAzNTYwZTAxYzgwNjNiNmE0NmIzYjE0NjEwMDMwNTc1YjYwMDA4MGZkNWI2MTAwYTc2MDA0ODAzNjAzNjAyMDgxMTAxNTYxMDA0NjU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA2NDAxMDAwMDAwMDA4MTExMTU2MTAwNjM1NzYwMDA4MGZkNWI4MjAxODM2MDIwODIwMTExMTU2MTAwNzU1NzYwMDA4MGZkNWI4MDM1OTA2MDIwMDE5MTg0NjAwMTgzMDI4NDAxMTE2NDAxMDAwMDAwMDA4MzExMTcxNTYxMDA5NzU3NjAwMDgwZmQ1YjkwOTE5MjkzOTE5MjkzOTA1MDUwNTA2MTAwZTk1NjViNjA0MDUxODA4MjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViNjAwMDgyODI2MDQwNTE2MTAwZjk5MDYxMDE1MzU2NWI4MDgwNjAyMDAxODI4MTAzODI1Mjg0ODQ4MjgxODE1MjYwMjAwMTkyNTA4MDgyODQzNzYwMDA4MTg0MDE1MjYwMWYxOTYwMWY4MjAxMTY5MDUwODA4MzAxOTI1MDUwNTA5MzUwNTA1MDUwNjA0MDUxODA5MTAzOTA2MDAwZjA4MDE1ODAxNTYxMDE0YTU3M2Q2MDAwODAzZTNkNjAwMGZkNWI1MDkwNTA5MjkxNTA1MDU2NWI2MTAzNmY4MDYxMDE2MTgzMzkwMTkwNTZmZTYwODA2MDQwNTI2MDQwNTE4MDYwMjAwMTYwNDA1MjgwNjAwMDgxNTI1MDYwMDA5MDgwNTE5MDYwMjAwMTkwNjEwMDI5OTI5MTkwNjEwMTMxNTY1YjUwMzQ4MDE1NjEwMDM2NTc2MDAwODBmZDViNTA2MDQwNTE2MTAzNmYzODAzODA2MTAzNmY4MzM5ODE4MTAxNjA0MDUyNjAyMDgxMTAxNTYxMDA1OTU3NjAwMDgwZmQ1YjgxMDE5MDgwODA1MTYwNDA1MTkzOTI5MTkwODQ2NDAxMDAwMDAwMDA4MjExMTU2MTAwNzk1NzYwMDA4MGZkNWI4MzgyMDE5MTUwNjAyMDgyMDE4NTgxMTExNTYxMDA4ZjU3NjAwMDgwZmQ1YjgyNTE4NjYwMDE4MjAyODMwMTExNjQwMTAwMDAwMDAwODIxMTE3MTU2MTAwYWM1NzYwMDA4MGZkNWI4MDgzNTI2MDIwODMwMTkyNTA1MDUwOTA4MDUxOTA2MDIwMDE5MDgwODM4MzYwMDA1YjgzODExMDE1NjEwMGUwNTc4MDgyMDE1MTgxODQwMTUyNjAyMDgxMDE5MDUwNjEwMGM1NTY1YjUwNTA1MDUwOTA1MDkwODEwMTkwNjAxZjE2ODAxNTYxMDEwZDU3ODA4MjAzODA1MTYwMDE4MzYwMjAwMzYxMDEwMDBhMDMxOTE2ODE1MjYwMjAwMTkxNTA1YjUwNjA0MDUyNTA1MDUwODA2MDAwOTA4MDUxOTA2MDIwMDE5MDYxMDEyYTkyOTE5MDYxMDEzMTU2NWI1MDUwNjEwMWQ2NTY1YjgyODA1NDYwMDE4MTYwMDExNjE1NjEwMTAwMDIwMzE2NjAwMjkwMDQ5MDYwMDA1MjYwMjA2MDAwMjA5MDYwMWYwMTYwMjA5MDA0ODEwMTkyODI2MDFmMTA2MTAxNzI1NzgwNTE2MGZmMTkxNjgzODAwMTE3ODU1NTYxMDFhMDU2NWI4MjgwMDE2MDAxMDE4NTU1ODIxNTYxMDFhMDU3OTE4MjAxNWI4MjgxMTExNTYxMDE5ZjU3ODI1MTgyNTU5MTYwMjAwMTkxOTA2MDAxMDE5MDYxMDE4NDU2NWI1YjUwOTA1MDYxMDFhZDkxOTA2MTAxYjE1NjViNTA5MDU2NWI2MTAxZDM5MTkwNWI4MDgyMTExNTYxMDFjZjU3NjAwMDgxNjAwMDkwNTU1MDYwMDEwMTYxMDFiNzU2NWI1MDkwNTY1YjkwNTY1YjYxMDE4YTgwNjEwMWU1NjAwMDM5NjAwMGYzZmU2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDA0MzYxMDYxMDAyYjU3NjAwMDM1NjBlMDFjODA2MzZkNGNlNjNjMTQ2MTAwMzA1NzViNjAwMDgwZmQ1YjYxMDAzODYxMDBiMzU2NWI2MDQwNTE4MDgwNjAyMDAxODI4MTAzODI1MjgzODE4MTUxODE1MjYwMjAwMTkxNTA4MDUxOTA2MDIwMDE5MDgwODM4MzYwMDA1YjgzODExMDE1NjEwMDc4NTc4MDgyMDE1MTgxODQwMTUyNjAyMDgxMDE5MDUwNjEwMDVkNTY1YjUwNTA1MDUwOTA1MDkwODEwMTkwNjAxZjE2ODAxNTYxMDBhNTU3ODA4MjAzODA1MTYwMDE4MzYwMjAwMzYxMDEwMDBhMDMxOTE2ODE1MjYwMjAwMTkxNTA1YjUwOTI1MDUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDYwNjAwMDgwNTQ2MDAxODE2MDAxMTYxNTYxMDEwMDAyMDMxNjYwMDI5MDA0ODA2MDFmMDE2MDIwODA5MTA0MDI2MDIwMDE2MDQwNTE5MDgxMDE2MDQwNTI4MDkyOTE5MDgxODE1MjYwMjAwMTgyODA1NDYwMDE4MTYwMDExNjE1NjEwMTAwMDIwMzE2NjAwMjkwMDQ4MDE1NjEwMTRiNTc4MDYwMWYxMDYxMDEyMDU3NjEwMTAwODA4MzU0MDQwMjgzNTI5MTYwMjAwMTkxNjEwMTRiNTY1YjgyMDE5MTkwNjAwMDUyNjAyMDYwMDAyMDkwNWI4MTU0ODE1MjkwNjAwMTAxOTA2MDIwMDE4MDgzMTE2MTAxMmU1NzgyOTAwMzYwMWYxNjgyMDE5MTViNTA1MDUwNTA1MDkwNTA5MDU2ZmVhMjY1NjI3YTdhNzIzMTU4MjA2Nzc0ZTZiZDEwNzE2NGE2M2Y0MmFiODk1MDQzMWE2ZDVlMDllZWQ0ZGEwYzA2NjA0OWRjOWRiNzI3OGJiZWIzNjQ3MzZmNmM2MzQzMDAwNTExMDAzMmEyNjU2MjdhN2E3MjMxNTgyMGNmNjRjMWRhOGRlOTcyZWIxZjlmMmI1ZTY3OTljN2FmMzM4NWQzZWU5YjA4YjUxZmI4ZDdiMDYwZmE3ZWI0ZTg2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGNvbnN0IGRlcGxveWVkQnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDA0MzYxMDYxMDAyYjU3NjAwMDM1NjBlMDFjODA2M2I2YTQ2YjNiMTQ2MTAwMzA1NzViNjAwMDgwZmQ1YjYxMDBhNzYwMDQ4MDM2MDM2MDIwODExMDE1NjEwMDQ2NTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDY0MDEwMDAwMDAwMDgxMTExNTYxMDA2MzU3NjAwMDgwZmQ1YjgyMDE4MzYwMjA4MjAxMTExNTYxMDA3NTU3NjAwMDgwZmQ1YjgwMzU5MDYwMjAwMTkxODQ2MDAxODMwMjg0MDExMTY0MDEwMDAwMDAwMDgzMTExNzE1NjEwMDk3NTc2MDAwODBmZDViOTA5MTkyOTM5MTkyOTM5MDUwNTA1MDYxMDBlOTU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDAwODI4MjYwNDA1MTYxMDBmOTkwNjEwMTUzNTY1YjgwODA2MDIwMDE4MjgxMDM4MjUyODQ4NDgyODE4MTUyNjAyMDAxOTI1MDgwODI4NDM3NjAwMDgxODQwMTUyNjAxZjE5NjAxZjgyMDExNjkwNTA4MDgzMDE5MjUwNTA1MDkzNTA1MDUwNTA2MDQwNTE4MDkxMDM5MDYwMDBmMDgwMTU4MDE1NjEwMTRhNTczZDYwMDA4MDNlM2Q2MDAwZmQ1YjUwOTA1MDkyOTE1MDUwNTY1YjYxMDM2ZjgwNjEwMTYxODMzOTAxOTA1NmZlNjA4MDYwNDA1MjYwNDA1MTgwNjAyMDAxNjA0MDUyODA2MDAwODE1MjUwNjAwMDkwODA1MTkwNjAyMDAxOTA2MTAwMjk5MjkxOTA2MTAxMzE1NjViNTAzNDgwMTU2MTAwMzY1NzYwMDA4MGZkNWI1MDYwNDA1MTYxMDM2ZjM4MDM4MDYxMDM2ZjgzMzk4MTgxMDE2MDQwNTI2MDIwODExMDE1NjEwMDU5NTc2MDAwODBmZDViODEwMTkwODA4MDUxNjA0MDUxOTM5MjkxOTA4NDY0MDEwMDAwMDAwMDgyMTExNTYxMDA3OTU3NjAwMDgwZmQ1YjgzODIwMTkxNTA2MDIwODIwMTg1ODExMTE1NjEwMDhmNTc2MDAwODBmZDViODI1MTg2NjAwMTgyMDI4MzAxMTE2NDAxMDAwMDAwMDA4MjExMTcxNTYxMDBhYzU3NjAwMDgwZmQ1YjgwODM1MjYwMjA4MzAxOTI1MDUwNTA5MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTAwZTA1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTAwYzU1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwMTBkNTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA2MDQwNTI1MDUwNTA4MDYwMDA5MDgwNTE5MDYwMjAwMTkwNjEwMTJhOTI5MTkwNjEwMTMxNTY1YjUwNTA2MTAxZDY1NjViODI4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDkwNjAwMDUyNjAyMDYwMDAyMDkwNjAxZjAxNjAyMDkwMDQ4MTAxOTI4MjYwMWYxMDYxMDE3MjU3ODA1MTYwZmYxOTE2ODM4MDAxMTc4NTU1NjEwMWEwNTY1YjgyODAwMTYwMDEwMTg1NTU4MjE1NjEwMWEwNTc5MTgyMDE1YjgyODExMTE1NjEwMTlmNTc4MjUxODI1NTkxNjAyMDAxOTE5MDYwMDEwMTkwNjEwMTg0NTY1YjViNTA5MDUwNjEwMWFkOTE5MDYxMDFiMTU2NWI1MDkwNTY1YjYxMDFkMzkxOTA1YjgwODIxMTE1NjEwMWNmNTc2MDAwODE2MDAwOTA1NTUwNjAwMTAxNjEwMWI3NTY1YjUwOTA1NjViOTA1NjViNjEwMThhODA2MTAxZTU2MDAwMzk2MDAwZjNmZTYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjEwMDJiNTc2MDAwMzU2MGUwMWM4MDYzNmQ0Y2U2M2MxNDYxMDAzMDU3NWI2MDAwODBmZDViNjEwMDM4NjEwMGIzNTY1YjYwNDA1MTgwODA2MDIwMDE4MjgxMDM4MjUyODM4MTgxNTE4MTUyNjAyMDAxOTE1MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTAwNzg1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTAwNWQ1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwMGE1NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5MjUwNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwNjA2MDAwODA1NDYwMDE4MTYwMDExNjE1NjEwMTAwMDIwMzE2NjAwMjkwMDQ4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTI5MTkwODE4MTUyNjAyMDAxODI4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDgwMTU2MTAxNGI1NzgwNjAxZjEwNjEwMTIwNTc2MTAxMDA4MDgzNTQwNDAyODM1MjkxNjAyMDAxOTE2MTAxNGI1NjViODIwMTkxOTA2MDAwNTI2MDIwNjAwMDIwOTA1YjgxNTQ4MTUyOTA2MDAxMDE5MDYwMjAwMTgwODMxMTYxMDEyZTU3ODI5MDAzNjAxZjE2ODIwMTkxNWI1MDUwNTA1MDUwOTA1MDkwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMDY3NzRlNmJkMTA3MTY0YTYzZjQyYWI4OTUwNDMxYTZkNWUwOWVlZDRkYTBjMDY2MDQ5ZGM5ZGI3Mjc4YmJlYjM2NDczNmY2YzYzNDMwMDA1MTEwMDMyYTI2NTYyN2E3YTcyMzE1ODIwY2Y2NGMxZGE4ZGU5NzJlYjFmOWYyYjVlNjc5OWM3YWYzMzg1ZDNlZTliMDhiNTFmYjhkN2IwNjBmYTdlYjRlODY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgZnVuY3Rpb24gZGVwbG95KGNsaWVudDogUHJvdmlkZXIsIHdpdGhDb250cmFjdE1ldGEgPSBmYWxzZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIGNvbnN0IGRhdGEgPSBCdWZmZXIuY29uY2F0KFtCdWZmZXIuZnJvbShieXRlY29kZSwgJ2hleCcpLCBjb2RlYy5lbmNvZGVEZXBsb3koKV0pO1xuICAgIHJldHVybiBjbGllbnQuZGVwbG95KFxuICAgICAgZGF0YSxcbiAgICAgIHdpdGhDb250cmFjdE1ldGFcbiAgICAgICAgPyBbXG4gICAgICAgICAgICB7IGFiaTogQ3JlYXRvci5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKENyZWF0b3IuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfSxcbiAgICAgICAgICAgIHsgYWJpOiBQcm94eS5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKFByb3h5LmRlcGxveWVkQnl0ZWNvZGUsICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpIH0sXG4gICAgICAgICAgXVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZXBsb3lDb250cmFjdChjbGllbnQ6IFByb3ZpZGVyLCB3aXRoQ29udHJhY3RNZXRhID0gZmFsc2UpOiBQcm9taXNlPENvbnRyYWN0PiB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IGRlcGxveShjbGllbnQsIHdpdGhDb250cmFjdE1ldGEpO1xuICAgIHJldHVybiBjb250cmFjdChjbGllbnQsIGFkZHJlc3MpO1xuICB9XG4gIGV4cG9ydCB0eXBlIENvbnRyYWN0ID0gUmV0dXJuVHlwZTx0eXBlb2YgY29udHJhY3Q+O1xuICBleHBvcnQgY29uc3QgY29udHJhY3QgPSAoY2xpZW50OiBQcm92aWRlciwgYWRkcmVzczogc3RyaW5nKSA9PlxuICAgICh7XG4gICAgICBuYW1lOiAnQ3JlYXRvcicsXG4gICAgICBhZGRyZXNzLFxuICAgICAgZnVuY3Rpb25zOiB7XG4gICAgICAgIGNyZWF0ZShcbiAgICAgICAgICBfbmFtZTogc3RyaW5nLFxuICAgICAgICAgIGNhbGwgPSBkZWZhdWx0Q2FsbCxcbiAgICAgICAgKTogUHJvbWlzZTx7XG4gICAgICAgICAgcHJveHk6IHN0cmluZztcbiAgICAgICAgfT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5jcmVhdGUoX25hbWUpO1xuICAgICAgICAgIHJldHVybiBjYWxsPHtcbiAgICAgICAgICAgIHByb3h5OiBzdHJpbmc7XG4gICAgICAgICAgfT4oY2xpZW50LCBhZGRyZXNzLCBkYXRhLCBmYWxzZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5jcmVhdGUoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgfSBhcyBjb25zdCk7XG4gIGV4cG9ydCBjb25zdCBlbmNvZGUgPSAoY2xpZW50OiBQcm92aWRlcikgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgY3JlYXRlOiAoX25hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gY29kZWMuZW5jb2RlRnVuY3Rpb25EYXRhKCdCNkE0NkIzQicsIF9uYW1lKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbiAgZXhwb3J0IGNvbnN0IGRlY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyLCBkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCB0b3BpY3M6IFVpbnQ4QXJyYXlbXSA9IFtdKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBjcmVhdGU6ICgpOiB7XG4gICAgICAgIHByb3h5OiBzdHJpbmc7XG4gICAgICB9ID0+IHtcbiAgICAgICAgY29uc3QgW3Byb3h5XSA9IGNvZGVjLmRlY29kZUZ1bmN0aW9uUmVzdWx0KCdCNkE0NkIzQicsIGRhdGEpO1xuICAgICAgICByZXR1cm4geyBwcm94eTogcHJveHkgfTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgUHJveHkge1xuICBleHBvcnQgY29uc3QgY29udHJhY3ROYW1lID0gJ1Byb3h5JztcbiAgZXhwb3J0IGNvbnN0IGFiaSA9XG4gICAgJ1t7XCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcIl9uYW1lXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJub25wYXlhYmxlXCIsXCJ0eXBlXCI6XCJjb25zdHJ1Y3RvclwifSx7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbXSxcIm5hbWVcIjpcImdldFwiLFwib3V0cHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcInN0cmluZ1wiLFwibmFtZVwiOlwiXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJ2aWV3XCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifV0nO1xuICBleHBvcnQgY29uc3QgYnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyNjA0MDUxODA2MDIwMDE2MDQwNTI4MDYwMDA4MTUyNTA2MDAwOTA4MDUxOTA2MDIwMDE5MDYxMDAyOTkyOTE5MDYxMDEzMTU2NWI1MDM0ODAxNTYxMDAzNjU3NjAwMDgwZmQ1YjUwNjA0MDUxNjEwMzZmMzgwMzgwNjEwMzZmODMzOTgxODEwMTYwNDA1MjYwMjA4MTEwMTU2MTAwNTk1NzYwMDA4MGZkNWI4MTAxOTA4MDgwNTE2MDQwNTE5MzkyOTE5MDg0NjQwMTAwMDAwMDAwODIxMTE1NjEwMDc5NTc2MDAwODBmZDViODM4MjAxOTE1MDYwMjA4MjAxODU4MTExMTU2MTAwOGY1NzYwMDA4MGZkNWI4MjUxODY2MDAxODIwMjgzMDExMTY0MDEwMDAwMDAwMDgyMTExNzE1NjEwMGFjNTc2MDAwODBmZDViODA4MzUyNjAyMDgzMDE5MjUwNTA1MDkwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDBlMDU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDBjNTU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTAxMGQ1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDYwNDA1MjUwNTA1MDgwNjAwMDkwODA1MTkwNjAyMDAxOTA2MTAxMmE5MjkxOTA2MTAxMzE1NjViNTA1MDYxMDFkNjU2NWI4MjgwNTQ2MDAxODE2MDAxMTYxNTYxMDEwMDAyMDMxNjYwMDI5MDA0OTA2MDAwNTI2MDIwNjAwMDIwOTA2MDFmMDE2MDIwOTAwNDgxMDE5MjgyNjAxZjEwNjEwMTcyNTc4MDUxNjBmZjE5MTY4MzgwMDExNzg1NTU2MTAxYTA1NjViODI4MDAxNjAwMTAxODU1NTgyMTU2MTAxYTA1NzkxODIwMTViODI4MTExMTU2MTAxOWY1NzgyNTE4MjU1OTE2MDIwMDE5MTkwNjAwMTAxOTA2MTAxODQ1NjViNWI1MDkwNTA2MTAxYWQ5MTkwNjEwMWIxNTY1YjUwOTA1NjViNjEwMWQzOTE5MDViODA4MjExMTU2MTAxY2Y1NzYwMDA4MTYwMDA5MDU1NTA2MDAxMDE2MTAxYjc1NjViNTA5MDU2NWI5MDU2NWI2MTAxOGE4MDYxMDFlNTYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMmI1NzYwMDAzNTYwZTAxYzgwNjM2ZDRjZTYzYzE0NjEwMDMwNTc1YjYwMDA4MGZkNWI2MTAwMzg2MTAwYjM1NjViNjA0MDUxODA4MDYwMjAwMTgyODEwMzgyNTI4MzgxODE1MTgxNTI2MDIwMDE5MTUwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDA3ODU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDA1ZDU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTAwYTU1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDkyNTA1MDUwNjA0MDUxODA5MTAzOTBmMzViNjA2MDYwMDA4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDgwNjAxZjAxNjAyMDgwOTEwNDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MjkxOTA4MTgxNTI2MDIwMDE4MjgwNTQ2MDAxODE2MDAxMTYxNTYxMDEwMDAyMDMxNjYwMDI5MDA0ODAxNTYxMDE0YjU3ODA2MDFmMTA2MTAxMjA1NzYxMDEwMDgwODM1NDA0MDI4MzUyOTE2MDIwMDE5MTYxMDE0YjU2NWI4MjAxOTE5MDYwMDA1MjYwMjA2MDAwMjA5MDViODE1NDgxNTI5MDYwMDEwMTkwNjAyMDAxODA4MzExNjEwMTJlNTc4MjkwMDM2MDFmMTY4MjAxOTE1YjUwNTA1MDUwNTA5MDUwOTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwNjc3NGU2YmQxMDcxNjRhNjNmNDJhYjg5NTA0MzFhNmQ1ZTA5ZWVkNGRhMGMwNjYwNDlkYzlkYjcyNzhiYmViMzY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjEwMDJiNTc2MDAwMzU2MGUwMWM4MDYzNmQ0Y2U2M2MxNDYxMDAzMDU3NWI2MDAwODBmZDViNjEwMDM4NjEwMGIzNTY1YjYwNDA1MTgwODA2MDIwMDE4MjgxMDM4MjUyODM4MTgxNTE4MTUyNjAyMDAxOTE1MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTAwNzg1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTAwNWQ1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwMGE1NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5MjUwNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwNjA2MDAwODA1NDYwMDE4MTYwMDExNjE1NjEwMTAwMDIwMzE2NjAwMjkwMDQ4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTI5MTkwODE4MTUyNjAyMDAxODI4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDgwMTU2MTAxNGI1NzgwNjAxZjEwNjEwMTIwNTc2MTAxMDA4MDgzNTQwNDAyODM1MjkxNjAyMDAxOTE2MTAxNGI1NjViODIwMTkxOTA2MDAwNTI2MDIwNjAwMDIwOTA1YjgxNTQ4MTUyOTA2MDAxMDE5MDYwMjAwMTgwODMxMTYxMDEyZTU3ODI5MDAzNjAxZjE2ODIwMTkxNWI1MDUwNTA1MDUwOTA1MDkwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMDY3NzRlNmJkMTA3MTY0YTYzZjQyYWI4OTUwNDMxYTZkNWUwOWVlZDRkYTBjMDY2MDQ5ZGM5ZGI3Mjc4YmJlYjM2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGZ1bmN0aW9uIGRlcGxveShjbGllbnQ6IFByb3ZpZGVyLCBfbmFtZTogc3RyaW5nLCB3aXRoQ29udHJhY3RNZXRhID0gZmFsc2UpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICBjb25zdCBkYXRhID0gQnVmZmVyLmNvbmNhdChbQnVmZmVyLmZyb20oYnl0ZWNvZGUsICdoZXgnKSwgY29kZWMuZW5jb2RlRGVwbG95KF9uYW1lKV0pO1xuICAgIHJldHVybiBjbGllbnQuZGVwbG95KFxuICAgICAgZGF0YSxcbiAgICAgIHdpdGhDb250cmFjdE1ldGFcbiAgICAgICAgPyBbXG4gICAgICAgICAgICB7IGFiaTogQ3JlYXRvci5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKENyZWF0b3IuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfSxcbiAgICAgICAgICAgIHsgYWJpOiBQcm94eS5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKFByb3h5LmRlcGxveWVkQnl0ZWNvZGUsICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpIH0sXG4gICAgICAgICAgXVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZXBsb3lDb250cmFjdChjbGllbnQ6IFByb3ZpZGVyLCBfbmFtZTogc3RyaW5nLCB3aXRoQ29udHJhY3RNZXRhID0gZmFsc2UpOiBQcm9taXNlPENvbnRyYWN0PiB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IGRlcGxveShjbGllbnQsIF9uYW1lLCB3aXRoQ29udHJhY3RNZXRhKTtcbiAgICByZXR1cm4gY29udHJhY3QoY2xpZW50LCBhZGRyZXNzKTtcbiAgfVxuICBleHBvcnQgdHlwZSBDb250cmFjdCA9IFJldHVyblR5cGU8dHlwZW9mIGNvbnRyYWN0PjtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0ID0gKGNsaWVudDogUHJvdmlkZXIsIGFkZHJlc3M6IHN0cmluZykgPT5cbiAgICAoe1xuICAgICAgbmFtZTogJ1Byb3h5JyxcbiAgICAgIGFkZHJlc3MsXG4gICAgICBmdW5jdGlvbnM6IHtcbiAgICAgICAgZ2V0KGNhbGwgPSBkZWZhdWx0Q2FsbCk6IFByb21pc2U8W3N0cmluZ10+IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gZW5jb2RlKGNsaWVudCkuZ2V0KCk7XG4gICAgICAgICAgcmV0dXJuIGNhbGw8W3N0cmluZ10+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgdHJ1ZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5nZXQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgfSBhcyBjb25zdCk7XG4gIGV4cG9ydCBjb25zdCBlbmNvZGUgPSAoY2xpZW50OiBQcm92aWRlcikgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJzZENENFNjNDJyk7XG4gICAgICB9LFxuICAgIH07XG4gIH07XG4gIGV4cG9ydCBjb25zdCBkZWNvZGUgPSAoY2xpZW50OiBQcm92aWRlciwgZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCwgdG9waWNzOiBVaW50OEFycmF5W10gPSBbXSkgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0OiAoKTogW3N0cmluZ10gPT4ge1xuICAgICAgICByZXR1cm4gY29kZWMuZGVjb2RlRnVuY3Rpb25SZXN1bHQoJzZENENFNjNDJywgZGF0YSk7XG4gICAgICB9LFxuICAgIH07XG4gIH07XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JlYXRvci5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvc29sL0NyZWF0b3IuYWJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF1QztBQUN2QyxxQ0FBd0Y7QUFxQnhGLFNBQXNCLFdBQVcsQ0FDL0IsTUFBZ0IsRUFDaEIsSUFBWSxFQUNaLElBQWdCLEVBQ2hCLEtBQWMsRUFDZCxRQUF3RDs7Ozs7d0JBRXJDLHFCQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBQTs7b0JBQWpGLFVBQVUsR0FBRyxTQUFvRTtvQkFDdkYsc0JBQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFDOzs7O0NBQzdCO0FBVEQsa0NBU0M7QUFDRCxJQUFpQixPQUFPLENBdUV2QjtBQXZFRCxXQUFpQixPQUFPO0lBQ1Qsb0JBQVksR0FBRyxTQUFTLENBQUM7SUFDekIsV0FBRyxHQUNkLGtQQUFrUCxDQUFDO0lBQ3hPLGdCQUFRLEdBQ25CLDBrRkFBMGtGLENBQUM7SUFDaGtGLHdCQUFnQixHQUMzQiwwZ0ZBQTBnRixDQUFDO0lBQzdnRixTQUFnQixNQUFNLENBQUMsRUFNdEI7WUFMQyxNQUFNLFlBQUEsRUFDTixnQkFBZ0Isc0JBQUE7UUFLaEIsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxD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QztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsRUF0RWdCLEtBQUssR0FBTCxhQUFLLEtBQUwsYUFBSyxRQXNFckIiLCJzb3VyY2VzQ29udGVudCI6WyIvL0NvZGUgZ2VuZXJhdGVkIGJ5IHNvbHRzLiBETyBOT1QgRURJVC5cbmltcG9ydCB7IEFkZHJlc3MsIENhbmNlbFN0cmVhbVNpZ25hbCwgQ29udHJhY3RDb2RlYywgRXZlbnQsIEtlY2NhayB9IGZyb20gJy4uLy4uL2luZGV4JztcbmludGVyZmFjZSBQcm92aWRlciB7XG4gIGRlcGxveShcbiAgICBkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGNvbnRyYWN0TWV0YT86IHtcbiAgICAgIGFiaTogc3RyaW5nO1xuICAgICAgY29kZUhhc2g6IFVpbnQ4QXJyYXk7XG4gICAgfVtdLFxuICApOiBQcm9taXNlPEFkZHJlc3M+O1xuICBjYWxsKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGNhbGxTaW0oZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgbGlzdGVuKFxuICAgIHNpZ25hdHVyZXM6IHN0cmluZ1tdLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBjYWxsYmFjazogKGVycj86IEVycm9yLCBldmVudD86IEV2ZW50KSA9PiBDYW5jZWxTdHJlYW1TaWduYWwgfCB2b2lkLFxuICAgIHN0YXJ0PzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgZW5kPzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICk6IHVua25vd247XG4gIGNvbnRyYWN0Q29kZWMoY29udHJhY3RBQkk6IHN0cmluZyk6IENvbnRyYWN0Q29kZWM7XG59XG5leHBvcnQgdHlwZSBDYWxsZXIgPSB0eXBlb2YgZGVmYXVsdENhbGw7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVmYXVsdENhbGw8T3V0cHV0PihcbiAgY2xpZW50OiBQcm92aWRlcixcbiAgYWRkcjogc3RyaW5nLFxuICBkYXRhOiBVaW50OEFycmF5LFxuICBpc1NpbTogYm9vbGVhbixcbiAgY2FsbGJhY2s6IChyZXR1cm5EYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiBPdXRwdXQsXG4pOiBQcm9taXNlPE91dHB1dD4ge1xuICBjb25zdCByZXR1cm5EYXRhID0gYXdhaXQgKGlzU2ltID8gY2xpZW50LmNhbGxTaW0oZGF0YSwgYWRkcikgOiBjbGllbnQuY2FsbChkYXRhLCBhZGRyKSk7XG4gIHJldHVybiBjYWxsYmFjayhyZXR1cm5EYXRhKTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgQ3JlYXRvciB7XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdE5hbWUgPSAnQ3JlYXRvcic7XG4gIGV4cG9ydCBjb25zdCBhYmkgPVxuICAgICdbe1wiY29uc3RhbnRcIjpmYWxzZSxcImlucHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcInN0cmluZ1wiLFwibmFtZVwiOlwiX25hbWVcIixcInR5cGVcIjpcInN0cmluZ1wifV0sXCJuYW1lXCI6XCJjcmVhdGVcIixcIm91dHB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJhZGRyZXNzXCIsXCJuYW1lXCI6XCJwcm94eVwiLFwidHlwZVwiOlwiYWRkcmVzc1wifV0sXCJwYXlhYmxlXCI6ZmFsc2UsXCJzdGF0ZU11dGFiaWxpdHlcIjpcIm5vbnBheWFibGVcIixcInR5cGVcIjpcImZ1bmN0aW9uXCJ9XSc7XG4gIGV4cG9ydCBjb25zdCBieXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYxMDUwNDgwNjEwMDIwNjAwMDM5NjAwMGYzZmU2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDA0MzYxMDYxMDAyYjU3NjAwMDM1NjBlMDFjODA2M2I2YTQ2YjNiMTQ2MTAwMzA1NzViNjAwMDgwZmQ1YjYxMDBhNzYwMDQ4MDM2MDM2MDIwODExMDE1NjEwMDQ2NTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDY0MDEwMDAwMDAwMDgxMTExNTYxMDA2MzU3NjAwMDgwZmQ1YjgyMDE4MzYwMjA4MjAxMTExNTYxMDA3NTU3NjAwMDgwZmQ1YjgwMzU5MDYwMjAwMTkxODQ2MDAxODMwMjg0MDExMTY0MDEwMDAwMDAwMDgzMTExNzE1NjEwMDk3NTc2MDAwODBmZDViOTA5MTkyOTM5MTkyOTM5MDUwNTA1MDYxMDBlOTU2NWI2MDQwNTE4MDgyNzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDAwODI4MjYwNDA1MTYxMDBmOTkwNjEwMTUzNTY1YjgwODA2MDIwMDE4MjgxMDM4MjUyODQ4NDgyODE4MTUyNjAyMDAxOTI1MDgwODI4NDM3NjAwMDgxODQwMTUyNjAxZjE5NjAxZjgyMDExNjkwNTA4MDgzMDE5MjUwNTA1MDkzNTA1MDUwNTA2MDQwNTE4MDkxMDM5MDYwMDBmMDgwMTU4MDE1NjEwMTRhNTczZDYwMDA4MDNlM2Q2MDAwZmQ1YjUwOTA1MDkyOTE1MDUwNTY1YjYxMDM2ZjgwNjEwMTYxODMzOTAxOTA1NmZlNjA4MDYwNDA1MjYwNDA1MTgwNjAyMDAxNjA0MDUyODA2MDAwODE1MjUwNjAwMDkwODA1MTkwNjAyMDAxOTA2MTAwMjk5MjkxOTA2MTAxMzE1NjViNTAzNDgwMTU2MTAwMzY1NzYwMDA4MGZkNWI1MDYwNDA1MTYxMDM2ZjM4MDM4MDYxMDM2ZjgzMzk4MTgxMDE2MDQwNTI2MDIwODExMDE1NjEwMDU5NTc2MDAwODBmZDViODEwMTkwODA4MDUxNjA0MDUxOTM5MjkxOTA4NDY0MDEwMDAwMDAwMDgyMTExNTYxMDA3OTU3NjAwMDgwZmQ1YjgzODIwMTkxNTA2MDIwODIwMTg1ODExMTE1NjEwMDhmNTc2MDAwODBmZDViODI1MTg2NjAwMTgyMDI4MzAxMTE2NDAxMDAwMDAwMDA4MjExMTcxNTYxMDBhYzU3NjAwMDgwZmQ1YjgwODM1MjYwMjA4MzAxOTI1MDUwNTA5MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTAwZTA1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTAwYzU1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwMTBkNTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA2MDQwNTI1MDUwNTA4MDYwMDA5MDgwNTE5MDYwMjAwMTkwNjEwMTJhOTI5MTkwNjEwMTMxNTY1YjUwNTA2MTAxZDY1NjViODI4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDkwNjAwMDUyNjAyMDYwMDAyMDkwNjAxZjAxNjAyMDkwMDQ4MTAxOTI4MjYwMWYxMDYxMDE3MjU3ODA1MTYwZmYxOTE2ODM4MDAxMTc4NTU1NjEwMWEwNTY1YjgyODAwMTYwMDEwMTg1NTU4MjE1NjEwMWEwNTc5MTgyMDE1YjgyODExMTE1NjEwMTlmNTc4MjUxODI1NTkxNjAyMDAxOTE5MDYwMDEwMTkwNjEwMTg0NTY1YjViNTA5MDUwNjEwMWFkOTE5MDYxMDFiMTU2NWI1MDkwNTY1YjYxMDFkMzkxOTA1YjgwODIxMTE1NjEwMWNmNTc2MDAwODE2MDAwOTA1NTUwNjAwMTAxNjEwMWI3NTY1YjUwOTA1NjViOTA1NjViNjEwMThhODA2MTAxZTU2MDAwMzk2MDAwZjNmZTYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjEwMDJiNTc2MDAwMzU2MGUwMWM4MDYzNmQ0Y2U2M2MxNDYxMDAzMDU3NWI2MDAwODBmZDViNjEwMDM4NjEwMGIzNTY1YjYwNDA1MTgwODA2MDIwMDE4MjgxMDM4MjUyODM4MTgxNTE4MTUyNjAyMDAxOTE1MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTAwNzg1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTAwNWQ1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwMGE1NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5MjUwNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwNjA2MDAwODA1NDYwMDE4MTYwMDExNjE1NjEwMTAwMDIwMzE2NjAwMjkwMDQ4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTI5MTkwODE4MTUyNjAyMDAxODI4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDgwMTU2MTAxNGI1NzgwNjAxZjEwNjEwMTIwNTc2MTAxMDA4MDgzNTQwNDAyODM1MjkxNjAyMDAxOTE2MTAxNGI1NjViODIwMTkxOTA2MDAwNTI2MDIwNjAwMDIwOTA1YjgxNTQ4MTUyOTA2MDAxMDE5MDYwMjAwMTgwODMxMTYxMDEyZTU3ODI5MDAzNjAxZjE2ODIwMTkxNWI1MDUwNTA1MDUwOTA1MDkwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMDY3NzRlNmJkMTA3MTY0YTYzZjQyYWI4OTUwNDMxYTZkNWUwOWVlZDRkYTBjMDY2MDQ5ZGM5ZGI3Mjc4YmJlYjM2NDczNmY2YzYzNDMwMDA1MTEwMDMyYTI2NTYyN2E3YTcyMzE1ODIwY2Y2NGMxZGE4ZGU5NzJlYjFmOWYyYjVlNjc5OWM3YWYzMzg1ZDNlZTliMDhiNTFmYjhkN2IwNjBmYTdlYjRlODY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjEwMDJiNTc2MDAwMzU2MGUwMWM4MDYzYjZhNDZiM2IxNDYxMDAzMDU3NWI2MDAwODBmZDViNjEwMGE3NjAwNDgwMzYwMzYwMjA4MTEwMTU2MTAwNDY1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwNjQwMTAwMDAwMDAwODExMTE1NjEwMDYzNTc2MDAwODBmZDViODIwMTgzNjAyMDgyMDExMTE1NjEwMDc1NTc2MDAwODBmZDViODAzNTkwNjAyMDAxOTE4NDYwMDE4MzAyODQwMTExNjQwMTAwMDAwMDAwODMxMTE3MTU2MTAwOTc1NzYwMDA4MGZkNWI5MDkxOTI5MzkxOTI5MzkwNTA1MDUwNjEwMGU5NTY1YjYwNDA1MTgwODI3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MjgyNjA0MDUxNjEwMGY5OTA2MTAxNTM1NjViODA4MDYwMjAwMTgyODEwMzgyNTI4NDg0ODI4MTgxNTI2MDIwMDE5MjUwODA4Mjg0Mzc2MDAwODE4NDAxNTI2MDFmMTk2MDFmODIwMTE2OTA1MDgwODMwMTkyNTA1MDUwOTM1MDUwNTA1MDYwNDA1MTgwOTEwMzkwNjAwMGYwODAxNTgwMTU2MTAxNGE1NzNkNjAwMDgwM2UzZDYwMDBmZDViNTA5MDUwOTI5MTUwNTA1NjViNjEwMzZmODA2MTAxNjE4MzM5MDE5MDU2ZmU2MDgwNjA0MDUyNjA0MDUxODA2MDIwMDE2MDQwNTI4MDYwMDA4MTUyNTA2MDAwOTA4MDUxOTA2MDIwMDE5MDYxMDAyOTkyOTE5MDYxMDEzMTU2NWI1MDM0ODAxNTYxMDAzNjU3NjAwMDgwZmQ1YjUwNjA0MDUxNjEwMzZmMzgwMzgwNjEwMzZmODMzOTgxODEwMTYwNDA1MjYwMjA4MTEwMTU2MTAwNTk1NzYwMDA4MGZkNWI4MTAxOTA4MDgwNTE2MDQwNTE5MzkyOTE5MDg0NjQwMTAwMDAwMDAwODIxMTE1NjEwMDc5NTc2MDAwODBmZDViODM4MjAxOTE1MDYwMjA4MjAxODU4MTExMTU2MTAwOGY1NzYwMDA4MGZkNWI4MjUxODY2MDAxODIwMjgzMDExMTY0MDEwMDAwMDAwMDgyMTExNzE1NjEwMGFjNTc2MDAwODBmZDViODA4MzUyNjAyMDgzMDE5MjUwNTA1MDkwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDBlMDU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDBjNTU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTAxMGQ1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDYwNDA1MjUwNTA1MDgwNjAwMDkwODA1MTkwNjAyMDAxOTA2MTAxMmE5MjkxOTA2MTAxMzE1NjViNTA1MDYxMDFkNjU2NWI4MjgwNTQ2MDAxODE2MDAxMTYxNTYxMDEwMDAyMDMxNjYwMDI5MDA0OTA2MDAwNTI2MDIwNjAwMDIwOTA2MDFmMDE2MDIwOTAwNDgxMDE5MjgyNjAxZjEwNjEwMTcyNTc4MDUxNjBmZjE5MTY4MzgwMDExNzg1NTU2MTAxYTA1NjViODI4MDAxNjAwMTAxODU1NTgyMTU2MTAxYTA1NzkxODIwMTViODI4MTExMTU2MTAxOWY1NzgyNTE4MjU1OTE2MDIwMDE5MTkwNjAwMTAxOTA2MTAxODQ1NjViNWI1MDkwNTA2MTAxYWQ5MTkwNjEwMWIxNTY1YjUwOTA1NjViNjEwMWQzOTE5MDViODA4MjExMTU2MTAxY2Y1NzYwMDA4MTYwMDA5MDU1NTA2MDAxMDE2MTAxYjc1NjViNTA5MDU2NWI5MDU2NWI2MTAxOGE4MDYxMDFlNTYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMmI1NzYwMDAzNTYwZTAxYzgwNjM2ZDRjZTYzYzE0NjEwMDMwNTc1YjYwMDA4MGZkNWI2MTAwMzg2MTAwYjM1NjViNjA0MDUxODA4MDYwMjAwMTgyODEwMzgyNTI4MzgxODE1MTgxNTI2MDIwMDE5MTUwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDA3ODU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDA1ZDU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTAwYTU1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDkyNTA1MDUwNjA0MDUxODA5MTAzOTBmMzViNjA2MDYwMDA4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDgwNjAxZjAxNjAyMDgwOTEwNDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MjkxOTA4MTgxNTI2MDIwMDE4MjgwNTQ2MDAxODE2MDAxMTYxNTYxMDEwMDAyMDMxNjYwMDI5MDA0ODAxNTYxMDE0YjU3ODA2MDFmMTA2MTAxMjA1NzYxMDEwMDgwODM1NDA0MDI4MzUyOTE2MDIwMDE5MTYxMDE0YjU2NWI4MjAxOTE5MDYwMDA1MjYwMjA2MDAwMjA5MDViODE1NDgxNTI5MDYwMDEwMTkwNjAyMDAxODA4MzExNjEwMTJlNTc4MjkwMDM2MDFmMTY4MjAxOTE1YjUwNTA1MDUwNTA5MDUwOTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwNjc3NGU2YmQxMDcxNjRhNjNmNDJhYjg5NTA0MzFhNmQ1ZTA5ZWVkNGRhMGMwNjYwNDlkYzlkYjcyNzhiYmViMzY0NzM2ZjZjNjM0MzAwMDUxMTAwMzJhMjY1NjI3YTdhNzIzMTU4MjBjZjY0YzFkYThkZTk3MmViMWY5ZjJiNWU2Nzk5YzdhZjMzODVkM2VlOWIwOGI1MWZiOGQ3YjA2MGZhN2ViNGU4NjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBmdW5jdGlvbiBkZXBsb3koe1xuICAgIGNsaWVudCxcbiAgICB3aXRoQ29udHJhY3RNZXRhLFxuICB9OiB7XG4gICAgY2xpZW50OiBQcm92aWRlcjtcbiAgICB3aXRoQ29udHJhY3RNZXRhPzogYm9vbGVhbjtcbiAgfSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIGNvbnN0IGRhdGEgPSBCdWZmZXIuY29uY2F0KFtCdWZmZXIuZnJvbShieXRlY29kZSwgJ2hleCcpLCBjb2RlYy5lbmNvZGVEZXBsb3koKV0pO1xuICAgIHJldHVybiBjbGllbnQuZGVwbG95KFxuICAgICAgZGF0YSxcbiAgICAgIHdpdGhDb250cmFjdE1ldGFcbiAgICAgICAgPyBbXG4gICAgICAgICAgICB7IGFiaTogQ3JlYXRvci5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKENyZWF0b3IuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfSxcbiAgICAgICAgICAgIHsgYWJpOiBQcm94eS5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKFByb3h5LmRlcGxveWVkQnl0ZWNvZGUsICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpIH0sXG4gICAgICAgICAgXVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZXBsb3lDb250cmFjdChkZXBzOiB7IGNsaWVudDogUHJvdmlkZXI7IHdpdGhDb250cmFjdE1ldGE/OiBib29sZWFuIH0pOiBQcm9taXNlPENvbnRyYWN0PiB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IGRlcGxveShkZXBzKTtcbiAgICByZXR1cm4gY29udHJhY3QoZGVwcy5jbGllbnQsIGFkZHJlc3MpO1xuICB9XG4gIGV4cG9ydCB0eXBlIENvbnRyYWN0ID0gUmV0dXJuVHlwZTx0eXBlb2YgY29udHJhY3Q+O1xuICBleHBvcnQgY29uc3QgY29udHJhY3QgPSAoY2xpZW50OiBQcm92aWRlciwgYWRkcmVzczogc3RyaW5nKSA9PlxuICAgICh7XG4gICAgICBuYW1lOiAnQ3JlYXRvcicsXG4gICAgICBhZGRyZXNzLFxuICAgICAgZnVuY3Rpb25zOiB7XG4gICAgICAgIGNyZWF0ZShcbiAgICAgICAgICBfbmFtZTogc3RyaW5nLFxuICAgICAgICAgIGNhbGwgPSBkZWZhdWx0Q2FsbCxcbiAgICAgICAgKTogUHJvbWlzZTx7XG4gICAgICAgICAgcHJveHk6IHN0cmluZztcbiAgICAgICAgfT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5jcmVhdGUoX25hbWUpO1xuICAgICAgICAgIHJldHVybiBjYWxsPHtcbiAgICAgICAgICAgIHByb3h5OiBzdHJpbmc7XG4gICAgICAgICAgfT4oY2xpZW50LCBhZGRyZXNzLCBkYXRhLCBmYWxzZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5jcmVhdGUoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgfSBhcyBjb25zdCk7XG4gIGV4cG9ydCBjb25zdCBlbmNvZGUgPSAoY2xpZW50OiBQcm92aWRlcikgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgY3JlYXRlOiAoX25hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gY29kZWMuZW5jb2RlRnVuY3Rpb25EYXRhKCdCNkE0NkIzQicsIF9uYW1lKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbiAgZXhwb3J0IGNvbnN0IGRlY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyLCBkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCB0b3BpY3M6IFVpbnQ4QXJyYXlbXSA9IFtdKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBjcmVhdGU6ICgpOiB7XG4gICAgICAgIHByb3h5OiBzdHJpbmc7XG4gICAgICB9ID0+IHtcbiAgICAgICAgY29uc3QgW3Byb3h5XSA9IGNvZGVjLmRlY29kZUZ1bmN0aW9uUmVzdWx0KCdCNkE0NkIzQicsIGRhdGEpO1xuICAgICAgICByZXR1cm4geyBwcm94eTogcHJveHkgfTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgUHJveHkge1xuICBleHBvcnQgY29uc3QgY29udHJhY3ROYW1lID0gJ1Byb3h5JztcbiAgZXhwb3J0IGNvbnN0IGFiaSA9XG4gICAgJ1t7XCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcIl9uYW1lXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJub25wYXlhYmxlXCIsXCJ0eXBlXCI6XCJjb25zdHJ1Y3RvclwifSx7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbXSxcIm5hbWVcIjpcImdldFwiLFwib3V0cHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcInN0cmluZ1wiLFwibmFtZVwiOlwiXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJ2aWV3XCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifV0nO1xuICBleHBvcnQgY29uc3QgYnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyNjA0MDUxODA2MDIwMDE2MDQwNTI4MDYwMDA4MTUyNTA2MDAwOTA4MDUxOTA2MDIwMDE5MDYxMDAyOTkyOTE5MDYxMDEzMTU2NWI1MDM0ODAxNTYxMDAzNjU3NjAwMDgwZmQ1YjUwNjA0MDUxNjEwMzZmMzgwMzgwNjEwMzZmODMzOTgxODEwMTYwNDA1MjYwMjA4MTEwMTU2MTAwNTk1NzYwMDA4MGZkNWI4MTAxOTA4MDgwNTE2MDQwNTE5MzkyOTE5MDg0NjQwMTAwMDAwMDAwODIxMTE1NjEwMDc5NTc2MDAwODBmZDViODM4MjAxOTE1MDYwMjA4MjAxODU4MTExMTU2MTAwOGY1NzYwMDA4MGZkNWI4MjUxODY2MDAxODIwMjgzMDExMTY0MDEwMDAwMDAwMDgyMTExNzE1NjEwMGFjNTc2MDAwODBmZDViODA4MzUyNjAyMDgzMDE5MjUwNTA1MDkwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDBlMDU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDBjNTU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTAxMGQ1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDYwNDA1MjUwNTA1MDgwNjAwMDkwODA1MTkwNjAyMDAxOTA2MTAxMmE5MjkxOTA2MTAxMzE1NjViNTA1MDYxMDFkNjU2NWI4MjgwNTQ2MDAxODE2MDAxMTYxNTYxMDEwMDAyMDMxNjYwMDI5MDA0OTA2MDAwNTI2MDIwNjAwMDIwOTA2MDFmMDE2MDIwOTAwNDgxMDE5MjgyNjAxZjEwNjEwMTcyNTc4MDUxNjBmZjE5MTY4MzgwMDExNzg1NTU2MTAxYTA1NjViODI4MDAxNjAwMTAxODU1NTgyMTU2MTAxYTA1NzkxODIwMTViODI4MTExMTU2MTAxOWY1NzgyNTE4MjU1OTE2MDIwMDE5MTkwNjAwMTAxOTA2MTAxODQ1NjViNWI1MDkwNTA2MTAxYWQ5MTkwNjEwMWIxNTY1YjUwOTA1NjViNjEwMWQzOTE5MDViODA4MjExMTU2MTAxY2Y1NzYwMDA4MTYwMDA5MDU1NTA2MDAxMDE2MTAxYjc1NjViNTA5MDU2NWI5MDU2NWI2MTAxOGE4MDYxMDFlNTYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMmI1NzYwMDAzNTYwZTAxYzgwNjM2ZDRjZTYzYzE0NjEwMDMwNTc1YjYwMDA4MGZkNWI2MTAwMzg2MTAwYjM1NjViNjA0MDUxODA4MDYwMjAwMTgyODEwMzgyNTI4MzgxODE1MTgxNTI2MDIwMDE5MTUwODA1MTkwNjAyMDAxOTA4MDgzODM2MDAwNWI4MzgxMTAxNTYxMDA3ODU3ODA4MjAxNTE4MTg0MDE1MjYwMjA4MTAxOTA1MDYxMDA1ZDU2NWI1MDUwNTA1MDkwNTA5MDgxMDE5MDYwMWYxNjgwMTU2MTAwYTU1NzgwODIwMzgwNTE2MDAxODM2MDIwMDM2MTAxMDAwYTAzMTkxNjgxNTI2MDIwMDE5MTUwNWI1MDkyNTA1MDUwNjA0MDUxODA5MTAzOTBmMzViNjA2MDYwMDA4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDgwNjAxZjAxNjAyMDgwOTEwNDAyNjAyMDAxNjA0MDUxOTA4MTAxNjA0MDUyODA5MjkxOTA4MTgxNTI2MDIwMDE4MjgwNTQ2MDAxODE2MDAxMTYxNTYxMDEwMDAyMDMxNjYwMDI5MDA0ODAxNTYxMDE0YjU3ODA2MDFmMTA2MTAxMjA1NzYxMDEwMDgwODM1NDA0MDI4MzUyOTE2MDIwMDE5MTYxMDE0YjU2NWI4MjAxOTE5MDYwMDA1MjYwMjA2MDAwMjA5MDViODE1NDgxNTI5MDYwMDEwMTkwNjAyMDAxODA4MzExNjEwMTJlNTc4MjkwMDM2MDFmMTY4MjAxOTE1YjUwNTA1MDUwNTA5MDUwOTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwNjc3NGU2YmQxMDcxNjRhNjNmNDJhYjg5NTA0MzFhNmQ1ZTA5ZWVkNGRhMGMwNjYwNDlkYzlkYjcyNzhiYmViMzY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjEwMDJiNTc2MDAwMzU2MGUwMWM4MDYzNmQ0Y2U2M2MxNDYxMDAzMDU3NWI2MDAwODBmZDViNjEwMDM4NjEwMGIzNTY1YjYwNDA1MTgwODA2MDIwMDE4MjgxMDM4MjUyODM4MTgxNTE4MTUyNjAyMDAxOTE1MDgwNTE5MDYwMjAwMTkwODA4MzgzNjAwMDViODM4MTEwMTU2MTAwNzg1NzgwODIwMTUxODE4NDAxNTI2MDIwODEwMTkwNTA2MTAwNWQ1NjViNTA1MDUwNTA5MDUwOTA4MTAxOTA2MDFmMTY4MDE1NjEwMGE1NTc4MDgyMDM4MDUxNjAwMTgzNjAyMDAzNjEwMTAwMGEwMzE5MTY4MTUyNjAyMDAxOTE1MDViNTA5MjUwNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwNjA2MDAwODA1NDYwMDE4MTYwMDExNjE1NjEwMTAwMDIwMzE2NjAwMjkwMDQ4MDYwMWYwMTYwMjA4MDkxMDQwMjYwMjAwMTYwNDA1MTkwODEwMTYwNDA1MjgwOTI5MTkwODE4MTUyNjAyMDAxODI4MDU0NjAwMTgxNjAwMTE2MTU2MTAxMDAwMjAzMTY2MDAyOTAwNDgwMTU2MTAxNGI1NzgwNjAxZjEwNjEwMTIwNTc2MTAxMDA4MDgzNTQwNDAyODM1MjkxNjAyMDAxOTE2MTAxNGI1NjViODIwMTkxOTA2MDAwNTI2MDIwNjAwMDIwOTA1YjgxNTQ4MTUyOTA2MDAxMDE5MDYwMjAwMTgwODMxMTYxMDEyZTU3ODI5MDAzNjAxZjE2ODIwMTkxNWI1MDUwNTA1MDUwOTA1MDkwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMDY3NzRlNmJkMTA3MTY0YTYzZjQyYWI4OTUwNDMxYTZkNWUwOWVlZDRkYTBjMDY2MDQ5ZGM5ZGI3Mjc4YmJlYjM2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGZ1bmN0aW9uIGRlcGxveShcbiAgICB7XG4gICAgICBjbGllbnQsXG4gICAgICB3aXRoQ29udHJhY3RNZXRhLFxuICAgIH06IHtcbiAgICAgIGNsaWVudDogUHJvdmlkZXI7XG4gICAgICB3aXRoQ29udHJhY3RNZXRhPzogYm9vbGVhbjtcbiAgICB9LFxuICAgIF9uYW1lOiBzdHJpbmcsXG4gICk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIGNvbnN0IGRhdGEgPSBCdWZmZXIuY29uY2F0KFtCdWZmZXIuZnJvbShieXRlY29kZSwgJ2hleCcpLCBjb2RlYy5lbmNvZGVEZXBsb3koX25hbWUpXSk7XG4gICAgcmV0dXJuIGNsaWVudC5kZXBsb3koXG4gICAgICBkYXRhLFxuICAgICAgd2l0aENvbnRyYWN0TWV0YVxuICAgICAgICA/IFtcbiAgICAgICAgICAgIHsgYWJpOiBDcmVhdG9yLmFiaSwgY29kZUhhc2g6IG5ldyBLZWNjYWsoMjU2KS51cGRhdGUoQ3JlYXRvci5kZXBsb3llZEJ5dGVjb2RlLCAnaGV4JykuZGlnZXN0KCdiaW5hcnknKSB9LFxuICAgICAgICAgICAgeyBhYmk6IFByb3h5LmFiaSwgY29kZUhhc2g6IG5ldyBLZWNjYWsoMjU2KS51cGRhdGUoUHJveHkuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfSxcbiAgICAgICAgICBdXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICk7XG4gIH1cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveUNvbnRyYWN0KFxuICAgIGRlcHM6IHtcbiAgICAgIGNsaWVudDogUHJvdmlkZXI7XG4gICAgICB3aXRoQ29udHJhY3RNZXRhPzogYm9vbGVhbjtcbiAgICB9LFxuICAgIF9uYW1lOiBzdHJpbmcsXG4gICk6IFByb21pc2U8Q29udHJhY3Q+IHtcbiAgICBjb25zdCBhZGRyZXNzID0gYXdhaXQgZGVwbG95KGRlcHMsIF9uYW1lKTtcbiAgICByZXR1cm4gY29udHJhY3QoZGVwcy5jbGllbnQsIGFkZHJlc3MpO1xuICB9XG4gIGV4cG9ydCB0eXBlIENvbnRyYWN0ID0gUmV0dXJuVHlwZTx0eXBlb2YgY29udHJhY3Q+O1xuICBleHBvcnQgY29uc3QgY29udHJhY3QgPSAoY2xpZW50OiBQcm92aWRlciwgYWRkcmVzczogc3RyaW5nKSA9PlxuICAgICh7XG4gICAgICBuYW1lOiAnUHJveHknLFxuICAgICAgYWRkcmVzcyxcbiAgICAgIGZ1bmN0aW9uczoge1xuICAgICAgICBnZXQoY2FsbCA9IGRlZmF1bHRDYWxsKTogUHJvbWlzZTxbc3RyaW5nXT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5nZXQoKTtcbiAgICAgICAgICByZXR1cm4gY2FsbDxbc3RyaW5nXT4oY2xpZW50LCBhZGRyZXNzLCBkYXRhLCB0cnVlLCAoZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGRlY29kZShjbGllbnQsIGRhdGEpLmdldCgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSBhcyBjb25zdCxcbiAgICB9IGFzIGNvbnN0KTtcbiAgZXhwb3J0IGNvbnN0IGVuY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIGNvZGVjLmVuY29kZUZ1bmN0aW9uRGF0YSgnNkQ0Q0U2M0MnKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbiAgZXhwb3J0IGNvbnN0IGRlY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyLCBkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCB0b3BpY3M6IFVpbnQ4QXJyYXlbXSA9IFtdKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBnZXQ6ICgpOiBbc3RyaW5nXSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5kZWNvZGVGdW5jdGlvblJlc3VsdCgnNkQ0Q0U2M0MnLCBkYXRhKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==

@@ -20,4 +20,10 @@ /// <reference types="node" />

export const deployedBytecode = "608060405234801561001057600080fd5b506004361061002b5760003560e01c80638f970df014610030575b600080fd5b61003861003a565b005b607b7f6a35688e78094e86ac7dd4593423fa89415105dc68a0766b27106861ef4102146040518080602001806020018381038352600d8152602001807f53616e74612045756c61726961000000000000000000000000000000000000008152506020018381038252600a8152602001807f53616e74204a75616d65000000000000000000000000000000000000000000008152506020019250505060405180910390a27f696e74657276616c3200000000000000000000000000000000000000000000007f6576656e743100000000000000000000000000000000000000000000000000007f5f20df97ee573ab8b43581cf3ff905f3507ad2329b7efe6f92e802b4fad031c17359c99d4ebf520619ee7f806f11d90a9cac02ce06336004604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001848103845260068152602001807f64696e696e670000000000000000000000000000000000000000000000000000815250602001848103835260098152602001807f627265616b666173740000000000000000000000000000000000000000000000815250602001848103825260178152602001807f6261636f6e2c6265616e732c656767732c746f6d61746f000000000000000000815250602001965050505050505060405180910390a356fea265627a7a72315820a6cd65593c9a8f5ed08f75519d9dd5664bcdf3a4bb67c8f507e1a69ed348f04f64736f6c63430005110032";
export function deploy(client: Provider, withContractMeta?: boolean): Promise<string>;
export function deployContract(client: Provider, withContractMeta?: boolean): Promise<Contract>;
export function deploy({ client, withContractMeta, }: {
client: Provider;
withContractMeta?: boolean;
}): Promise<string>;
export function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
}): Promise<Contract>;
type EventRegistry = typeof events;

@@ -24,0 +30,0 @@ export type EventName = keyof EventRegistry;

@@ -62,4 +62,4 @@ "use strict";

Eventer.deployedBytecode = '608060405234801561001057600080fd5b506004361061002b5760003560e01c80638f970df014610030575b600080fd5b61003861003a565b005b607b7f6a35688e78094e86ac7dd4593423fa89415105dc68a0766b27106861ef4102146040518080602001806020018381038352600d8152602001807f53616e74612045756c61726961000000000000000000000000000000000000008152506020018381038252600a8152602001807f53616e74204a75616d65000000000000000000000000000000000000000000008152506020019250505060405180910390a27f696e74657276616c3200000000000000000000000000000000000000000000007f6576656e743100000000000000000000000000000000000000000000000000007f5f20df97ee573ab8b43581cf3ff905f3507ad2329b7efe6f92e802b4fad031c17359c99d4ebf520619ee7f806f11d90a9cac02ce06336004604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001848103845260068152602001807f64696e696e670000000000000000000000000000000000000000000000000000815250602001848103835260098152602001807f627265616b666173740000000000000000000000000000000000000000000000815250602001848103825260178152602001807f6261636f6e2c6265616e732c656767732c746f6d61746f000000000000000000815250602001965050505050505060405180910390a356fea265627a7a72315820a6cd65593c9a8f5ed08f75519d9dd5664bcdf3a4bb67c8f507e1a69ed348f04f64736f6c63430005110032';
function deploy(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deploy(_a) {
var client = _a.client, withContractMeta = _a.withContractMeta;
var codec = client.contractCodec(Eventer.abi);

@@ -72,4 +72,3 @@ var data = Buffer.concat([Buffer.from(Eventer.bytecode, 'hex'), codec.encodeDeploy()]);

Eventer.deploy = deploy;
function deployContract(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps) {
return __awaiter(this, void 0, void 0, function () {

@@ -79,6 +78,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps)];
case 1:
address = _a.sent();
return [2 /*return*/, Eventer.contract(client, address)];
return [2 /*return*/, Eventer.contract(deps.client, address)];
}

@@ -190,2 +189,2 @@ });

})(Eventer = exports.Eventer || (exports.Eventer = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRlci5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvc29sL0V2ZW50ZXIuYWJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF1QztBQUN2QyxxQ0FBcUc7QUFxQnJHLFNBQXNCLFdBQVcsQ0FDL0IsTUFBZ0IsRUFDaEIsSUFBWSxFQUNaLElBQWdCLEVBQ2hCLEtBQWMsRUFDZCxRQUF3RDs7Ozs7d0JBRXJDLHFCQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBQTs7b0JBQWpGLFVBQVUsR0FBRyxTQUFvRTtvQkFDdkYsc0JBQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFDOzs7O0NBQzdCO0FBVEQsa0NBU0M7QUFDRCxJQUFpQixPQUFPLENBZ052QjtBQWhORCxXQUFpQixPQUFPO0lBQ1Qsb0JBQVksR0FBRyxTQUFTLENBQUM7SUFDekIsV0FBRyxHQUNkLG9sQ0FBb2xDLENBQUM7SUFDMWtDLGdCQUFRLEdBQ25CLDA2Q0FBMDZDLENBQUM7SUFDaDZDLHdCQUFnQixHQUMzQiw0MkNBQTQyQyxDQUFDO0lBQy8yQyxTQUFnQixNQUFNLENBQUMsTUFBZ0IsRUFBRSxnQkFBd0I7UUFBeEIsaUNBQUEsRUFBQSx3QkFBd0I7UUFDL0QsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUs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RUFBRSxLQUFLLFFBQUEsRUFBRSxhQUFhLFFBSXJDLENBQUM7Z0JBQ0YsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLENBQUM7WUFDOUUsQ0FBQztZQUNELFFBQVEsRUFBRTtnQkFDUixPQUFPO1lBQ1QsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDLEVBaE5nQixPQUFPLEdBQVAsZUFBTyxLQUFQLGVBQU8sUUFnTnZCIiwic291cmNlc0NvbnRlbnQiOlsiLy9Db2RlIGdlbmVyYXRlZCBieSBzb2x0cy4gRE8gTk9UIEVESVQuXG5pbXBvcnQgeyBBZGRyZXNzLCBDYW5jZWxTdHJlYW1TaWduYWwsIENvbnRyYWN0Q29kZWMsIEV2ZW50LCBLZWNjYWssIGxpc3RlbmVyRm9yIH0gZnJvbSAnLi4vLi4vaW5kZXgnO1xuaW50ZXJmYWNlIFByb3ZpZGVyIHtcbiAgZGVwbG95KFxuICAgIGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgY29udHJhY3RNZXRhPzoge1xuICAgICAgYWJpOiBzdHJpbmc7XG4gICAgICBjb2RlSGFzaDogVWludDhBcnJheTtcbiAgICB9W10sXG4gICk6IFByb21pc2U8QWRkcmVzcz47XG4gIGNhbGwoZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgY2FsbFNpbShkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBsaXN0ZW4oXG4gICAgc2lnbmF0dXJlczogc3RyaW5nW10sXG4gICAgYWRkcmVzczogc3RyaW5nLFxuICAgIGNhbGxiYWNrOiAoZXJyPzogRXJyb3IsIGV2ZW50PzogRXZlbnQpID0+IENhbmNlbFN0cmVhbVNpZ25hbCB8IHZvaWQsXG4gICAgc3RhcnQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgICBlbmQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgKTogdW5rbm93bjtcbiAgY29udHJhY3RDb2RlYyhjb250cmFjdEFCSTogc3RyaW5nKTogQ29udHJhY3RDb2RlYztcbn1cbmV4cG9ydCB0eXBlIENhbGxlciA9IHR5cGVvZiBkZWZhdWx0Q2FsbDtcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWZhdWx0Q2FsbDxPdXRwdXQ+KFxuICBjbGllbnQ6IFByb3ZpZGVyLFxuICBhZGRyOiBzdHJpbmcsXG4gIGRhdGE6IFVpbnQ4QXJyYXksXG4gIGlzU2ltOiBib29sZWFuLFxuICBjYWxsYmFjazogKHJldHVybkRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IE91dHB1dCxcbik6IFByb21pc2U8T3V0cHV0PiB7XG4gIGNvbnN0IHJldHVybkRhdGEgPSBhd2FpdCAoaXNTaW0gPyBjbGllbnQuY2FsbFNpbShkYXRhLCBhZGRyKSA6IGNsaWVudC5jYWxsKGRhdGEsIGFkZHIpKTtcbiAgcmV0dXJuIGNhbGxiYWNrKHJldHVybkRhdGEpO1xufVxuZXhwb3J0IG5hbWVzcGFjZSBFdmVudGVyIHtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0TmFtZSA9ICdFdmVudGVyJztcbiAgZXhwb3J0IGNvbnN0IGFiaSA9XG4gICAgJ1t7XCJhbm9ueW1vdXNcIjpmYWxzZSxcImlucHV0c1wiOlt7XCJpbmRleGVkXCI6dHJ1ZSxcImludGVybmFsVHlwZVwiOlwiYnl0ZXMzMlwiLFwibmFtZVwiOlwiZXZlbnRJZFwiLFwidHlwZVwiOlwiYnl0ZXMzMlwifSx7XCJpbmRleGVkXCI6dHJ1ZSxcImludGVybmFsVHlwZVwiOlwiYnl0ZXMzMlwiLFwibmFtZVwiOlwiaW50ZXJ2YWxJZFwiLFwidHlwZVwiOlwiYnl0ZXMzMlwifSx7XCJpbmRleGVkXCI6ZmFsc2UsXCJpbnRlcm5hbFR5cGVcIjpcImFkZHJlc3NcIixcIm5hbWVcIjpcImV2ZW50QWRkcmVzc1wiLFwidHlwZVwiOlwiYWRkcmVzc1wifSx7XCJpbmRleGVkXCI6ZmFsc2UsXCJpbnRlcm5hbFR5cGVcIjpcInN0cmluZ1wiLFwibmFtZVwiOlwibmFtZXNwYWNlXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcIm5hbWVcIixcInR5cGVcIjpcInN0cmluZ1wifSx7XCJpbmRleGVkXCI6ZmFsc2UsXCJpbnRlcm5hbFR5cGVcIjpcImFkZHJlc3NcIixcIm5hbWVcIjpcImNvbnRyb2xsZXJcIixcInR5cGVcIjpcImFkZHJlc3NcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJ1aW50MjU2XCIsXCJuYW1lXCI6XCJ0aHJlc2hvbGRcIixcInR5cGVcIjpcInVpbnQyNTZcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcIm1ldGFkYXRhXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn1dLFwibmFtZVwiOlwiSW5pdFwiLFwidHlwZVwiOlwiZXZlbnRcIn0se1wiYW5vbnltb3VzXCI6ZmFsc2UsXCJpbnB1dHNcIjpbe1wiaW5kZXhlZFwiOnRydWUsXCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwidGltZXN0YW1wXCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcInBsYWNlXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcInBvc3RhbEFkZHJlc3NcIixcInR5cGVcIjpcInN0cmluZ1wifV0sXCJuYW1lXCI6XCJNb25vUmFtcGFnZVwiLFwidHlwZVwiOlwiZXZlbnRcIn0se1wiY29uc3RhbnRcIjpmYWxzZSxcImlucHV0c1wiOltdLFwibmFtZVwiOlwiYW5ub3VuY2VcIixcIm91dHB1dHNcIjpbXSxcInBheWFibGVcIjpmYWxzZSxcInN0YXRlTXV0YWJpbGl0eVwiOlwibm9ucGF5YWJsZVwiLFwidHlwZVwiOlwiZnVuY3Rpb25cIn1dJztcbiAgZXhwb3J0IGNvbnN0IGJ5dGVjb2RlID1cbiAgICAnNjA4MDYwNDA1MjM0ODAxNTYwMGY1NzYwMDA4MGZkNWI1MDYxMDJiNTgwNjEwMDFmNjAwMDM5NjAwMGYzZmU2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDA0MzYxMDYxMDAyYjU3NjAwMDM1NjBlMDFjODA2MzhmOTcwZGYwMTQ2MTAwMzA1NzViNjAwMDgwZmQ1YjYxMDAzODYxMDAzYTU2NWIwMDViNjA3YjdmNmEzNTY4OGU3ODA5NGU4NmFjN2RkNDU5MzQyM2ZhODk0MTUxMDVkYzY4YTA3NjZiMjcxMDY4NjFlZjQxMDIxNDYwNDA1MTgwODA2MDIwMDE4MDYwMjAwMTgzODEwMzgzNTI2MDBkODE1MjYwMjAwMTgwN2Y1MzYxNmU3NDYxMjA0NTc1NmM2MTcyNjk2MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAyMDAxODM4MTAzODI1MjYwMGE4MTUyNjAyMDAxODA3ZjUzNjE2ZTc0MjA0YTc1NjE2ZDY1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDIwMDE5MjUwNTA1MDYwNDA1MTgwOTEwMzkwYTI3ZjY5NmU3NDY1NzI3NjYxNmMzMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3ZjY1NzY2NTZlNzQzMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3ZjVmMjBkZjk3ZWU1NzNhYjhiNDM1ODFjZjNmZjkwNWYzNTA3YWQyMzI5YjdlZmU2ZjkyZTgwMmI0ZmFkMDMxYzE3MzU5Yzk5ZDRlYmY1MjA2MTllZTdmODA2ZjExZDkwYTljYWMwMmNlMDYzMzYwMDQ2MDQwNTE4MDg0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MDYwMjAwMTgwNjAyMDAxODU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg0ODE1MjYwMjAwMTgwNjAyMDAxODQ4MTAzODQ1MjYwMDY4MTUyNjAyMDAxODA3ZjY0Njk2ZTY5NmU2NzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDIwMDE4NDgxMDM4MzUyNjAwOTgxNTI2MDIwMDE4MDdmNjI3MjY1NjE2YjY2NjE3Mzc0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMjAwMTg0ODEwMzgyNTI2MDE3ODE1MjYwMjAwMTgwN2Y2MjYxNjM2ZjZlMmM2MjY1NjE2ZTczMmM2NTY3Njc3MzJjNzQ2ZjZkNjE3NDZmMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAyMDAxOTY1MDUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTM1NmZlYTI2NTYyN2E3YTcyMzE1ODIwYTZjZDY1NTkzYzlhOGY1ZWQwOGY3NTUxOWQ5ZGQ1NjY0YmNkZjNhNGJiNjdjOGY1MDdlMWE2OWVkMzQ4ZjA0ZjY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjEwMDJiNTc2MDAwMzU2MGUwMWM4MDYzOGY5NzBkZjAxNDYxMDAzMDU3NWI2MDAwODBmZDViNjEwMDM4NjEwMDNhNTY1YjAwNWI2MDdiN2Y2YTM1Njg4ZTc4MDk0ZTg2YWM3ZGQ0NTkzNDIzZmE4OTQxNTEwNWRjNjhhMDc2NmIyNzEwNjg2MWVmNDEwMjE0NjA0MDUxODA4MDYwMjAwMTgwNjAyMDAxODM4MTAzODM1MjYwMGQ4MTUyNjAyMDAxODA3ZjUzNjE2ZTc0NjEyMDQ1NzU2YzYxNzI2OTYxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDIwMDE4MzgxMDM4MjUyNjAwYTgxNTI2MDIwMDE4MDdmNTM2MTZlNzQyMDRhNzU2MTZkNjUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMjAwMTkyNTA1MDUwNjA0MDUxODA5MTAzOTBhMjdmNjk2ZTc0NjU3Mjc2NjE2YzMyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdmNjU3NjY1NmU3NDMxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdmNWYyMGRmOTdlZTU3M2FiOGI0MzU4MWNmM2ZmOTA1ZjM1MDdhZDIzMjliN2VmZTZmOTJlODAyYjRmYWQwMzFjMTczNTljOTlkNGViZjUyMDYxOWVlN2Y4MDZmMTFkOTBhOWNhYzAyY2UwNjMzNjAwNDYwNDA1MTgwODQ3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTgwNjAyMDAxODA2MDIwMDE4NTczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODQ4MTUyNjAyMDAxODA2MDIwMDE4NDgxMDM4NDUyNjAwNjgxNTI2MDIwMDE4MDdmNjQ2OTZlNjk2ZTY3MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMjAwMTg0ODEwMzgzNTI2MDA5ODE1MjYwMjAwMTgwN2Y2MjcyNjU2MTZiNjY2MTczNzQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAyMDAxODQ4MTAzODI1MjYwMTc4MTUyNjAyMDAxODA3ZjYyNjE2MzZmNmUyYzYyNjU2MTZlNzMyYzY1Njc2NzczMmM3NDZmNmQ2MTc0NmYwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDIwMDE5NjUwNTA1MDUwNTA1MDUwNjA0MDUxODA5MTAzOTBhMzU2ZmVhMjY1NjI3YTdhNzIzMTU4MjBhNmNkNjU1OTNjOWE4ZjVlZDA4Zjc1NTE5ZDlkZDU2NjRiY2RmM2E0YmI2N2M4ZjUwN2UxYTY5ZWQzNDhmMDRmNjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBmdW5jdGlvbiBkZXBsb3koY2xpZW50OiBQcm92aWRlciwgd2l0aENvbnRyYWN0TWV0YSA9IGZhbHNlKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgY29uc3QgZGF0YSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKGJ5dGVjb2RlLCAnaGV4JyksIGNvZGVjLmVuY29kZURlcGxveSgpXSk7XG4gICAgcmV0dXJuIGNsaWVudC5kZXBsb3koXG4gICAgICBkYXRhLFxuICAgICAgd2l0aENvbnRyYWN0TWV0YVxuICAgICAgICA/IFt7IGFiaTogRXZlbnRlci5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKEV2ZW50ZXIuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfV1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgKTtcbiAgfVxuICBleHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVwbG95Q29udHJhY3QoY2xpZW50OiBQcm92aWRlciwgd2l0aENvbnRyYWN0TWV0YSA9IGZhbHNlKTogUHJvbWlzZTxDb250cmFjdD4ge1xuICAgIGNvbnN0IGFkZHJlc3MgPSBhd2FpdCBkZXBsb3koY2xpZW50LCB3aXRoQ29udHJhY3RNZXRhKTtcbiAgICByZXR1cm4gY29udHJhY3QoY2xpZW50LCBhZGRyZXNzKTtcbiAgfVxuICB0eXBlIEV2ZW50UmVnaXN0cnkgPSB0eXBlb2YgZXZlbnRzO1xuICBleHBvcnQgdHlwZSBFdmVudE5hbWUgPSBrZXlvZiBFdmVudFJlZ2lzdHJ5O1xuICBleHBvcnQgdHlwZSBUYWdnZWRQYXlsb2FkPFQgZXh0ZW5kcyBFdmVudE5hbWU+ID0gUmV0dXJuVHlwZTxFdmVudFJlZ2lzdHJ5W1RdWyd0YWdnZWQnXT4gJiB7XG4gICAgZXZlbnQ6IEV2ZW50O1xuICB9O1xuICBleHBvcnQgdHlwZSBTb2xpZGl0eUV2ZW50PFQgZXh0ZW5kcyBFdmVudE5hbWU+ID0gVGFnZ2VkUGF5bG9hZDxUPlsncGF5bG9hZCddO1xuICBleHBvcnQgdHlwZSBUeXBlZExpc3RlbmVyPFQgZXh0ZW5kcyBFdmVudE5hbWU+ID0gKFxuICAgIGNhbGxiYWNrOiAoZXJyPzogRXJyb3IsIGV2ZW50PzogVGFnZ2VkUGF5bG9hZDxUPikgPT4gdm9pZCxcbiAgICBzdGFydD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgIGVuZD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICApID0+IHVua25vd247XG4gIGNvbnN0IGV2ZW50cyA9IHtcbiAgICBJbml0OiB7XG4gICAgICBzaWduYXR1cmU6ICc1RjIwREY5N0VFNTczQUI4QjQzNTgxQ0YzRkY5MDVGMzUwN0FEMjMyOUI3RUZFNkY5MkU4MDJCNEZBRDAzMUMxJyxcbiAgICAgIHRhZ2dlZDogKFxuICAgICAgICBldmVudElkOiBCdWZmZXIsXG4gICAgICAgIGludGVydmFsSWQ6IEJ1ZmZlcixcbiAgICAgICAgZXZlbnRBZGRyZXNzOiBzdHJpbmcsXG4gICAgICAgIG5hbWVzcGFjZTogc3RyaW5nLFxuICAgICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICAgIGNvbnRyb2xsZXI6IHN0cmluZyxcbiAgICAgICAgdGhyZXNob2xkOiBudW1iZXIsXG4gICAgICAgIG1ldGFkYXRhOiBzdHJpbmcsXG4gICAgICApID0+XG4gICAgICAgICh7XG4gICAgICAgICAgbmFtZTogJ0luaXQnLFxuICAgICAgICAgIHBheWxvYWQ6IHtcbiAgICAgICAgICAgIGV2ZW50SWQ6IGV2ZW50SWQsXG4gICAgICAgICAgICBpbnRlcnZhbElkOiBpbnRlcnZhbElkLFxuICAgICAgICAgICAgZXZlbnRBZGRyZXNzOiBldmVudEFkZHJlc3MsXG4gICAgICAgICAgICBuYW1lc3BhY2U6IG5hbWVzcGFjZSxcbiAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICBjb250cm9sbGVyOiBjb250cm9sbGVyLFxuICAgICAgICAgICAgdGhyZXNob2xkOiB0aHJlc2hvbGQsXG4gICAgICAgICAgICBtZXRhZGF0YTogbWV0YWRhdGEsXG4gICAgICAgICAgfSBhcyBjb25zdCxcbiAgICAgICAgfSBhcyBjb25zdCksXG4gICAgfSBhcyBjb25zdCxcbiAgICBNb25vUmFtcGFnZToge1xuICAgICAgc2lnbmF0dXJlOiAnNkEzNTY4OEU3ODA5NEU4NkFDN0RENDU5MzQyM0ZBODk0MTUxMDVEQzY4QTA3NjZCMjcxMDY4NjFFRjQxMDIxNCcsXG4gICAgICB0YWdnZWQ6ICh0aW1lc3RhbXA6IG51bWJlciwgcGxhY2U6IHN0cmluZywgcG9zdGFsQWRkcmVzczogc3RyaW5nKSA9PlxuICAgICAgICAoe1xuICAgICAgICAgIG5hbWU6ICdNb25vUmFtcGFnZScsXG4gICAgICAgICAgcGF5bG9hZDogeyB0aW1lc3RhbXA6IHRpbWVzdGFtcCwgcGxhY2U6IHBsYWNlLCBwb3N0YWxBZGRyZXNzOiBwb3N0YWxBZGRyZXNzIH0gYXMgY29uc3QsXG4gICAgICAgIH0gYXMgY29uc3QpLFxuICAgIH0gYXMgY29uc3QsXG4gIH0gYXMgY29uc3Q7XG4gIGV4cG9ydCB0eXBlIENvbnRyYWN0ID0gUmV0dXJuVHlwZTx0eXBlb2YgY29udHJhY3Q+O1xuICBleHBvcnQgY29uc3QgY29udHJhY3QgPSAoY2xpZW50OiBQcm92aWRlciwgYWRkcmVzczogc3RyaW5nKSA9PlxuICAgICh7XG4gICAgICBuYW1lOiAnRXZlbnRlcicsXG4gICAgICBhZGRyZXNzLFxuICAgICAgZnVuY3Rpb25zOiB7XG4gICAgICAgIGFubm91bmNlKGNhbGwgPSBkZWZhdWx0Q2FsbCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5hbm5vdW5jZSgpO1xuICAgICAgICAgIHJldHVybiBjYWxsPHZvaWQ+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgZmFsc2UsIChkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlKGNsaWVudCwgZGF0YSkuYW5ub3VuY2UoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgICBsaXN0ZW5lcnM6IHtcbiAgICAgICAgSW5pdChcbiAgICAgICAgICBjYWxsYmFjazogKFxuICAgICAgICAgICAgZXJyPzogRXJyb3IsXG4gICAgICAgICAgICBldmVudD86IHtcbiAgICAgICAgICAgICAgZXZlbnRJZDogQnVmZmVyO1xuICAgICAgICAgICAgICBpbnRlcnZhbElkOiBCdWZmZXI7XG4gICAgICAgICAgICAgIGV2ZW50QWRkcmVzczogc3RyaW5nO1xuICAgICAgICAgICAgICBuYW1lc3BhY2U6IHN0cmluZztcbiAgICAgICAgICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgICAgICAgICBjb250cm9sbGVyOiBzdHJpbmc7XG4gICAgICAgICAgICAgIHRocmVzaG9sZDogbnVtYmVyO1xuICAgICAgICAgICAgICBtZXRhZGF0YTogc3RyaW5nO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICApID0+IENhbmNlbFN0cmVhbVNpZ25hbCB8IHZvaWQsXG4gICAgICAgICAgc3RhcnQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgICAgICAgICBlbmQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgICAgICAgKTogdW5rbm93biB7XG4gICAgICAgICAgcmV0dXJuIGNsaWVudC5saXN0ZW4oXG4gICAgICAgICAgICBbJzVGMjBERjk3RUU1NzNBQjhCNDM1ODFDRjNGRjkwNUYzNTA3QUQyMzI5QjdFRkU2RjkyRTgwMkI0RkFEMDMxQzEnXSxcbiAgICAgICAgICAgIGFkZHJlc3MsXG4gICAgICAgICAgICAoZXJyPzogRXJyb3IsIGV2ZW50PzogRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgaWYgKGVycikge1xuICAgICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayhlcnIpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJldHVybiBjYWxsYmFjayh1bmRlZmluZWQsIGRlY29kZShjbGllbnQsIGV2ZW50Py5sb2cuZGF0YSwgZXZlbnQ/LmxvZy50b3BpY3MpLkluaXQoKSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3RhcnQsXG4gICAgICAgICAgICBlbmQsXG4gICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgICAgTW9ub1JhbXBhZ2UoXG4gICAgICAgICAgY2FsbGJhY2s6IChcbiAgICAgICAgICAgIGVycj86IEVycm9yLFxuICAgICAgICAgICAgZXZlbnQ/OiB7XG4gICAgICAgICAgICAgIHRpbWVzdGFtcDogbnVtYmVyO1xuICAgICAgICAgICAgICBwbGFjZTogc3RyaW5nO1xuICAgICAgICAgICAgICBwb3N0YWxBZGRyZXNzOiBzdHJpbmc7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICkgPT4gQ2FuY2VsU3RyZWFtU2lnbmFsIHwgdm9pZCxcbiAgICAgICAgICBzdGFydD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgICAgICAgIGVuZD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgICAgICApOiB1bmtub3duIHtcbiAgICAgICAgICByZXR1cm4gY2xpZW50Lmxpc3RlbihcbiAgICAgICAgICAgIFsnNkEzNTY4OEU3ODA5NEU4NkFDN0RENDU5MzQyM0ZBODk0MTUxMDVEQzY4QTA3NjZCMjcxMDY4NjFFRjQxMDIxNCddLFxuICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgIChlcnI/OiBFcnJvciwgZXZlbnQ/OiBFdmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKHVuZGVmaW5lZCwgZGVjb2RlKGNsaWVudCwgZXZlbnQ/LmxvZy5kYXRhLCBldmVudD8ubG9nLnRvcGljcykuTW9ub1JhbXBhZ2UoKSk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgc3RhcnQsXG4gICAgICAgICAgICBlbmQsXG4gICAgICAgICAgKTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgICBsaXN0ZW5lckZvcjogPFQgZXh0ZW5kcyBFdmVudE5hbWU+KGV2ZW50TmFtZXM6IFRbXSk6IFR5cGVkTGlzdGVuZXI8VD4gPT5cbiAgICAgICAgKGxpc3RlbmVyRm9yKGNsaWVudCwgYWRkcmVzcywgZXZlbnRzLCBkZWNvZGUsIGV2ZW50TmFtZXMpIGFzIHVua25vd24pIGFzIFR5cGVkTGlzdGVuZXI8VD4sXG4gICAgICBsaXN0ZW5lcjogbGlzdGVuZXJGb3IoXG4gICAgICAgIGNsaWVudCxcbiAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgZXZlbnRzLFxuICAgICAgICBkZWNvZGUsXG4gICAgICAgIE9iamVjdC5rZXlzKGV2ZW50cykgYXMgRXZlbnROYW1lW10sXG4gICAgICApIGFzIFR5cGVkTGlzdGVuZXI8RXZlbnROYW1lPixcbiAgICB9IGFzIGNvbnN0KTtcbiAgZXhwb3J0IGNvbnN0IGVuY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBhbm5vdW5jZTogKCkgPT4ge1xuICAgICAgICByZXR1cm4gY29kZWMuZW5jb2RlRnVuY3Rpb25EYXRhKCc4Rjk3MERGMCcpO1xuICAgICAgfSxcbiAgICB9O1xuICB9O1xuICBleHBvcnQgY29uc3QgZGVjb2RlID0gKGNsaWVudDogUHJvdmlkZXIsIGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQsIHRvcGljczogVWludDhBcnJheVtdID0gW10pID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIEluaXQ6ICgpOiB7XG4gICAgICAgIGV2ZW50SWQ6IEJ1ZmZlcjtcbiAgICAgICAgaW50ZXJ2YWxJZDogQnVmZmVyO1xuICAgICAgICBldmVudEFkZHJlc3M6IHN0cmluZztcbiAgICAgICAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gICAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgICAgY29udHJvbGxlcjogc3RyaW5nO1xuICAgICAgICB0aHJlc2hvbGQ6IG51bWJlcjtcbiAgICAgICAgbWV0YWRhdGE6IHN0cmluZztcbiAgICAgIH0gPT4ge1xuICAgICAgICBjb25zdCBbXG4gICAgICAgICAgZXZlbnRJZCxcbiAgICAgICAgICBpbnRlcnZhbElkLFxuICAgICAgICAgIGV2ZW50QWRkcmVzcyxcbiAgICAgICAgICBuYW1lc3BhY2UsXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBjb250cm9sbGVyLFxuICAgICAgICAgIHRocmVzaG9sZCxcbiAgICAgICAgICBtZXRhZGF0YSxcbiAgICAgICAgXSA9IGNvZGVjLmRlY29kZUV2ZW50TG9nKCc1RjIwREY5N0VFNTczQUI4QjQzNTgxQ0YzRkY5MDVGMzUwN0FEMjMyOUI3RUZFNkY5MkU4MDJCNEZBRDAzMUMxJywgZGF0YSwgdG9waWNzKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBldmVudElkOiBldmVudElkLFxuICAgICAgICAgIGludGVydmFsSWQ6IGludGVydmFsSWQsXG4gICAgICAgICAgZXZlbnRBZGRyZXNzOiBldmVudEFkZHJlc3MsXG4gICAgICAgICAgbmFtZXNwYWNlOiBuYW1lc3BhY2UsXG4gICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICBjb250cm9sbGVyOiBjb250cm9sbGVyLFxuICAgICAgICAgIHRocmVzaG9sZDogdGhyZXNob2xkLFxuICAgICAgICAgIG1ldGFkYXRhOiBtZXRhZGF0YSxcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgICBNb25vUmFtcGFnZTogKCk6IHtcbiAgICAgICAgdGltZXN0YW1wOiBudW1iZXI7XG4gICAgICAgIHBsYWNlOiBzdHJpbmc7XG4gICAgICAgIHBvc3RhbEFkZHJlc3M6IHN0cmluZztcbiAgICAgIH0gPT4ge1xuICAgICAgICBjb25zdCBbdGltZXN0YW1wLCBwbGFjZSwgcG9zdGFsQWRkcmVzc10gPSBjb2RlYy5kZWNvZGVFdmVudExvZyhcbiAgICAgICAgICAnNkEzNTY4OEU3ODA5NEU4NkFDN0RENDU5MzQyM0ZBODk0MTUxMDVEQzY4QTA3NjZCMjcxMDY4NjFFRjQxMDIxNCcsXG4gICAgICAgICAgZGF0YSxcbiAgICAgICAgICB0b3BpY3MsXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB7IHRpbWVzdGFtcDogdGltZXN0YW1wLCBwbGFjZTogcGxhY2UsIHBvc3RhbEFkZHJlc3M6IHBvc3RhbEFkZHJlc3MgfTtcbiAgICAgIH0sXG4gICAgICBhbm5vdW5jZTogKCk6IHZvaWQgPT4ge1xuICAgICAgICByZXR1cm47XG4gICAgICB9LFxuICAgIH07XG4gIH07XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZlbnRlci5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvc29sL0V2ZW50ZXIuYWJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF1QztBQUN2QyxxQ0FBcUc7QUFxQnJHLFNBQXNCLFdBQVcsQ0FDL0IsTUFBZ0IsRUFDaEIsSUFBWSxFQUNaLElBQWdCLEVBQ2hCLEtBQWMsRUFDZCxRQUF3RDs7Ozs7d0JBRXJDLHFCQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBQTs7b0JBQWpGLFVBQVUsR0FBRyxTQUFvRTtvQkFDdkYsc0JBQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFDOzs7O0NBQzdCO0FBVEQsa0NBU0M7QUFDRCxJQUFpQixPQUFPLENBc052QjtBQXRORCxXQUFpQixPQUFPO0lBQ1Qsb0JBQVksR0FBRyxTQUFTLENBQUM7SUFDekIsV0FBRyxHQUNkLG9sQ0FBb2xDLENBQUM7SUFDMWtDLGdCQUFRLEdBQ25CLDA2Q0FBMDZDLENBQUM7SUFDaDZDLHdCQUFnQixHQUMzQiw0MkNBQTQyQyxDQUFDO0lBQy8yQyxTQUFnQixNQUFNLENBQUMsRUFNdEI7WUFMQyxNQUFNLFlBQUEsRUFDTixnQkFBZ0Isc0JBQUE7UUFLaEIsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FB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LE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxDQUFDO1lBQzlFLENBQUM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsT0FBTztZQUNULENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxFQXROZ0IsT0FBTyxHQUFQLGVBQU8sS0FBUCxlQUFPLFFBc052QiIsInNvdXJjZXNDb250ZW50IjpbIi8vQ29kZSBnZW5lcmF0ZWQgYnkgc29sdHMuIERPIE5PVCBFRElULlxuaW1wb3J0IHsgQWRkcmVzcywgQ2FuY2VsU3RyZWFtU2lnbmFsLCBDb250cmFjdENvZGVjLCBFdmVudCwgS2VjY2FrLCBsaXN0ZW5lckZvciB9IGZyb20gJy4uLy4uL2luZGV4JztcbmludGVyZmFjZSBQcm92aWRlciB7XG4gIGRlcGxveShcbiAgICBkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGNvbnRyYWN0TWV0YT86IHtcbiAgICAgIGFiaTogc3RyaW5nO1xuICAgICAgY29kZUhhc2g6IFVpbnQ4QXJyYXk7XG4gICAgfVtdLFxuICApOiBQcm9taXNlPEFkZHJlc3M+O1xuICBjYWxsKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGNhbGxTaW0oZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgbGlzdGVuKFxuICAgIHNpZ25hdHVyZXM6IHN0cmluZ1tdLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBjYWxsYmFjazogKGVycj86IEVycm9yLCBldmVudD86IEV2ZW50KSA9PiBDYW5jZWxTdHJlYW1TaWduYWwgfCB2b2lkLFxuICAgIHN0YXJ0PzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgZW5kPzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICk6IHVua25vd247XG4gIGNvbnRyYWN0Q29kZWMoY29udHJhY3RBQkk6IHN0cmluZyk6IENvbnRyYWN0Q29kZWM7XG59XG5leHBvcnQgdHlwZSBDYWxsZXIgPSB0eXBlb2YgZGVmYXVsdENhbGw7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVmYXVsdENhbGw8T3V0cHV0PihcbiAgY2xpZW50OiBQcm92aWRlcixcbiAgYWRkcjogc3RyaW5nLFxuICBkYXRhOiBVaW50OEFycmF5LFxuICBpc1NpbTogYm9vbGVhbixcbiAgY2FsbGJhY2s6IChyZXR1cm5EYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiBPdXRwdXQsXG4pOiBQcm9taXNlPE91dHB1dD4ge1xuICBjb25zdCByZXR1cm5EYXRhID0gYXdhaXQgKGlzU2ltID8gY2xpZW50LmNhbGxTaW0oZGF0YSwgYWRkcikgOiBjbGllbnQuY2FsbChkYXRhLCBhZGRyKSk7XG4gIHJldHVybiBjYWxsYmFjayhyZXR1cm5EYXRhKTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgRXZlbnRlciB7XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdE5hbWUgPSAnRXZlbnRlcic7XG4gIGV4cG9ydCBjb25zdCBhYmkgPVxuICAgICdbe1wiYW5vbnltb3VzXCI6ZmFsc2UsXCJpbnB1dHNcIjpbe1wiaW5kZXhlZFwiOnRydWUsXCJpbnRlcm5hbFR5cGVcIjpcImJ5dGVzMzJcIixcIm5hbWVcIjpcImV2ZW50SWRcIixcInR5cGVcIjpcImJ5dGVzMzJcIn0se1wiaW5kZXhlZFwiOnRydWUsXCJpbnRlcm5hbFR5cGVcIjpcImJ5dGVzMzJcIixcIm5hbWVcIjpcImludGVydmFsSWRcIixcInR5cGVcIjpcImJ5dGVzMzJcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJhZGRyZXNzXCIsXCJuYW1lXCI6XCJldmVudEFkZHJlc3NcIixcInR5cGVcIjpcImFkZHJlc3NcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJzdHJpbmdcIixcIm5hbWVcIjpcIm5hbWVzcGFjZVwiLFwidHlwZVwiOlwic3RyaW5nXCJ9LHtcImluZGV4ZWRcIjpmYWxzZSxcImludGVybmFsVHlwZVwiOlwic3RyaW5nXCIsXCJuYW1lXCI6XCJuYW1lXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn0se1wiaW5kZXhlZFwiOmZhbHNlLFwiaW50ZXJuYWxUeXBlXCI6XCJhZGRyZXNzXCIsXCJuYW1lXCI6XCJjb250cm9sbGVyXCIsXCJ0eXBlXCI6XCJhZGRyZXNzXCJ9LHtcImluZGV4ZWRcIjpmYWxzZSxcImludGVybmFsVHlwZVwiOlwidWludDI1NlwiLFwibmFtZVwiOlwidGhyZXNob2xkXCIsXCJ0eXBlXCI6XCJ1aW50MjU2XCJ9LHtcImluZGV4ZWRcIjpmYWxzZSxcImludGVybmFsVHlwZVwiOlwic3RyaW5nXCIsXCJuYW1lXCI6XCJtZXRhZGF0YVwiLFwidHlwZVwiOlwic3RyaW5nXCJ9XSxcIm5hbWVcIjpcIkluaXRcIixcInR5cGVcIjpcImV2ZW50XCJ9LHtcImFub255bW91c1wiOmZhbHNlLFwiaW5wdXRzXCI6W3tcImluZGV4ZWRcIjp0cnVlLFwiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcInRpbWVzdGFtcFwiLFwidHlwZVwiOlwiaW50MjU2XCJ9LHtcImluZGV4ZWRcIjpmYWxzZSxcImludGVybmFsVHlwZVwiOlwic3RyaW5nXCIsXCJuYW1lXCI6XCJwbGFjZVwiLFwidHlwZVwiOlwic3RyaW5nXCJ9LHtcImluZGV4ZWRcIjpmYWxzZSxcImludGVybmFsVHlwZVwiOlwic3RyaW5nXCIsXCJuYW1lXCI6XCJwb3N0YWxBZGRyZXNzXCIsXCJ0eXBlXCI6XCJzdHJpbmdcIn1dLFwibmFtZVwiOlwiTW9ub1JhbXBhZ2VcIixcInR5cGVcIjpcImV2ZW50XCJ9LHtcImNvbnN0YW50XCI6ZmFsc2UsXCJpbnB1dHNcIjpbXSxcIm5hbWVcIjpcImFubm91bmNlXCIsXCJvdXRwdXRzXCI6W10sXCJwYXlhYmxlXCI6ZmFsc2UsXCJzdGF0ZU11dGFiaWxpdHlcIjpcIm5vbnBheWFibGVcIixcInR5cGVcIjpcImZ1bmN0aW9uXCJ9XSc7XG4gIGV4cG9ydCBjb25zdCBieXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MDBmNTc2MDAwODBmZDViNTA2MTAyYjU4MDYxMDAxZjYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MTAwMmI1NzYwMDAzNTYwZTAxYzgwNjM4Zjk3MGRmMDE0NjEwMDMwNTc1YjYwMDA4MGZkNWI2MTAwMzg2MTAwM2E1NjViMDA1YjYwN2I3ZjZhMzU2ODhlNzgwOTRlODZhYzdkZDQ1OTM0MjNmYTg5NDE1MTA1ZGM2OGEwNzY2YjI3MTA2ODYxZWY0MTAyMTQ2MDQwNTE4MDgwNjAyMDAxODA2MDIwMDE4MzgxMDM4MzUyNjAwZDgxNTI2MDIwMDE4MDdmNTM2MTZlNzQ2MTIwNDU3NTZjNjE3MjY5NjEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMjAwMTgzODEwMzgyNTI2MDBhODE1MjYwMjAwMTgwN2Y1MzYxNmU3NDIwNGE3NTYxNmQ2NTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAyMDAxOTI1MDUwNTA2MDQwNTE4MDkxMDM5MGEyN2Y2OTZlNzQ2NTcyNzY2MTZjMzIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2Y2NTc2NjU2ZTc0MzEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2Y1ZjIwZGY5N2VlNTczYWI4YjQzNTgxY2YzZmY5MDVmMzUwN2FkMjMyOWI3ZWZlNmY5MmU4MDJiNGZhZDAzMWMxNzM1OWM5OWQ0ZWJmNTIwNjE5ZWU3ZjgwNmYxMWQ5MGE5Y2FjMDJjZTA2MzM2MDA0NjA0MDUxODA4NDczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY4MTUyNjAyMDAxODA2MDIwMDE4MDYwMjAwMTg1NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4NDgxNTI2MDIwMDE4MDYwMjAwMTg0ODEwMzg0NTI2MDA2ODE1MjYwMjAwMTgwN2Y2NDY5NmU2OTZlNjcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAyMDAxODQ4MTAzODM1MjYwMDk4MTUyNjAyMDAxODA3ZjYyNzI2NTYxNmI2NjYxNzM3NDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDIwMDE4NDgxMDM4MjUyNjAxNzgxNTI2MDIwMDE4MDdmNjI2MTYzNmY2ZTJjNjI2NTYxNmU3MzJjNjU2NzY3NzMyYzc0NmY2ZDYxNzQ2ZjAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMjAwMTk2NTA1MDUwNTA1MDUwNTA2MDQwNTE4MDkxMDM5MGEzNTZmZWEyNjU2MjdhN2E3MjMxNTgyMGE2Y2Q2NTU5M2M5YThmNWVkMDhmNzU1MTlkOWRkNTY2NGJjZGYzYTRiYjY3YzhmNTA3ZTFhNjllZDM0OGYwNGY2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGNvbnN0IGRlcGxveWVkQnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDA0MzYxMDYxMDAyYjU3NjAwMDM1NjBlMDFjODA2MzhmOTcwZGYwMTQ2MTAwMzA1NzViNjAwMDgwZmQ1YjYxMDAzODYxMDAzYTU2NWIwMDViNjA3YjdmNmEzNTY4OGU3ODA5NGU4NmFjN2RkNDU5MzQyM2ZhODk0MTUxMDVkYzY4YTA3NjZiMjcxMDY4NjFlZjQxMDIxNDYwNDA1MTgwODA2MDIwMDE4MDYwMjAwMTgzODEwMzgzNTI2MDBkODE1MjYwMjAwMTgwN2Y1MzYxNmU3NDYxMjA0NTc1NmM2MTcyNjk2MTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAyMDAxODM4MTAzODI1MjYwMGE4MTUyNjAyMDAxODA3ZjUzNjE2ZTc0MjA0YTc1NjE2ZDY1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDIwMDE5MjUwNTA1MDYwNDA1MTgwOTEwMzkwYTI3ZjY5NmU3NDY1NzI3NjYxNmMzMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3ZjY1NzY2NTZlNzQzMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3ZjVmMjBkZjk3ZWU1NzNhYjhiNDM1ODFjZjNmZjkwNWYzNTA3YWQyMzI5YjdlZmU2ZjkyZTgwMmI0ZmFkMDMxYzE3MzU5Yzk5ZDRlYmY1MjA2MTllZTdmODA2ZjExZDkwYTljYWMwMmNlMDYzMzYwMDQ2MDQwNTE4MDg0NzNmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmMTY3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjgxNTI2MDIwMDE4MDYwMjAwMTgwNjAyMDAxODU3M2ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYxNjczZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZjE2ODE1MjYwMjAwMTg0ODE1MjYwMjAwMTgwNjAyMDAxODQ4MTAzODQ1MjYwMDY4MTUyNjAyMDAxODA3ZjY0Njk2ZTY5NmU2NzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA4MTUyNTA2MDIwMDE4NDgxMDM4MzUyNjAwOTgxNTI2MDIwMDE4MDdmNjI3MjY1NjE2YjY2NjE3Mzc0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgxNTI1MDYwMjAwMTg0ODEwMzgyNTI2MDE3ODE1MjYwMjAwMTgwN2Y2MjYxNjM2ZjZlMmM2MjY1NjE2ZTczMmM2NTY3Njc3MzJjNzQ2ZjZkNjE3NDZmMDAwMDAwMDAwMDAwMDAwMDAwODE1MjUwNjAyMDAxOTY1MDUwNTA1MDUwNTA1MDYwNDA1MTgwOTEwMzkwYTM1NmZlYTI2NTYyN2E3YTcyMzE1ODIwYTZjZDY1NTkzYzlhOGY1ZWQwOGY3NTUxOWQ5ZGQ1NjY0YmNkZjNhNGJiNjdjOGY1MDdlMWE2OWVkMzQ4ZjA0ZjY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgZnVuY3Rpb24gZGVwbG95KHtcbiAgICBjbGllbnQsXG4gICAgd2l0aENvbnRyYWN0TWV0YSxcbiAgfToge1xuICAgIGNsaWVudDogUHJvdmlkZXI7XG4gICAgd2l0aENvbnRyYWN0TWV0YT86IGJvb2xlYW47XG4gIH0pOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICBjb25zdCBkYXRhID0gQnVmZmVyLmNvbmNhdChbQnVmZmVyLmZyb20oYnl0ZWNvZGUsICdoZXgnKSwgY29kZWMuZW5jb2RlRGVwbG95KCldKTtcbiAgICByZXR1cm4gY2xpZW50LmRlcGxveShcbiAgICAgIGRhdGEsXG4gICAgICB3aXRoQ29udHJhY3RNZXRhXG4gICAgICAgID8gW3sgYWJpOiBFdmVudGVyLmFiaSwgY29kZUhhc2g6IG5ldyBLZWNjYWsoMjU2KS51cGRhdGUoRXZlbnRlci5kZXBsb3llZEJ5dGVjb2RlLCAnaGV4JykuZGlnZXN0KCdiaW5hcnknKSB9XVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZXBsb3lDb250cmFjdChkZXBzOiB7IGNsaWVudDogUHJvdmlkZXI7IHdpdGhDb250cmFjdE1ldGE/OiBib29sZWFuIH0pOiBQcm9taXNlPENvbnRyYWN0PiB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IGRlcGxveShkZXBzKTtcbiAgICByZXR1cm4gY29udHJhY3QoZGVwcy5jbGllbnQsIGFkZHJlc3MpO1xuICB9XG4gIHR5cGUgRXZlbnRSZWdpc3RyeSA9IHR5cGVvZiBldmVudHM7XG4gIGV4cG9ydCB0eXBlIEV2ZW50TmFtZSA9IGtleW9mIEV2ZW50UmVnaXN0cnk7XG4gIGV4cG9ydCB0eXBlIFRhZ2dlZFBheWxvYWQ8VCBleHRlbmRzIEV2ZW50TmFtZT4gPSBSZXR1cm5UeXBlPEV2ZW50UmVnaXN0cnlbVF1bJ3RhZ2dlZCddPiAmIHtcbiAgICBldmVudDogRXZlbnQ7XG4gIH07XG4gIGV4cG9ydCB0eXBlIFNvbGlkaXR5RXZlbnQ8VCBleHRlbmRzIEV2ZW50TmFtZT4gPSBUYWdnZWRQYXlsb2FkPFQ+WydwYXlsb2FkJ107XG4gIGV4cG9ydCB0eXBlIFR5cGVkTGlzdGVuZXI8VCBleHRlbmRzIEV2ZW50TmFtZT4gPSAoXG4gICAgY2FsbGJhY2s6IChlcnI/OiBFcnJvciwgZXZlbnQ/OiBUYWdnZWRQYXlsb2FkPFQ+KSA9PiB2b2lkLFxuICAgIHN0YXJ0PzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgZW5kPzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICkgPT4gdW5rbm93bjtcbiAgY29uc3QgZXZlbnRzID0ge1xuICAgIEluaXQ6IHtcbiAgICAgIHNpZ25hdHVyZTogJzVGMjBERjk3RUU1NzNBQjhCNDM1ODFDRjNGRjkwNUYzNTA3QUQyMzI5QjdFRkU2RjkyRTgwMkI0RkFEMDMxQzEnLFxuICAgICAgdGFnZ2VkOiAoXG4gICAgICAgIGV2ZW50SWQ6IEJ1ZmZlcixcbiAgICAgICAgaW50ZXJ2YWxJZDogQnVmZmVyLFxuICAgICAgICBldmVudEFkZHJlc3M6IHN0cmluZyxcbiAgICAgICAgbmFtZXNwYWNlOiBzdHJpbmcsXG4gICAgICAgIG5hbWU6IHN0cmluZyxcbiAgICAgICAgY29udHJvbGxlcjogc3RyaW5nLFxuICAgICAgICB0aHJlc2hvbGQ6IG51bWJlcixcbiAgICAgICAgbWV0YWRhdGE6IHN0cmluZyxcbiAgICAgICkgPT5cbiAgICAgICAgKHtcbiAgICAgICAgICBuYW1lOiAnSW5pdCcsXG4gICAgICAgICAgcGF5bG9hZDoge1xuICAgICAgICAgICAgZXZlbnRJZDogZXZlbnRJZCxcbiAgICAgICAgICAgIGludGVydmFsSWQ6IGludGVydmFsSWQsXG4gICAgICAgICAgICBldmVudEFkZHJlc3M6IGV2ZW50QWRkcmVzcyxcbiAgICAgICAgICAgIG5hbWVzcGFjZTogbmFtZXNwYWNlLFxuICAgICAgICAgICAgbmFtZTogbmFtZSxcbiAgICAgICAgICAgIGNvbnRyb2xsZXI6IGNvbnRyb2xsZXIsXG4gICAgICAgICAgICB0aHJlc2hvbGQ6IHRocmVzaG9sZCxcbiAgICAgICAgICAgIG1ldGFkYXRhOiBtZXRhZGF0YSxcbiAgICAgICAgICB9IGFzIGNvbnN0LFxuICAgICAgICB9IGFzIGNvbnN0KSxcbiAgICB9IGFzIGNvbnN0LFxuICAgIE1vbm9SYW1wYWdlOiB7XG4gICAgICBzaWduYXR1cmU6ICc2QTM1Njg4RTc4MDk0RTg2QUM3REQ0NTkzNDIzRkE4OTQxNTEwNURDNjhBMDc2NkIyNzEwNjg2MUVGNDEwMjE0JyxcbiAgICAgIHRhZ2dlZDogKHRpbWVzdGFtcDogbnVtYmVyLCBwbGFjZTogc3RyaW5nLCBwb3N0YWxBZGRyZXNzOiBzdHJpbmcpID0+XG4gICAgICAgICh7XG4gICAgICAgICAgbmFtZTogJ01vbm9SYW1wYWdlJyxcbiAgICAgICAgICBwYXlsb2FkOiB7IHRpbWVzdGFtcDogdGltZXN0YW1wLCBwbGFjZTogcGxhY2UsIHBvc3RhbEFkZHJlc3M6IHBvc3RhbEFkZHJlc3MgfSBhcyBjb25zdCxcbiAgICAgICAgfSBhcyBjb25zdCksXG4gICAgfSBhcyBjb25zdCxcbiAgfSBhcyBjb25zdDtcbiAgZXhwb3J0IHR5cGUgQ29udHJhY3QgPSBSZXR1cm5UeXBlPHR5cGVvZiBjb250cmFjdD47XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdCA9IChjbGllbnQ6IFByb3ZpZGVyLCBhZGRyZXNzOiBzdHJpbmcpID0+XG4gICAgKHtcbiAgICAgIG5hbWU6ICdFdmVudGVyJyxcbiAgICAgIGFkZHJlc3MsXG4gICAgICBmdW5jdGlvbnM6IHtcbiAgICAgICAgYW5ub3VuY2UoY2FsbCA9IGRlZmF1bHRDYWxsKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IGVuY29kZShjbGllbnQpLmFubm91bmNlKCk7XG4gICAgICAgICAgcmV0dXJuIGNhbGw8dm9pZD4oY2xpZW50LCBhZGRyZXNzLCBkYXRhLCBmYWxzZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5hbm5vdW5jZSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSBhcyBjb25zdCxcbiAgICAgIGxpc3RlbmVyczoge1xuICAgICAgICBJbml0KFxuICAgICAgICAgIGNhbGxiYWNrOiAoXG4gICAgICAgICAgICBlcnI/OiBFcnJvcixcbiAgICAgICAgICAgIGV2ZW50Pzoge1xuICAgICAgICAgICAgICBldmVudElkOiBCdWZmZXI7XG4gICAgICAgICAgICAgIGludGVydmFsSWQ6IEJ1ZmZlcjtcbiAgICAgICAgICAgICAgZXZlbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgICAgICAgICAgIG5hbWVzcGFjZTogc3RyaW5nO1xuICAgICAgICAgICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICAgICAgICAgIGNvbnRyb2xsZXI6IHN0cmluZztcbiAgICAgICAgICAgICAgdGhyZXNob2xkOiBudW1iZXI7XG4gICAgICAgICAgICAgIG1ldGFkYXRhOiBzdHJpbmc7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICkgPT4gQ2FuY2VsU3RyZWFtU2lnbmFsIHwgdm9pZCxcbiAgICAgICAgICBzdGFydD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgICAgICAgIGVuZD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgICAgICApOiB1bmtub3duIHtcbiAgICAgICAgICByZXR1cm4gY2xpZW50Lmxpc3RlbihcbiAgICAgICAgICAgIFsnNUYyMERGOTdFRTU3M0FCOEI0MzU4MUNGM0ZGOTA1RjM1MDdBRDIzMjlCN0VGRTZGOTJFODAyQjRGQUQwMzFDMSddLFxuICAgICAgICAgICAgYWRkcmVzcyxcbiAgICAgICAgICAgIChlcnI/OiBFcnJvciwgZXZlbnQ/OiBFdmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoZXJyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKGVycik7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmV0dXJuIGNhbGxiYWNrKHVuZGVmaW5lZCwgZGVjb2RlKGNsaWVudCwgZXZlbnQ/LmxvZy5kYXRhLCBldmVudD8ubG9nLnRvcGljcykuSW5pdCgpKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzdGFydCxcbiAgICAgICAgICAgIGVuZCxcbiAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICAgICBNb25vUmFtcGFnZShcbiAgICAgICAgICBjYWxsYmFjazogKFxuICAgICAgICAgICAgZXJyPzogRXJyb3IsXG4gICAgICAgICAgICBldmVudD86IHtcbiAgICAgICAgICAgICAgdGltZXN0YW1wOiBudW1iZXI7XG4gICAgICAgICAgICAgIHBsYWNlOiBzdHJpbmc7XG4gICAgICAgICAgICAgIHBvc3RhbEFkZHJlc3M6IHN0cmluZztcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgKSA9PiBDYW5jZWxTdHJlYW1TaWduYWwgfCB2b2lkLFxuICAgICAgICAgIHN0YXJ0PzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgICAgICAgZW5kPzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgICAgICk6IHVua25vd24ge1xuICAgICAgICAgIHJldHVybiBjbGllbnQubGlzdGVuKFxuICAgICAgICAgICAgWyc2QTM1Njg4RTc4MDk0RTg2QUM3REQ0NTkzNDIzRkE4OTQxNTEwNURDNjhBMDc2NkIyNzEwNjg2MUVGNDEwMjE0J10sXG4gICAgICAgICAgICBhZGRyZXNzLFxuICAgICAgICAgICAgKGVycj86IEVycm9yLCBldmVudD86IEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soZXJyKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gY2FsbGJhY2sodW5kZWZpbmVkLCBkZWNvZGUoY2xpZW50LCBldmVudD8ubG9nLmRhdGEsIGV2ZW50Py5sb2cudG9waWNzKS5Nb25vUmFtcGFnZSgpKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzdGFydCxcbiAgICAgICAgICAgIGVuZCxcbiAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICAgfSBhcyBjb25zdCxcbiAgICAgIGxpc3RlbmVyRm9yOiA8VCBleHRlbmRzIEV2ZW50TmFtZT4oZXZlbnROYW1lczogVFtdKTogVHlwZWRMaXN0ZW5lcjxUPiA9PlxuICAgICAgICAobGlzdGVuZXJGb3IoY2xpZW50LCBhZGRyZXNzLCBldmVudHMsIGRlY29kZSwgZXZlbnROYW1lcykgYXMgdW5rbm93bikgYXMgVHlwZWRMaXN0ZW5lcjxUPixcbiAgICAgIGxpc3RlbmVyOiBsaXN0ZW5lckZvcihcbiAgICAgICAgY2xpZW50LFxuICAgICAgICBhZGRyZXNzLFxuICAgICAgICBldmVudHMsXG4gICAgICAgIGRlY29kZSxcbiAgICAgICAgT2JqZWN0LmtleXMoZXZlbnRzKSBhcyBFdmVudE5hbWVbXSxcbiAgICAgICkgYXMgVHlwZWRMaXN0ZW5lcjxFdmVudE5hbWU+LFxuICAgIH0gYXMgY29uc3QpO1xuICBleHBvcnQgY29uc3QgZW5jb2RlID0gKGNsaWVudDogUHJvdmlkZXIpID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFubm91bmNlOiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJzhGOTcwREYwJyk7XG4gICAgICB9LFxuICAgIH07XG4gIH07XG4gIGV4cG9ydCBjb25zdCBkZWNvZGUgPSAoY2xpZW50OiBQcm92aWRlciwgZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCwgdG9waWNzOiBVaW50OEFycmF5W10gPSBbXSkgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgSW5pdDogKCk6IHtcbiAgICAgICAgZXZlbnRJZDogQnVmZmVyO1xuICAgICAgICBpbnRlcnZhbElkOiBCdWZmZXI7XG4gICAgICAgIGV2ZW50QWRkcmVzczogc3RyaW5nO1xuICAgICAgICBuYW1lc3BhY2U6IHN0cmluZztcbiAgICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgICBjb250cm9sbGVyOiBzdHJpbmc7XG4gICAgICAgIHRocmVzaG9sZDogbnVtYmVyO1xuICAgICAgICBtZXRhZGF0YTogc3RyaW5nO1xuICAgICAgfSA9PiB7XG4gICAgICAgIGNvbnN0IFtcbiAgICAgICAgICBldmVudElkLFxuICAgICAgICAgIGludGVydmFsSWQsXG4gICAgICAgICAgZXZlbnRBZGRyZXNzLFxuICAgICAgICAgIG5hbWVzcGFjZSxcbiAgICAgICAgICBuYW1lLFxuICAgICAgICAgIGNvbnRyb2xsZXIsXG4gICAgICAgICAgdGhyZXNob2xkLFxuICAgICAgICAgIG1ldGFkYXRhLFxuICAgICAgICBdID0gY29kZWMuZGVjb2RlRXZlbnRMb2coJzVGMjBERjk3RUU1NzNBQjhCNDM1ODFDRjNGRjkwNUYzNTA3QUQyMzI5QjdFRkU2RjkyRTgwMkI0RkFEMDMxQzEnLCBkYXRhLCB0b3BpY3MpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGV2ZW50SWQ6IGV2ZW50SWQsXG4gICAgICAgICAgaW50ZXJ2YWxJZDogaW50ZXJ2YWxJZCxcbiAgICAgICAgICBldmVudEFkZHJlc3M6IGV2ZW50QWRkcmVzcyxcbiAgICAgICAgICBuYW1lc3BhY2U6IG5hbWVzcGFjZSxcbiAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgIGNvbnRyb2xsZXI6IGNvbnRyb2xsZXIsXG4gICAgICAgICAgdGhyZXNob2xkOiB0aHJlc2hvbGQsXG4gICAgICAgICAgbWV0YWRhdGE6IG1ldGFkYXRhLFxuICAgICAgICB9O1xuICAgICAgfSxcbiAgICAgIE1vbm9SYW1wYWdlOiAoKToge1xuICAgICAgICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgICAgICAgcGxhY2U6IHN0cmluZztcbiAgICAgICAgcG9zdGFsQWRkcmVzczogc3RyaW5nO1xuICAgICAgfSA9PiB7XG4gICAgICAgIGNvbnN0IFt0aW1lc3RhbXAsIHBsYWNlLCBwb3N0YWxBZGRyZXNzXSA9IGNvZGVjLmRlY29kZUV2ZW50TG9nKFxuICAgICAgICAgICc2QTM1Njg4RTc4MDk0RTg2QUM3REQ0NTkzNDIzRkE4OTQxNTEwNURDNjhBMDc2NkIyNzEwNjg2MUVGNDEwMjE0JyxcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIHRvcGljcyxcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIHsgdGltZXN0YW1wOiB0aW1lc3RhbXAsIHBsYWNlOiBwbGFjZSwgcG9zdGFsQWRkcmVzczogcG9zdGFsQWRkcmVzcyB9O1xuICAgICAgfSxcbiAgICAgIGFubm91bmNlOiAoKTogdm9pZCA9PiB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==

@@ -20,4 +20,10 @@ /// <reference types="node" />

const deployedBytecode = "6080604052348015600f57600080fd5b506004361060285760003560e01c80636d4ce63c14602d575b600080fd5b60336057565b60405180848152602001838152602001828152602001935050505060405180910390f35b600080600060016002600382925081915080905092509250925090919256fea265627a7a72315820db13aa50f1e1ad94cdc8fb2b158b105d0d0812d53d9851ed8a9bfa5447e3c17864736f6c63430005110032";
function deploy(client: Provider, withContractMeta?: boolean): Promise<string>;
function deployContract(client: Provider, withContractMeta?: boolean): Promise<Contract>;
function deploy({ client, withContractMeta, }: {
client: Provider;
withContractMeta?: boolean;
}): Promise<string>;
function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
}): Promise<Contract>;
type Contract = ReturnType<typeof contract>;

@@ -24,0 +30,0 @@ const contract: (client: Provider, address: string) => {

@@ -62,4 +62,4 @@ "use strict";

Multiple.deployedBytecode = '6080604052348015600f57600080fd5b506004361060285760003560e01c80636d4ce63c14602d575b600080fd5b60336057565b60405180848152602001838152602001828152602001935050505060405180910390f35b600080600060016002600382925081915080905092509250925090919256fea265627a7a72315820db13aa50f1e1ad94cdc8fb2b158b105d0d0812d53d9851ed8a9bfa5447e3c17864736f6c63430005110032';
function deploy(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deploy(_a) {
var client = _a.client, withContractMeta = _a.withContractMeta;
var codec = client.contractCodec(Multiple.abi);

@@ -72,4 +72,3 @@ var data = Buffer.concat([Buffer.from(Multiple.bytecode, 'hex'), codec.encodeDeploy()]);

Multiple.deploy = deploy;
function deployContract(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps) {
return __awaiter(this, void 0, void 0, function () {

@@ -79,6 +78,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps)];
case 1:
address = _a.sent();
return [2 /*return*/, Multiple.contract(client, address)];
return [2 /*return*/, Multiple.contract(deps.client, address)];
}

@@ -122,2 +121,2 @@ });

})(Multiple = exports.Multiple || (exports.Multiple = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXVsdGlwbGVSZXR1cm5zLmFiaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zb2x0cy9zb2wvTXVsdGlwbGVSZXR1cm5zLmFiaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBdUM7QUFDdkMscUNBQXdGO0FBcUJ4RixTQUFzQixXQUFXLENBQy9CLE1BQWdCLEVBQ2hCLElBQVksRUFDWixJQUFnQixFQUNoQixLQUFjLEVBQ2QsUUFBd0Q7Ozs7O3dCQUVyQyxxQkFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUE7O29CQUFqRixVQUFVLEdBQUcsU0FBb0U7b0JBQ3ZGLHNCQUFPLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBQzs7OztDQUM3QjtBQVRELGtDQVNDO0FBQ0QsSUFBaUIsUUFBUSxDQW9EeEI7QUFwREQsV0FBaUIsUUFBUTtJQUNWLHFCQUFZLEdBQUcsVUFBVSxDQUFDO0lBQzFCLFlBQUcsR0FDZCxpUkFBaVIsQ0FBQztJQUN2USxpQkFBUSxHQUNuQixvWkFBb1osQ0FBQztJQUMxWSx5QkFBZ0IsR0FDM0Isd1ZBQXdWLENBQUM7SUFDM1YsU0FBZ0IsTUFBTSxDQUFDLE1BQWdCLEVBQUUsZ0JBQXdCO1FBQXhCLGlDQUFBLEVBQUEsd0JBQXdCO1FBQy9ELElBQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxJQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFBLFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pGLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsSUFBSSxFQUNKLGdCQUFnQjtZQUNkLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDOUcsQ0FBQyxDQUFDLFNBQVMsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQVRlLGVBQU0sU0FTckIsQ0FBQTtJQUNELFNBQXNCLGNBQWMsQ0FBQyxNQUFnQixFQUFFLGdCQUF3QjtRQUF4QixpQ0FBQSxFQUFBLHdCQUF3Qjs7Ozs7NEJBQzdELHFCQUFNLE1BQU0sQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsRUFBQTs7d0JBQWhELE9BQU8sR0FBRyxTQUFzQzt3QkFDdEQsc0JBQU8sU0FBQSxRQUFRLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFDOzs7O0tBQ2xDO0lBSHFCLHVCQUFjLGlCQUduQyxDQUFBO0lBRVksaUJBQVEsR0FBRyxVQUFDLE1BQWdCLEVBQUUsT0FBZTtRQUN4RCxPQUFBLENBQUM7WUFDQyxJQUFJLEVBQUUsVUFBVTtZQUNoQixPQUFPLFNBQUE7WUFDUCxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFILFVBQUksSUFBa0I7b0JBQWxCLHFCQUFBLEVBQUEsa0JBQWtCO29CQUNwQixJQUFNLElBQUksR0FBRyxTQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDbEMsT0FBTyxJQUFJLENBQTJCLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFDLElBQTRCO3dCQUM5RixPQUFPLFNBQUEsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDcEMsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQzthQUNPO1NBQ0QsQ0FBQTtJQVhYLENBV1csQ0FBQztJQUNELGVBQU0sR0FBRyxVQUFDLE1BQWdCO1FBQ3JDLElBQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxPQUFPO1lBQ0wsR0FBRyxFQUFFO2dCQUNILE9BQU8sS0FBSyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzlDLENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0lBQ1csZUFBTSxHQUFHLFVBQUMsTUFBZ0IsRUFBRSxJQUE0QixFQUFFLE1BQXlCO1FBQXpCLHVCQUFBLEVBQUEsV0FBeUI7UUFDOUYsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE9BQU87WUFDTCxHQUFHLEVBQUU7Z0JBQ0gsT0FBTyxLQUFLLENBQUMsb0JBQW9CLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3RELENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxFQXBEZ0IsUUFBUSxHQUFSLGdCQUFRLEtBQVIsZ0JBQVEsUUFvRHhCIiwic291cmNlc0NvbnRlbnQiOlsiLy9Db2RlIGdlbmVyYXRlZCBieSBzb2x0cy4gRE8gTk9UIEVESVQuXG5pbXBvcnQgeyBBZGRyZXNzLCBDYW5jZWxTdHJlYW1TaWduYWwsIENvbnRyYWN0Q29kZWMsIEV2ZW50LCBLZWNjYWsgfSBmcm9tICcuLi8uLi9pbmRleCc7XG5pbnRlcmZhY2UgUHJvdmlkZXIge1xuICBkZXBsb3koXG4gICAgZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBjb250cmFjdE1ldGE/OiB7XG4gICAgICBhYmk6IHN0cmluZztcbiAgICAgIGNvZGVIYXNoOiBVaW50OEFycmF5O1xuICAgIH1bXSxcbiAgKTogUHJvbWlzZTxBZGRyZXNzPjtcbiAgY2FsbChkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBjYWxsU2ltKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGxpc3RlbihcbiAgICBzaWduYXR1cmVzOiBzdHJpbmdbXSxcbiAgICBhZGRyZXNzOiBzdHJpbmcsXG4gICAgY2FsbGJhY2s6IChlcnI/OiBFcnJvciwgZXZlbnQ/OiBFdmVudCkgPT4gQ2FuY2VsU3RyZWFtU2lnbmFsIHwgdm9pZCxcbiAgICBzdGFydD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgIGVuZD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICApOiB1bmtub3duO1xuICBjb250cmFjdENvZGVjKGNvbnRyYWN0QUJJOiBzdHJpbmcpOiBDb250cmFjdENvZGVjO1xufVxuZXhwb3J0IHR5cGUgQ2FsbGVyID0gdHlwZW9mIGRlZmF1bHRDYWxsO1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlZmF1bHRDYWxsPE91dHB1dD4oXG4gIGNsaWVudDogUHJvdmlkZXIsXG4gIGFkZHI6IHN0cmluZyxcbiAgZGF0YTogVWludDhBcnJheSxcbiAgaXNTaW06IGJvb2xlYW4sXG4gIGNhbGxiYWNrOiAocmV0dXJuRGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4gT3V0cHV0LFxuKTogUHJvbWlzZTxPdXRwdXQ+IHtcbiAgY29uc3QgcmV0dXJuRGF0YSA9IGF3YWl0IChpc1NpbSA/IGNsaWVudC5jYWxsU2ltKGRhdGEsIGFkZHIpIDogY2xpZW50LmNhbGwoZGF0YSwgYWRkcikpO1xuICByZXR1cm4gY2FsbGJhY2socmV0dXJuRGF0YSk7XG59XG5leHBvcnQgbmFtZXNwYWNlIE11bHRpcGxlIHtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0TmFtZSA9ICdNdWx0aXBsZSc7XG4gIGV4cG9ydCBjb25zdCBhYmkgPVxuICAgICdbe1wiY29uc3RhbnRcIjp0cnVlLFwiaW5wdXRzXCI6W10sXCJuYW1lXCI6XCJnZXRcIixcIm91dHB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcIlwiLFwidHlwZVwiOlwiaW50MjU2XCJ9LHtcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJcIixcInR5cGVcIjpcImludDI1NlwifSx7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiXCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJwdXJlXCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifV0nO1xuICBleHBvcnQgY29uc3QgYnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjAwZjU3NjAwMDgwZmQ1YjUwNjBhYjgwNjEwMDFlNjAwMDM5NjAwMGYzZmU2MDgwNjA0MDUyMzQ4MDE1NjAwZjU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MDI4NTc2MDAwMzU2MGUwMWM4MDYzNmQ0Y2U2M2MxNDYwMmQ1NzViNjAwMDgwZmQ1YjYwMzM2MDU3NTY1YjYwNDA1MTgwODQ4MTUyNjAyMDAxODM4MTUyNjAyMDAxODI4MTUyNjAyMDAxOTM1MDUwNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MDYwMDA2MDAxNjAwMjYwMDM4MjkyNTA4MTkxNTA4MDkwNTA5MjUwOTI1MDkyNTA5MDkxOTI1NmZlYTI2NTYyN2E3YTcyMzE1ODIwZGIxM2FhNTBmMWUxYWQ5NGNkYzhmYjJiMTU4YjEwNWQwZDA4MTJkNTNkOTg1MWVkOGE5YmZhNTQ0N2UzYzE3ODY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MDBmNTc2MDAwODBmZDViNTA2MDA0MzYxMDYwMjg1NzYwMDAzNTYwZTAxYzgwNjM2ZDRjZTYzYzE0NjAyZDU3NWI2MDAwODBmZDViNjAzMzYwNTc1NjViNjA0MDUxODA4NDgxNTI2MDIwMDE4MzgxNTI2MDIwMDE4MjgxNTI2MDIwMDE5MzUwNTA1MDUwNjA0MDUxODA5MTAzOTBmMzViNjAwMDgwNjAwMDYwMDE2MDAyNjAwMzgyOTI1MDgxOTE1MDgwOTA1MDkyNTA5MjUwOTI1MDkwOTE5MjU2ZmVhMjY1NjI3YTdhNzIzMTU4MjBkYjEzYWE1MGYxZTFhZDk0Y2RjOGZiMmIxNThiMTA1ZDBkMDgxMmQ1M2Q5ODUxZWQ4YTliZmE1NDQ3ZTNjMTc4NjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBmdW5jdGlvbiBkZXBsb3koY2xpZW50OiBQcm92aWRlciwgd2l0aENvbnRyYWN0TWV0YSA9IGZhbHNlKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgY29uc3QgZGF0YSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKGJ5dGVjb2RlLCAnaGV4JyksIGNvZGVjLmVuY29kZURlcGxveSgpXSk7XG4gICAgcmV0dXJuIGNsaWVudC5kZXBsb3koXG4gICAgICBkYXRhLFxuICAgICAgd2l0aENvbnRyYWN0TWV0YVxuICAgICAgICA/IFt7IGFiaTogTXVsdGlwbGUuYWJpLCBjb2RlSGFzaDogbmV3IEtlY2NhaygyNTYpLnVwZGF0ZShNdWx0aXBsZS5kZXBsb3llZEJ5dGVjb2RlLCAnaGV4JykuZGlnZXN0KCdiaW5hcnknKSB9XVxuICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICApO1xuICB9XG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZXBsb3lDb250cmFjdChjbGllbnQ6IFByb3ZpZGVyLCB3aXRoQ29udHJhY3RNZXRhID0gZmFsc2UpOiBQcm9taXNlPENvbnRyYWN0PiB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IGRlcGxveShjbGllbnQsIHdpdGhDb250cmFjdE1ldGEpO1xuICAgIHJldHVybiBjb250cmFjdChjbGllbnQsIGFkZHJlc3MpO1xuICB9XG4gIGV4cG9ydCB0eXBlIENvbnRyYWN0ID0gUmV0dXJuVHlwZTx0eXBlb2YgY29udHJhY3Q+O1xuICBleHBvcnQgY29uc3QgY29udHJhY3QgPSAoY2xpZW50OiBQcm92aWRlciwgYWRkcmVzczogc3RyaW5nKSA9PlxuICAgICh7XG4gICAgICBuYW1lOiAnTXVsdGlwbGUnLFxuICAgICAgYWRkcmVzcyxcbiAgICAgIGZ1bmN0aW9uczoge1xuICAgICAgICBnZXQoY2FsbCA9IGRlZmF1bHRDYWxsKTogUHJvbWlzZTxbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gZW5jb2RlKGNsaWVudCkuZ2V0KCk7XG4gICAgICAgICAgcmV0dXJuIGNhbGw8W251bWJlciwgbnVtYmVyLCBudW1iZXJdPihjbGllbnQsIGFkZHJlc3MsIGRhdGEsIHRydWUsIChkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlKGNsaWVudCwgZGF0YSkuZ2V0KCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICB9IGFzIGNvbnN0LFxuICAgIH0gYXMgY29uc3QpO1xuICBleHBvcnQgY29uc3QgZW5jb2RlID0gKGNsaWVudDogUHJvdmlkZXIpID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldDogKCkgPT4ge1xuICAgICAgICByZXR1cm4gY29kZWMuZW5jb2RlRnVuY3Rpb25EYXRhKCc2RDRDRTYzQycpO1xuICAgICAgfSxcbiAgICB9O1xuICB9O1xuICBleHBvcnQgY29uc3QgZGVjb2RlID0gKGNsaWVudDogUHJvdmlkZXIsIGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQsIHRvcGljczogVWludDhBcnJheVtdID0gW10pID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldDogKCk6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyXSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5kZWNvZGVGdW5jdGlvblJlc3VsdCgnNkQ0Q0U2M0MnLCBkYXRhKTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXVsdGlwbGVSZXR1cm5zLmFiaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zb2x0cy9zb2wvTXVsdGlwbGVSZXR1cm5zLmFiaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBdUM7QUFDdkMscUNBQXdGO0FBcUJ4RixTQUFzQixXQUFXLENBQy9CLE1BQWdCLEVBQ2hCLElBQVksRUFDWixJQUFnQixFQUNoQixLQUFjLEVBQ2QsUUFBd0Q7Ozs7O3dCQUVyQyxxQkFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLEVBQUE7O29CQUFqRixVQUFVLEdBQUcsU0FBb0U7b0JBQ3ZGLHNCQUFPLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBQzs7OztDQUM3QjtBQVRELGtDQVNDO0FBQ0QsSUFBaUIsUUFBUSxDQTBEeEI7QUExREQsV0FBaUIsUUFBUTtJQUNWLHFCQUFZLEdBQUcsVUFBVSxDQUFDO0lBQzFCLFlBQUcsR0FDZCxpUkFBaVIsQ0FBQztJQUN2USxpQkFBUSxHQUNuQixvWkFBb1osQ0FBQztJQUMxWSx5QkFBZ0IsR0FDM0Isd1ZBQXdWLENBQUM7SUFDM1YsU0FBZ0IsTUFBTSxDQUFDLEVBTXRCO1lBTEMsTUFBTSxZQUFBLEVBQ04sZ0JBQWdCLHNCQUFBO1FBS2hCLElBQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxJQUFNLElBQUksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFBLFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pGLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsSUFBSSxFQUNKLGdCQUFnQjtZQUNkLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDOUcsQ0FBQyxDQUFDLFNBQVMsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQWZlLGVBQU0sU0FlckIsQ0FBQTtJQUNELFNBQXNCLGNBQWMsQ0FBQyxJQUFzRDs7Ozs7NEJBQ3pFLHFCQUFNLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQTs7d0JBQTVCLE9BQU8sR0FBRyxTQUFrQjt3QkFDbEMsc0JBQU8sU0FBQSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBQzs7OztLQUN2QztJQUhxQix1QkFBYyxpQkFHbkMsQ0FBQTtJQUVZLGlCQUFRLEdBQUcsVUFBQyxNQUFnQixFQUFFLE9BQWU7UUFDeEQsT0FBQSxDQUFDO1lBQ0MsSUFBSSxFQUFFLFVBQVU7WUFDaEIsT0FBTyxTQUFBO1lBQ1AsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBSCxVQUFJLElBQWtCO29CQUFsQixxQkFBQSxFQUFBLGtCQUFrQjtvQkFDcEIsSUFBTSxJQUFJLEdBQUcsU0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQ2xDLE9BQU8sSUFBSSxDQUEyQixNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsVUFBQyxJQUE0Qjt3QkFDOUYsT0FBTyxTQUFBLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQ3BDLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUM7YUFDTztTQUNELENBQUE7SUFYWCxDQVdXLENBQUM7SUFDRCxlQUFNLEdBQUcsVUFBQyxNQUFnQjtRQUNyQyxJQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQUEsR0FBRyxDQUFDLENBQUM7UUFDeEMsT0FBTztZQUNMLEdBQUcsRUFBRTtnQkFDSCxPQUFPLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM5QyxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUNXLGVBQU0sR0FBRyxVQUFDLE1BQWdCLEVBQUUsSUFBNEIsRUFBRSxNQUF5QjtRQUF6Qix1QkFBQSxFQUFBLFdBQXlCO1FBQzlGLElBQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxPQUFPO1lBQ0wsR0FBRyxFQUFFO2dCQUNILE9BQU8sS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0RCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsRUExRGdCLFFBQVEsR0FBUixnQkFBUSxLQUFSLGdCQUFRLFFBMER4QiIsInNvdXJjZXNDb250ZW50IjpbIi8vQ29kZSBnZW5lcmF0ZWQgYnkgc29sdHMuIERPIE5PVCBFRElULlxuaW1wb3J0IHsgQWRkcmVzcywgQ2FuY2VsU3RyZWFtU2lnbmFsLCBDb250cmFjdENvZGVjLCBFdmVudCwgS2VjY2FrIH0gZnJvbSAnLi4vLi4vaW5kZXgnO1xuaW50ZXJmYWNlIFByb3ZpZGVyIHtcbiAgZGVwbG95KFxuICAgIGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgY29udHJhY3RNZXRhPzoge1xuICAgICAgYWJpOiBzdHJpbmc7XG4gICAgICBjb2RlSGFzaDogVWludDhBcnJheTtcbiAgICB9W10sXG4gICk6IFByb21pc2U8QWRkcmVzcz47XG4gIGNhbGwoZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgY2FsbFNpbShkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBsaXN0ZW4oXG4gICAgc2lnbmF0dXJlczogc3RyaW5nW10sXG4gICAgYWRkcmVzczogc3RyaW5nLFxuICAgIGNhbGxiYWNrOiAoZXJyPzogRXJyb3IsIGV2ZW50PzogRXZlbnQpID0+IENhbmNlbFN0cmVhbVNpZ25hbCB8IHZvaWQsXG4gICAgc3RhcnQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgICBlbmQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgKTogdW5rbm93bjtcbiAgY29udHJhY3RDb2RlYyhjb250cmFjdEFCSTogc3RyaW5nKTogQ29udHJhY3RDb2RlYztcbn1cbmV4cG9ydCB0eXBlIENhbGxlciA9IHR5cGVvZiBkZWZhdWx0Q2FsbDtcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWZhdWx0Q2FsbDxPdXRwdXQ+KFxuICBjbGllbnQ6IFByb3ZpZGVyLFxuICBhZGRyOiBzdHJpbmcsXG4gIGRhdGE6IFVpbnQ4QXJyYXksXG4gIGlzU2ltOiBib29sZWFuLFxuICBjYWxsYmFjazogKHJldHVybkRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IE91dHB1dCxcbik6IFByb21pc2U8T3V0cHV0PiB7XG4gIGNvbnN0IHJldHVybkRhdGEgPSBhd2FpdCAoaXNTaW0gPyBjbGllbnQuY2FsbFNpbShkYXRhLCBhZGRyKSA6IGNsaWVudC5jYWxsKGRhdGEsIGFkZHIpKTtcbiAgcmV0dXJuIGNhbGxiYWNrKHJldHVybkRhdGEpO1xufVxuZXhwb3J0IG5hbWVzcGFjZSBNdWx0aXBsZSB7XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdE5hbWUgPSAnTXVsdGlwbGUnO1xuICBleHBvcnQgY29uc3QgYWJpID1cbiAgICAnW3tcImNvbnN0YW50XCI6dHJ1ZSxcImlucHV0c1wiOltdLFwibmFtZVwiOlwiZ2V0XCIsXCJvdXRwdXRzXCI6W3tcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJcIixcInR5cGVcIjpcImludDI1NlwifSx7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiXCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn0se1wiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcIlwiLFwidHlwZVwiOlwiaW50MjU2XCJ9XSxcInBheWFibGVcIjpmYWxzZSxcInN0YXRlTXV0YWJpbGl0eVwiOlwicHVyZVwiLFwidHlwZVwiOlwiZnVuY3Rpb25cIn1dJztcbiAgZXhwb3J0IGNvbnN0IGJ5dGVjb2RlID1cbiAgICAnNjA4MDYwNDA1MjM0ODAxNTYwMGY1NzYwMDA4MGZkNWI1MDYwYWI4MDYxMDAxZTYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYwMGY1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjAyODU3NjAwMDM1NjBlMDFjODA2MzZkNGNlNjNjMTQ2MDJkNTc1YjYwMDA4MGZkNWI2MDMzNjA1NzU2NWI2MDQwNTE4MDg0ODE1MjYwMjAwMTgzODE1MjYwMjAwMTgyODE1MjYwMjAwMTkzNTA1MDUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDAwODA2MDAwNjAwMTYwMDI2MDAzODI5MjUwODE5MTUwODA5MDUwOTI1MDkyNTA5MjUwOTA5MTkyNTZmZWEyNjU2MjdhN2E3MjMxNTgyMGRiMTNhYTUwZjFlMWFkOTRjZGM4ZmIyYjE1OGIxMDVkMGQwODEyZDUzZDk4NTFlZDhhOWJmYTU0NDdlM2MxNzg2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGNvbnN0IGRlcGxveWVkQnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjAwZjU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MDI4NTc2MDAwMzU2MGUwMWM4MDYzNmQ0Y2U2M2MxNDYwMmQ1NzViNjAwMDgwZmQ1YjYwMzM2MDU3NTY1YjYwNDA1MTgwODQ4MTUyNjAyMDAxODM4MTUyNjAyMDAxODI4MTUyNjAyMDAxOTM1MDUwNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MDYwMDA2MDAxNjAwMjYwMDM4MjkyNTA4MTkxNTA4MDkwNTA5MjUwOTI1MDkyNTA5MDkxOTI1NmZlYTI2NTYyN2E3YTcyMzE1ODIwZGIxM2FhNTBmMWUxYWQ5NGNkYzhmYjJiMTU4YjEwNWQwZDA4MTJkNTNkOTg1MWVkOGE5YmZhNTQ0N2UzYzE3ODY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgZnVuY3Rpb24gZGVwbG95KHtcbiAgICBjbGllbnQsXG4gICAgd2l0aENvbnRyYWN0TWV0YSxcbiAgfToge1xuICAgIGNsaWVudDogUHJvdmlkZXI7XG4gICAgd2l0aENvbnRyYWN0TWV0YT86IGJvb2xlYW47XG4gIH0pOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICBjb25zdCBkYXRhID0gQnVmZmVyLmNvbmNhdChbQnVmZmVyLmZyb20oYnl0ZWNvZGUsICdoZXgnKSwgY29kZWMuZW5jb2RlRGVwbG95KCldKTtcbiAgICByZXR1cm4gY2xpZW50LmRlcGxveShcbiAgICAgIGRhdGEsXG4gICAgICB3aXRoQ29udHJhY3RNZXRhXG4gICAgICAgID8gW3sgYWJpOiBNdWx0aXBsZS5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKE11bHRpcGxlLmRlcGxveWVkQnl0ZWNvZGUsICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpIH1dXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICk7XG4gIH1cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveUNvbnRyYWN0KGRlcHM6IHsgY2xpZW50OiBQcm92aWRlcjsgd2l0aENvbnRyYWN0TWV0YT86IGJvb2xlYW4gfSk6IFByb21pc2U8Q29udHJhY3Q+IHtcbiAgICBjb25zdCBhZGRyZXNzID0gYXdhaXQgZGVwbG95KGRlcHMpO1xuICAgIHJldHVybiBjb250cmFjdChkZXBzLmNsaWVudCwgYWRkcmVzcyk7XG4gIH1cbiAgZXhwb3J0IHR5cGUgQ29udHJhY3QgPSBSZXR1cm5UeXBlPHR5cGVvZiBjb250cmFjdD47XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdCA9IChjbGllbnQ6IFByb3ZpZGVyLCBhZGRyZXNzOiBzdHJpbmcpID0+XG4gICAgKHtcbiAgICAgIG5hbWU6ICdNdWx0aXBsZScsXG4gICAgICBhZGRyZXNzLFxuICAgICAgZnVuY3Rpb25zOiB7XG4gICAgICAgIGdldChjYWxsID0gZGVmYXVsdENhbGwpOiBQcm9taXNlPFtudW1iZXIsIG51bWJlciwgbnVtYmVyXT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5nZXQoKTtcbiAgICAgICAgICByZXR1cm4gY2FsbDxbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgdHJ1ZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5nZXQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgfSBhcyBjb25zdCk7XG4gIGV4cG9ydCBjb25zdCBlbmNvZGUgPSAoY2xpZW50OiBQcm92aWRlcikgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJzZENENFNjNDJyk7XG4gICAgICB9LFxuICAgIH07XG4gIH07XG4gIGV4cG9ydCBjb25zdCBkZWNvZGUgPSAoY2xpZW50OiBQcm92aWRlciwgZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCwgdG9waWNzOiBVaW50OEFycmF5W10gPSBbXSkgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0OiAoKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdID0+IHtcbiAgICAgICAgcmV0dXJuIGNvZGVjLmRlY29kZUZ1bmN0aW9uUmVzdWx0KCc2RDRDRTYzQycsIGRhdGEpO1xuICAgICAgfSxcbiAgICB9O1xuICB9O1xufVxuIl19

@@ -20,4 +20,10 @@ /// <reference types="node" />

const deployedBytecode = "6080604052348015600f57600080fd5b506004361060325760003560e01c80636d4ce63c146037578063e5c19b2d146053575b600080fd5b603d607e565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b81019080803590602001909291905050506087565b005b60008054905090565b806000819055505056fea265627a7a72315820df6fea8cbd336a45734df49c645eb1a45497cd5babf1e4c20c340998d6d9cb6264736f6c63430005110032";
function deploy(client: Provider, x: number, withContractMeta?: boolean): Promise<string>;
function deployContract(client: Provider, x: number, withContractMeta?: boolean): Promise<Contract>;
function deploy({ client, withContractMeta, }: {
client: Provider;
withContractMeta?: boolean;
}, x: number): Promise<string>;
function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
}, x: number): Promise<Contract>;
type Contract = ReturnType<typeof contract>;

@@ -24,0 +30,0 @@ const contract: (client: Provider, address: string) => {

@@ -62,4 +62,4 @@ "use strict";

Storage.deployedBytecode = '6080604052348015600f57600080fd5b506004361060325760003560e01c80636d4ce63c146037578063e5c19b2d146053575b600080fd5b603d607e565b6040518082815260200191505060405180910390f35b607c60048036036020811015606757600080fd5b81019080803590602001909291905050506087565b005b60008054905090565b806000819055505056fea265627a7a72315820df6fea8cbd336a45734df49c645eb1a45497cd5babf1e4c20c340998d6d9cb6264736f6c63430005110032';
function deploy(client, x, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deploy(_a, x) {
var client = _a.client, withContractMeta = _a.withContractMeta;
var codec = client.contractCodec(Storage.abi);

@@ -72,4 +72,3 @@ var data = Buffer.concat([Buffer.from(Storage.bytecode, 'hex'), codec.encodeDeploy(x)]);

Storage.deploy = deploy;
function deployContract(client, x, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps, x) {
return __awaiter(this, void 0, void 0, function () {

@@ -79,6 +78,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, x, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps, x)];
case 1:
address = _a.sent();
return [2 /*return*/, Storage.contract(client, address)];
return [2 /*return*/, Storage.contract(deps.client, address)];
}

@@ -136,2 +135,2 @@ });

})(Storage = exports.Storage || (exports.Storage = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RvcmFnZS5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc29sdHMvc29sL3N0b3JhZ2UvU3RvcmFnZS5hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXVDO0FBQ3ZDLHdDQUEyRjtBQXFCM0YsU0FBc0IsV0FBVyxDQUMvQixNQUFnQixFQUNoQixJQUFZLEVBQ1osSUFBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQXdEOzs7Ozt3QkFFckMscUJBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFBOztvQkFBakYsVUFBVSxHQUFHLFNBQW9FO29CQUN2RixzQkFBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUM7Ozs7Q0FDN0I7QUFURCxrQ0FTQztBQUNELElBQWlCLE9BQU8sQ0F5RXZCO0FBekVELFdBQWlCLE9BQU87SUFDVCxvQkFBWSxHQUFHLFNBQVMsQ0FBQztJQUN6QixXQUFHLEdBQ2QsZ2VBQWdlLENBQUM7SUFDdGQsZ0JBQVEsR0FDbkIsa2tCQUFra0IsQ0FBQztJQUN4akIsd0JBQWdCLEdBQzNCLDhZQUE4WSxDQUFDO0lBQ2paLFNBQWdCLE1BQU0sQ0FBQyxNQUFnQixFQUFFLENBQVMsRUFBRSxnQkFBd0I7UUFBeEIsaUNBQUEsRUFBQSx3QkFBd0I7UUFDMUUsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xGLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsSUFBSSxFQUNKLGdCQUFnQjtZQUNkLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLElBQUksY0FBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDNUcsQ0FBQyxDQUFDLFNBQVMsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQVRlLGNBQU0sU0FTckIsQ0FBQTtJQUNELFNBQXNCLGNBQWMsQ0FBQyxNQUFnQixFQUFFLENBQVMsRUFBRSxnQkFBd0I7UUFBeEIsaUNBQUEsRUFBQSx3QkFBd0I7Ozs7OzRCQUN4RSxxQkFBTSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFBOzt3QkFBbkQsT0FBTyxHQUFHLFNBQXlDO3dCQUN6RCxzQkFBTyxRQUFBLFFBQVEsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUM7Ozs7S0FDbEM7SUFIcUIsc0JBQWMsaUJBR25DLENBQUE7SUFFWSxnQkFBUSxHQUFHLFVBQUMsTUFBZ0IsRUFBRSxPQUFlO1FBQ3hELE9BQUEsQ0FBQztZQUNDLElBQUksRUFBRSxTQUFTO1lBQ2YsT0FBTyxTQUFBO1lBQ1AsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBSCxVQUNFLElBQWtCO29CQUFsQixxQkFBQSxFQUFBLGtCQUFrQjtvQkFJbEIsSUFBTSxJQUFJLEdBQUcsUUFBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7b0JBQ2xDLE9BQU8sSUFBSSxDQUVSLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFDLElBQTRCO3dCQUMzRCxPQUFPLFFBQUEsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDcEMsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQztnQkFDRCxHQUFHLEVBQUgsVUFBSSxDQUFTLEVBQUUsSUFBa0I7b0JBQWxCLHFCQUFBLEVBQUEsa0JBQWtCO29CQUMvQixJQUFNLElBQUksR0FBRyxRQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ25DLE9BQU8sSUFBSSxDQUFPLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxVQUFDLElBQTRCO3dCQUMzRSxPQUFPLFFBQUEsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDcEMsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQzthQUNPO1NBQ0QsQ0FBQTtJQXZCWCxDQXVCVyxDQUFDO0lBQ0QsY0FBTSxHQUFHLFVBQUMsTUFBZ0I7UUFDckMsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE9BQU87WUFDTCxHQUFHLEVBQUU7Z0JBQ0gsT0FBTyxLQUFLLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDOUMsQ0FBQztZQUNELEdBQUcsRUFBRSxVQUFDLENBQVM7Z0JBQ2IsT0FBTyxLQUFLLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2pELENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0lBQ1csY0FBTSxHQUFHLFVBQUMsTUFBZ0IsRUFBRSxJQUE0QixFQUFFLE1BQXlCO1FBQXpCLHVCQUFBLEVBQUEsV0FBeUI7UUFDOUYsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE9BQU87WUFDTCxHQUFHLEVBQUU7Z0JBR0ksSUFBQSxHQUFHLEdBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsR0FBaEQsQ0FBaUQ7Z0JBQzNELE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUM7WUFDdEIsQ0FBQztZQUNELEdBQUcsRUFBRTtnQkFDSCxPQUFPO1lBQ1QsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDLEVBekVnQixPQUFPLEdBQVAsZUFBTyxLQUFQLGVBQU8sUUF5RXZCIiwic291cmNlc0NvbnRlbnQiOlsiLy9Db2RlIGdlbmVyYXRlZCBieSBzb2x0cy4gRE8gTk9UIEVESVQuXG5pbXBvcnQgeyBBZGRyZXNzLCBDYW5jZWxTdHJlYW1TaWduYWwsIENvbnRyYWN0Q29kZWMsIEV2ZW50LCBLZWNjYWsgfSBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbnRlcmZhY2UgUHJvdmlkZXIge1xuICBkZXBsb3koXG4gICAgZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBjb250cmFjdE1ldGE/OiB7XG4gICAgICBhYmk6IHN0cmluZztcbiAgICAgIGNvZGVIYXNoOiBVaW50OEFycmF5O1xuICAgIH1bXSxcbiAgKTogUHJvbWlzZTxBZGRyZXNzPjtcbiAgY2FsbChkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBjYWxsU2ltKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGxpc3RlbihcbiAgICBzaWduYXR1cmVzOiBzdHJpbmdbXSxcbiAgICBhZGRyZXNzOiBzdHJpbmcsXG4gICAgY2FsbGJhY2s6IChlcnI/OiBFcnJvciwgZXZlbnQ/OiBFdmVudCkgPT4gQ2FuY2VsU3RyZWFtU2lnbmFsIHwgdm9pZCxcbiAgICBzdGFydD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgIGVuZD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICApOiB1bmtub3duO1xuICBjb250cmFjdENvZGVjKGNvbnRyYWN0QUJJOiBzdHJpbmcpOiBDb250cmFjdENvZGVjO1xufVxuZXhwb3J0IHR5cGUgQ2FsbGVyID0gdHlwZW9mIGRlZmF1bHRDYWxsO1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlZmF1bHRDYWxsPE91dHB1dD4oXG4gIGNsaWVudDogUHJvdmlkZXIsXG4gIGFkZHI6IHN0cmluZyxcbiAgZGF0YTogVWludDhBcnJheSxcbiAgaXNTaW06IGJvb2xlYW4sXG4gIGNhbGxiYWNrOiAocmV0dXJuRGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4gT3V0cHV0LFxuKTogUHJvbWlzZTxPdXRwdXQ+IHtcbiAgY29uc3QgcmV0dXJuRGF0YSA9IGF3YWl0IChpc1NpbSA/IGNsaWVudC5jYWxsU2ltKGRhdGEsIGFkZHIpIDogY2xpZW50LmNhbGwoZGF0YSwgYWRkcikpO1xuICByZXR1cm4gY2FsbGJhY2socmV0dXJuRGF0YSk7XG59XG5leHBvcnQgbmFtZXNwYWNlIFN0b3JhZ2Uge1xuICBleHBvcnQgY29uc3QgY29udHJhY3ROYW1lID0gJ1N0b3JhZ2UnO1xuICBleHBvcnQgY29uc3QgYWJpID1cbiAgICAnW3tcImlucHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwieFwiLFwidHlwZVwiOlwiaW50MjU2XCJ9XSxcInBheWFibGVcIjpmYWxzZSxcInN0YXRlTXV0YWJpbGl0eVwiOlwibm9ucGF5YWJsZVwiLFwidHlwZVwiOlwiY29uc3RydWN0b3JcIn0se1wiY29uc3RhbnRcIjp0cnVlLFwiaW5wdXRzXCI6W10sXCJuYW1lXCI6XCJnZXRcIixcIm91dHB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcInJldFwiLFwidHlwZVwiOlwiaW50MjU2XCJ9XSxcInBheWFibGVcIjpmYWxzZSxcInN0YXRlTXV0YWJpbGl0eVwiOlwidmlld1wiLFwidHlwZVwiOlwiZnVuY3Rpb25cIn0se1wiY29uc3RhbnRcIjpmYWxzZSxcImlucHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwieFwiLFwidHlwZVwiOlwiaW50MjU2XCJ9XSxcIm5hbWVcIjpcInNldFwiLFwib3V0cHV0c1wiOltdLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJub25wYXlhYmxlXCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifV0nO1xuICBleHBvcnQgY29uc3QgYnl0ZWNvZGUgPVxuICAgICc2MDgwNjA0MDUyMzQ4MDE1NjEwMDEwNTc2MDAwODBmZDViNTA2MDQwNTE2MTAxMjAzODAzODA2MTAxMjA4MzM5ODE4MTAxNjA0MDUyNjAyMDgxMTAxNTYxMDAzMzU3NjAwMDgwZmQ1YjgxMDE5MDgwODA1MTkwNjAyMDAxOTA5MjkxOTA1MDUwNTA4MDYwMDA4MTkwNTU1MDUwNjBjNjgwNjEwMDVhNjAwMDM5NjAwMGYzZmU2MDgwNjA0MDUyMzQ4MDE1NjAwZjU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MDMyNTc2MDAwMzU2MGUwMWM4MDYzNmQ0Y2U2M2MxNDYwMzc1NzgwNjNlNWMxOWIyZDE0NjA1MzU3NWI2MDAwODBmZDViNjAzZDYwN2U1NjViNjA0MDUxODA4MjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDdjNjAwNDgwMzYwMzYwMjA4MTEwMTU2MDY3NTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYwODc1NjViMDA1YjYwMDA4MDU0OTA1MDkwNTY1YjgwNjAwMDgxOTA1NTUwNTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwZGY2ZmVhOGNiZDMzNmE0NTczNGRmNDljNjQ1ZWIxYTQ1NDk3Y2Q1YmFiZjFlNGMyMGMzNDA5OThkNmQ5Y2I2MjY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MDBmNTc2MDAwODBmZDViNTA2MDA0MzYxMDYwMzI1NzYwMDAzNTYwZTAxYzgwNjM2ZDRjZTYzYzE0NjAzNzU3ODA2M2U1YzE5YjJkMTQ2MDUzNTc1YjYwMDA4MGZkNWI2MDNkNjA3ZTU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwN2M2MDA0ODAzNjAzNjAyMDgxMTAxNTYwNjc1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjA4NzU2NWIwMDViNjAwMDgwNTQ5MDUwOTA1NjViODA2MDAwODE5MDU1NTA1MDU2ZmVhMjY1NjI3YTdhNzIzMTU4MjBkZjZmZWE4Y2JkMzM2YTQ1NzM0ZGY0OWM2NDVlYjFhNDU0OTdjZDViYWJmMWU0YzIwYzM0MDk5OGQ2ZDljYjYyNjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBmdW5jdGlvbiBkZXBsb3koY2xpZW50OiBQcm92aWRlciwgeDogbnVtYmVyLCB3aXRoQ29udHJhY3RNZXRhID0gZmFsc2UpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICBjb25zdCBkYXRhID0gQnVmZmVyLmNvbmNhdChbQnVmZmVyLmZyb20oYnl0ZWNvZGUsICdoZXgnKSwgY29kZWMuZW5jb2RlRGVwbG95KHgpXSk7XG4gICAgcmV0dXJuIGNsaWVudC5kZXBsb3koXG4gICAgICBkYXRhLFxuICAgICAgd2l0aENvbnRyYWN0TWV0YVxuICAgICAgICA/IFt7IGFiaTogU3RvcmFnZS5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKFN0b3JhZ2UuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfV1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgKTtcbiAgfVxuICBleHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVwbG95Q29udHJhY3QoY2xpZW50OiBQcm92aWRlciwgeDogbnVtYmVyLCB3aXRoQ29udHJhY3RNZXRhID0gZmFsc2UpOiBQcm9taXNlPENvbnRyYWN0PiB7XG4gICAgY29uc3QgYWRkcmVzcyA9IGF3YWl0IGRlcGxveShjbGllbnQsIHgsIHdpdGhDb250cmFjdE1ldGEpO1xuICAgIHJldHVybiBjb250cmFjdChjbGllbnQsIGFkZHJlc3MpO1xuICB9XG4gIGV4cG9ydCB0eXBlIENvbnRyYWN0ID0gUmV0dXJuVHlwZTx0eXBlb2YgY29udHJhY3Q+O1xuICBleHBvcnQgY29uc3QgY29udHJhY3QgPSAoY2xpZW50OiBQcm92aWRlciwgYWRkcmVzczogc3RyaW5nKSA9PlxuICAgICh7XG4gICAgICBuYW1lOiAnU3RvcmFnZScsXG4gICAgICBhZGRyZXNzLFxuICAgICAgZnVuY3Rpb25zOiB7XG4gICAgICAgIGdldChcbiAgICAgICAgICBjYWxsID0gZGVmYXVsdENhbGwsXG4gICAgICAgICk6IFByb21pc2U8e1xuICAgICAgICAgIHJldDogbnVtYmVyO1xuICAgICAgICB9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IGVuY29kZShjbGllbnQpLmdldCgpO1xuICAgICAgICAgIHJldHVybiBjYWxsPHtcbiAgICAgICAgICAgIHJldDogbnVtYmVyO1xuICAgICAgICAgIH0+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgdHJ1ZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5nZXQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgc2V0KHg6IG51bWJlciwgY2FsbCA9IGRlZmF1bHRDYWxsKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IGVuY29kZShjbGllbnQpLnNldCh4KTtcbiAgICAgICAgICByZXR1cm4gY2FsbDx2b2lkPihjbGllbnQsIGFkZHJlc3MsIGRhdGEsIGZhbHNlLCAoZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGRlY29kZShjbGllbnQsIGRhdGEpLnNldCgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSBhcyBjb25zdCxcbiAgICB9IGFzIGNvbnN0KTtcbiAgZXhwb3J0IGNvbnN0IGVuY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIGNvZGVjLmVuY29kZUZ1bmN0aW9uRGF0YSgnNkQ0Q0U2M0MnKTtcbiAgICAgIH0sXG4gICAgICBzZXQ6ICh4OiBudW1iZXIpID0+IHtcbiAgICAgICAgcmV0dXJuIGNvZGVjLmVuY29kZUZ1bmN0aW9uRGF0YSgnRTVDMTlCMkQnLCB4KTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbiAgZXhwb3J0IGNvbnN0IGRlY29kZSA9IChjbGllbnQ6IFByb3ZpZGVyLCBkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkLCB0b3BpY3M6IFVpbnQ4QXJyYXlbXSA9IFtdKSA9PiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIHJldHVybiB7XG4gICAgICBnZXQ6ICgpOiB7XG4gICAgICAgIHJldDogbnVtYmVyO1xuICAgICAgfSA9PiB7XG4gICAgICAgIGNvbnN0IFtyZXRdID0gY29kZWMuZGVjb2RlRnVuY3Rpb25SZXN1bHQoJzZENENFNjNDJywgZGF0YSk7XG4gICAgICAgIHJldHVybiB7IHJldDogcmV0IH07XG4gICAgICB9LFxuICAgICAgc2V0OiAoKTogdm9pZCA9PiB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RvcmFnZS5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc29sdHMvc29sL3N0b3JhZ2UvU3RvcmFnZS5hYmkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUNBQXVDO0FBQ3ZDLHdDQUEyRjtBQXFCM0YsU0FBc0IsV0FBVyxDQUMvQixNQUFnQixFQUNoQixJQUFZLEVBQ1osSUFBZ0IsRUFDaEIsS0FBYyxFQUNkLFFBQXdEOzs7Ozt3QkFFckMscUJBQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFBOztvQkFBakYsVUFBVSxHQUFHLFNBQW9FO29CQUN2RixzQkFBTyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUM7Ozs7Q0FDN0I7QUFURCxrQ0FTQztBQUNELElBQWlCLE9BQU8sQ0F3RnZCO0FBeEZELFdBQWlCLE9BQU87SUFDVCxvQkFBWSxHQUFHLFNBQVMsQ0FBQztJQUN6QixXQUFHLEdBQ2QsZ2VBQWdlLENBQUM7SUFDdGQsZ0JBQVEsR0FDbkIsa2tCQUFra0IsQ0FBQztJQUN4akIsd0JBQWdCLEdBQzNCLDhZQUE4WSxDQUFDO0lBQ2paLFNBQWdCLE1BQU0sQ0FDcEIsRUFNQyxFQUNELENBQVM7WUFOUCxNQUFNLFlBQUEsRUFDTixnQkFBZ0Isc0JBQUE7UUFPbEIsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FB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T0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztZQUN0QixDQUFDO1lBQ0QsR0FBRyxFQUFFO2dCQUNILE9BQU87WUFDVCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsRUF4RmdCLE9BQU8sR0FBUCxlQUFPLEtBQVAsZUFBTyxRQXdGdkIiLCJzb3VyY2VzQ29udGVudCI6WyIvL0NvZGUgZ2VuZXJhdGVkIGJ5IHNvbHRzLiBETyBOT1QgRURJVC5cbmltcG9ydCB7IEFkZHJlc3MsIENhbmNlbFN0cmVhbVNpZ25hbCwgQ29udHJhY3RDb2RlYywgRXZlbnQsIEtlY2NhayB9IGZyb20gJy4uLy4uLy4uL2luZGV4JztcbmludGVyZmFjZSBQcm92aWRlciB7XG4gIGRlcGxveShcbiAgICBkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LFxuICAgIGNvbnRyYWN0TWV0YT86IHtcbiAgICAgIGFiaTogc3RyaW5nO1xuICAgICAgY29kZUhhc2g6IFVpbnQ4QXJyYXk7XG4gICAgfVtdLFxuICApOiBQcm9taXNlPEFkZHJlc3M+O1xuICBjYWxsKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGNhbGxTaW0oZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgbGlzdGVuKFxuICAgIHNpZ25hdHVyZXM6IHN0cmluZ1tdLFxuICAgIGFkZHJlc3M6IHN0cmluZyxcbiAgICBjYWxsYmFjazogKGVycj86IEVycm9yLCBldmVudD86IEV2ZW50KSA9PiBDYW5jZWxTdHJlYW1TaWduYWwgfCB2b2lkLFxuICAgIHN0YXJ0PzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICAgZW5kPzogJ2ZpcnN0JyB8ICdsYXRlc3QnIHwgJ3N0cmVhbScgfCBudW1iZXIsXG4gICk6IHVua25vd247XG4gIGNvbnRyYWN0Q29kZWMoY29udHJhY3RBQkk6IHN0cmluZyk6IENvbnRyYWN0Q29kZWM7XG59XG5leHBvcnQgdHlwZSBDYWxsZXIgPSB0eXBlb2YgZGVmYXVsdENhbGw7XG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVmYXVsdENhbGw8T3V0cHV0PihcbiAgY2xpZW50OiBQcm92aWRlcixcbiAgYWRkcjogc3RyaW5nLFxuICBkYXRhOiBVaW50OEFycmF5LFxuICBpc1NpbTogYm9vbGVhbixcbiAgY2FsbGJhY2s6IChyZXR1cm5EYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiBPdXRwdXQsXG4pOiBQcm9taXNlPE91dHB1dD4ge1xuICBjb25zdCByZXR1cm5EYXRhID0gYXdhaXQgKGlzU2ltID8gY2xpZW50LmNhbGxTaW0oZGF0YSwgYWRkcikgOiBjbGllbnQuY2FsbChkYXRhLCBhZGRyKSk7XG4gIHJldHVybiBjYWxsYmFjayhyZXR1cm5EYXRhKTtcbn1cbmV4cG9ydCBuYW1lc3BhY2UgU3RvcmFnZSB7XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdE5hbWUgPSAnU3RvcmFnZSc7XG4gIGV4cG9ydCBjb25zdCBhYmkgPVxuICAgICdbe1wiaW5wdXRzXCI6W3tcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJ4XCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJub25wYXlhYmxlXCIsXCJ0eXBlXCI6XCJjb25zdHJ1Y3RvclwifSx7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbXSxcIm5hbWVcIjpcImdldFwiLFwib3V0cHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwicmV0XCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwicGF5YWJsZVwiOmZhbHNlLFwic3RhdGVNdXRhYmlsaXR5XCI6XCJ2aWV3XCIsXCJ0eXBlXCI6XCJmdW5jdGlvblwifSx7XCJjb25zdGFudFwiOmZhbHNlLFwiaW5wdXRzXCI6W3tcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJ4XCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwibmFtZVwiOlwic2V0XCIsXCJvdXRwdXRzXCI6W10sXCJwYXlhYmxlXCI6ZmFsc2UsXCJzdGF0ZU11dGFiaWxpdHlcIjpcIm5vbnBheWFibGVcIixcInR5cGVcIjpcImZ1bmN0aW9uXCJ9XSc7XG4gIGV4cG9ydCBjb25zdCBieXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwNDA1MTYxMDEyMDM4MDM4MDYxMDEyMDgzMzk4MTgxMDE2MDQwNTI2MDIwODExMDE1NjEwMDMzNTc2MDAwODBmZDViODEwMTkwODA4MDUxOTA2MDIwMDE5MDkyOTE5MDUwNTA1MDgwNjAwMDgxOTA1NTUwNTA2MGM2ODA2MTAwNWE2MDAwMzk2MDAwZjNmZTYwODA2MDQwNTIzNDgwMTU2MDBmNTc2MDAwODBmZDViNTA2MDA0MzYxMDYwMzI1NzYwMDAzNTYwZTAxYzgwNjM2ZDRjZTYzYzE0NjAzNzU3ODA2M2U1YzE5YjJkMTQ2MDUzNTc1YjYwMDA4MGZkNWI2MDNkNjA3ZTU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwN2M2MDA0ODAzNjAzNjAyMDgxMTAxNTYwNjc1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjA4NzU2NWIwMDViNjAwMDgwNTQ5MDUwOTA1NjViODA2MDAwODE5MDU1NTA1MDU2ZmVhMjY1NjI3YTdhNzIzMTU4MjBkZjZmZWE4Y2JkMzM2YTQ1NzM0ZGY0OWM2NDVlYjFhNDU0OTdjZDViYWJmMWU0YzIwYzM0MDk5OGQ2ZDljYjYyNjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBjb25zdCBkZXBsb3llZEJ5dGVjb2RlID1cbiAgICAnNjA4MDYwNDA1MjM0ODAxNTYwMGY1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjAzMjU3NjAwMDM1NjBlMDFjODA2MzZkNGNlNjNjMTQ2MDM3NTc4MDYzZTVjMTliMmQxNDYwNTM1NzViNjAwMDgwZmQ1YjYwM2Q2MDdlNTY1YjYwNDA1MTgwODI4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViNjA3YzYwMDQ4MDM2MDM2MDIwODExMDE1NjA2NzU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA5MjkxOTA1MDUwNTA2MDg3NTY1YjAwNWI2MDAwODA1NDkwNTA5MDU2NWI4MDYwMDA4MTkwNTU1MDUwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMGRmNmZlYThjYmQzMzZhNDU3MzRkZjQ5YzY0NWViMWE0NTQ5N2NkNWJhYmYxZTRjMjBjMzQwOTk4ZDZkOWNiNjI2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGZ1bmN0aW9uIGRlcGxveShcbiAgICB7XG4gICAgICBjbGllbnQsXG4gICAgICB3aXRoQ29udHJhY3RNZXRhLFxuICAgIH06IHtcbiAgICAgIGNsaWVudDogUHJvdmlkZXI7XG4gICAgICB3aXRoQ29udHJhY3RNZXRhPzogYm9vbGVhbjtcbiAgICB9LFxuICAgIHg6IG51bWJlcixcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgY29uc3QgZGF0YSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKGJ5dGVjb2RlLCAnaGV4JyksIGNvZGVjLmVuY29kZURlcGxveSh4KV0pO1xuICAgIHJldHVybiBjbGllbnQuZGVwbG95KFxuICAgICAgZGF0YSxcbiAgICAgIHdpdGhDb250cmFjdE1ldGFcbiAgICAgICAgPyBbeyBhYmk6IFN0b3JhZ2UuYWJpLCBjb2RlSGFzaDogbmV3IEtlY2NhaygyNTYpLnVwZGF0ZShTdG9yYWdlLmRlcGxveWVkQnl0ZWNvZGUsICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpIH1dXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICk7XG4gIH1cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveUNvbnRyYWN0KFxuICAgIGRlcHM6IHtcbiAgICAgIGNsaWVudDogUHJvdmlkZXI7XG4gICAgICB3aXRoQ29udHJhY3RNZXRhPzogYm9vbGVhbjtcbiAgICB9LFxuICAgIHg6IG51bWJlcixcbiAgKTogUHJvbWlzZTxDb250cmFjdD4ge1xuICAgIGNvbnN0IGFkZHJlc3MgPSBhd2FpdCBkZXBsb3koZGVwcywgeCk7XG4gICAgcmV0dXJuIGNvbnRyYWN0KGRlcHMuY2xpZW50LCBhZGRyZXNzKTtcbiAgfVxuICBleHBvcnQgdHlwZSBDb250cmFjdCA9IFJldHVyblR5cGU8dHlwZW9mIGNvbnRyYWN0PjtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0ID0gKGNsaWVudDogUHJvdmlkZXIsIGFkZHJlc3M6IHN0cmluZykgPT5cbiAgICAoe1xuICAgICAgbmFtZTogJ1N0b3JhZ2UnLFxuICAgICAgYWRkcmVzcyxcbiAgICAgIGZ1bmN0aW9uczoge1xuICAgICAgICBnZXQoXG4gICAgICAgICAgY2FsbCA9IGRlZmF1bHRDYWxsLFxuICAgICAgICApOiBQcm9taXNlPHtcbiAgICAgICAgICByZXQ6IG51bWJlcjtcbiAgICAgICAgfT4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5nZXQoKTtcbiAgICAgICAgICByZXR1cm4gY2FsbDx7XG4gICAgICAgICAgICByZXQ6IG51bWJlcjtcbiAgICAgICAgICB9PihjbGllbnQsIGFkZHJlc3MsIGRhdGEsIHRydWUsIChkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlKGNsaWVudCwgZGF0YSkuZ2V0KCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHNldCh4OiBudW1iZXIsIGNhbGwgPSBkZWZhdWx0Q2FsbCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGUoY2xpZW50KS5zZXQoeCk7XG4gICAgICAgICAgcmV0dXJuIGNhbGw8dm9pZD4oY2xpZW50LCBhZGRyZXNzLCBkYXRhLCBmYWxzZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5zZXQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgfSBhcyBjb25zdCk7XG4gIGV4cG9ydCBjb25zdCBlbmNvZGUgPSAoY2xpZW50OiBQcm92aWRlcikgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0OiAoKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJzZENENFNjNDJyk7XG4gICAgICB9LFxuICAgICAgc2V0OiAoeDogbnVtYmVyKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJ0U1QzE5QjJEJywgeCk7XG4gICAgICB9LFxuICAgIH07XG4gIH07XG4gIGV4cG9ydCBjb25zdCBkZWNvZGUgPSAoY2xpZW50OiBQcm92aWRlciwgZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCwgdG9waWNzOiBVaW50OEFycmF5W10gPSBbXSkgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0OiAoKToge1xuICAgICAgICByZXQ6IG51bWJlcjtcbiAgICAgIH0gPT4ge1xuICAgICAgICBjb25zdCBbcmV0XSA9IGNvZGVjLmRlY29kZUZ1bmN0aW9uUmVzdWx0KCc2RDRDRTYzQycsIGRhdGEpO1xuICAgICAgICByZXR1cm4geyByZXQ6IHJldCB9O1xuICAgICAgfSxcbiAgICAgIHNldDogKCk6IHZvaWQgPT4ge1xuICAgICAgICByZXR1cm47XG4gICAgICB9LFxuICAgIH07XG4gIH07XG59XG4iXX0=

@@ -20,4 +20,10 @@ /// <reference types="node" />

const deployedBytecode = "6080604052348015600f57600080fd5b506004361060285760003560e01c806304c402f414602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600082830190509291505056fea265627a7a72315820c692aa5593a39c498f58c4a0221aa0b6ca567436b02c62f90b9214af7b7c390064736f6c63430005110032";
function deploy(client: Provider, withContractMeta?: boolean): Promise<string>;
function deployContract(client: Provider, withContractMeta?: boolean): Promise<Contract>;
function deploy({ client, withContractMeta, }: {
client: Provider;
withContractMeta?: boolean;
}): Promise<string>;
function deployContract(deps: {
client: Provider;
withContractMeta?: boolean;
}): Promise<Contract>;
type Contract = ReturnType<typeof contract>;

@@ -24,0 +30,0 @@ const contract: (client: Provider, address: string) => {

@@ -62,4 +62,4 @@ "use strict";

Unnamed.deployedBytecode = '6080604052348015600f57600080fd5b506004361060285760003560e01c806304c402f414602d575b600080fd5b606060048036036040811015604157600080fd5b8101908080359060200190929190803590602001909291905050506076565b6040518082815260200191505060405180910390f35b600082830190509291505056fea265627a7a72315820c692aa5593a39c498f58c4a0221aa0b6ca567436b02c62f90b9214af7b7c390064736f6c63430005110032';
function deploy(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deploy(_a) {
var client = _a.client, withContractMeta = _a.withContractMeta;
var codec = client.contractCodec(Unnamed.abi);

@@ -72,4 +72,3 @@ var data = Buffer.concat([Buffer.from(Unnamed.bytecode, 'hex'), codec.encodeDeploy()]);

Unnamed.deploy = deploy;
function deployContract(client, withContractMeta) {
if (withContractMeta === void 0) { withContractMeta = false; }
function deployContract(deps) {
return __awaiter(this, void 0, void 0, function () {

@@ -79,6 +78,6 @@ var address;

switch (_a.label) {
case 0: return [4 /*yield*/, deploy(client, withContractMeta)];
case 0: return [4 /*yield*/, deploy(deps)];
case 1:
address = _a.sent();
return [2 /*return*/, Unnamed.contract(client, address)];
return [2 /*return*/, Unnamed.contract(deps.client, address)];
}

@@ -123,2 +122,2 @@ });

})(Unnamed = exports.Unnamed || (exports.Unnamed = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5uYW1lZC5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvc29sL1VubmFtZWQuYWJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF1QztBQUN2QyxxQ0FBd0Y7QUFxQnhGLFNBQXNCLFdBQVcsQ0FDL0IsTUFBZ0IsRUFDaEIsSUFBWSxFQUNaLElBQWdCLEVBQ2hCLEtBQWMsRUFDZCxRQUF3RDs7Ozs7d0JBRXJDLHFCQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBQTs7b0JBQWpGLFVBQVUsR0FBRyxTQUFvRTtvQkFDdkYsc0JBQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFDOzs7O0NBQzdCO0FBVEQsa0NBU0M7QUFDRCxJQUFpQixPQUFPLENBOER2QjtBQTlERCxXQUFpQixPQUFPO0lBQ1Qsb0JBQVksR0FBRyxTQUFTLENBQUM7SUFDekIsV0FBRyxHQUNkLG9SQUFvUixDQUFDO0lBQzFRLGdCQUFRLEdBQ25CLGdiQUFnYixDQUFDO0lBQ3RhLHdCQUFnQixHQUMzQixrWEFBa1gsQ0FBQztJQUNyWCxTQUFnQixNQUFNLENBQUMsTUFBZ0IsRUFBRSxnQkFBd0I7UUFBeEIsaUNBQUEsRUFBQSx3QkFBd0I7UUFDL0QsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUNsQixJQUFJLEVBQ0osZ0JBQWdCO1lBQ2QsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM1RyxDQUFDLENBQUMsU0FBUyxDQUNkLENBQUM7SUFDSixDQUFDO0lBVGUsY0FBTSxTQVNyQixDQUFBO0lBQ0QsU0FBc0IsY0FBYyxDQUFDLE1BQWdCLEVBQUUsZ0JBQXdCO1FBQXhCLGlDQUFBLEVBQUEsd0JBQXdCOzs7Ozs0QkFDN0QscUJBQU0sTUFBTSxDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxFQUFBOzt3QkFBaEQsT0FBTyxHQUFHLFNBQXNDO3dCQUN0RCxzQkFBTyxRQUFBLFFBQVEsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUM7Ozs7S0FDbEM7SUFIcUIsc0JBQWMsaUJBR25DLENBQUE7SUFFWSxnQkFBUSxHQUFHLFVBQUMsTUFBZ0IsRUFBRSxPQUFlO1FBQ3hELE9BQUEsQ0FBQztZQUNDLElBQUksRUFBRSxTQUFTO1lBQ2YsT0FBTyxTQUFBO1lBQ1AsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBSCxVQUNFLENBQVMsRUFDVCxJQUFrQjtvQkFBbEIscUJBQUEsRUFBQSxrQkFBa0I7b0JBSWxCLElBQU0sSUFBSSxHQUFHLFFBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDbkMsT0FBTyxJQUFJLENBRVIsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFVBQUMsSUFBNEI7d0JBQzNELE9BQU8sUUFBQSxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUNwQyxDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDO2FBQ087U0FDRCxDQUFBO0lBbEJYLENBa0JXLENBQUM7SUFDRCxjQUFNLEdBQUcsVUFBQyxNQUFnQjtRQUNyQyxJQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQUEsR0FBRyxDQUFDLENBQUM7UUFDeEMsT0FBTztZQUNMLEdBQUcsRUFBRSxVQUFDLENBQVM7Z0JBQ2IsT0FBTyxLQUFLLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2pELENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0lBQ1csY0FBTSxHQUFHLFVBQUMsTUFBZ0IsRUFBRSxJQUE0QixFQUFFLE1BQXlCO1FBQXpCLHVCQUFBLEVBQUEsV0FBeUI7UUFDOUYsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE9BQU87WUFDTCxHQUFHLEVBQUU7Z0JBR0ksSUFBQSxHQUFHLEdBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsR0FBaEQsQ0FBaUQ7Z0JBQzNELE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUM7WUFDdEIsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDLEVBOURnQixPQUFPLEdBQVAsZUFBTyxLQUFQLGVBQU8sUUE4RHZCIiwic291cmNlc0NvbnRlbnQiOlsiLy9Db2RlIGdlbmVyYXRlZCBieSBzb2x0cy4gRE8gTk9UIEVESVQuXG5pbXBvcnQgeyBBZGRyZXNzLCBDYW5jZWxTdHJlYW1TaWduYWwsIENvbnRyYWN0Q29kZWMsIEV2ZW50LCBLZWNjYWsgfSBmcm9tICcuLi8uLi9pbmRleCc7XG5pbnRlcmZhY2UgUHJvdmlkZXIge1xuICBkZXBsb3koXG4gICAgZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSxcbiAgICBjb250cmFjdE1ldGE/OiB7XG4gICAgICBhYmk6IHN0cmluZztcbiAgICAgIGNvZGVIYXNoOiBVaW50OEFycmF5O1xuICAgIH1bXSxcbiAgKTogUHJvbWlzZTxBZGRyZXNzPjtcbiAgY2FsbChkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBjYWxsU2ltKGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksIGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8VWludDhBcnJheSB8IHVuZGVmaW5lZD47XG4gIGxpc3RlbihcbiAgICBzaWduYXR1cmVzOiBzdHJpbmdbXSxcbiAgICBhZGRyZXNzOiBzdHJpbmcsXG4gICAgY2FsbGJhY2s6IChlcnI/OiBFcnJvciwgZXZlbnQ/OiBFdmVudCkgPT4gQ2FuY2VsU3RyZWFtU2lnbmFsIHwgdm9pZCxcbiAgICBzdGFydD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICAgIGVuZD86ICdmaXJzdCcgfCAnbGF0ZXN0JyB8ICdzdHJlYW0nIHwgbnVtYmVyLFxuICApOiB1bmtub3duO1xuICBjb250cmFjdENvZGVjKGNvbnRyYWN0QUJJOiBzdHJpbmcpOiBDb250cmFjdENvZGVjO1xufVxuZXhwb3J0IHR5cGUgQ2FsbGVyID0gdHlwZW9mIGRlZmF1bHRDYWxsO1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlZmF1bHRDYWxsPE91dHB1dD4oXG4gIGNsaWVudDogUHJvdmlkZXIsXG4gIGFkZHI6IHN0cmluZyxcbiAgZGF0YTogVWludDhBcnJheSxcbiAgaXNTaW06IGJvb2xlYW4sXG4gIGNhbGxiYWNrOiAocmV0dXJuRGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCkgPT4gT3V0cHV0LFxuKTogUHJvbWlzZTxPdXRwdXQ+IHtcbiAgY29uc3QgcmV0dXJuRGF0YSA9IGF3YWl0IChpc1NpbSA/IGNsaWVudC5jYWxsU2ltKGRhdGEsIGFkZHIpIDogY2xpZW50LmNhbGwoZGF0YSwgYWRkcikpO1xuICByZXR1cm4gY2FsbGJhY2socmV0dXJuRGF0YSk7XG59XG5leHBvcnQgbmFtZXNwYWNlIFVubmFtZWQge1xuICBleHBvcnQgY29uc3QgY29udHJhY3ROYW1lID0gJ1VubmFtZWQnO1xuICBleHBvcnQgY29uc3QgYWJpID1cbiAgICAnW3tcImNvbnN0YW50XCI6dHJ1ZSxcImlucHV0c1wiOlt7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiYVwiLFwidHlwZVwiOlwiaW50MjU2XCJ9LHtcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJcIixcInR5cGVcIjpcImludDI1NlwifV0sXCJuYW1lXCI6XCJzZXRcIixcIm91dHB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcInN1bVwiLFwidHlwZVwiOlwiaW50MjU2XCJ9XSxcInBheWFibGVcIjpmYWxzZSxcInN0YXRlTXV0YWJpbGl0eVwiOlwicHVyZVwiLFwidHlwZVwiOlwiZnVuY3Rpb25cIn1dJztcbiAgZXhwb3J0IGNvbnN0IGJ5dGVjb2RlID1cbiAgICAnNjA4MDYwNDA1MjM0ODAxNTYxMDAxMDU3NjAwMDgwZmQ1YjUwNjBiODgwNjEwMDFmNjAwMDM5NjAwMGYzZmU2MDgwNjA0MDUyMzQ4MDE1NjAwZjU3NjAwMDgwZmQ1YjUwNjAwNDM2MTA2MDI4NTc2MDAwMzU2MGUwMWM4MDYzMDRjNDAyZjQxNDYwMmQ1NzViNjAwMDgwZmQ1YjYwNjA2MDA0ODAzNjAzNjA0MDgxMTAxNTYwNDE1NzYwMDA4MGZkNWI4MTAxOTA4MDgwMzU5MDYwMjAwMTkwOTI5MTkwODAzNTkwNjAyMDAxOTA5MjkxOTA1MDUwNTA2MDc2NTY1YjYwNDA1MTgwODI4MTUyNjAyMDAxOTE1MDUwNjA0MDUxODA5MTAzOTBmMzViNjAwMDgyODMwMTkwNTA5MjkxNTA1MDU2ZmVhMjY1NjI3YTdhNzIzMTU4MjBjNjkyYWE1NTkzYTM5YzQ5OGY1OGM0YTAyMjFhYTBiNmNhNTY3NDM2YjAyYzYyZjkwYjkyMTRhZjdiN2MzOTAwNjQ3MzZmNmM2MzQzMDAwNTExMDAzMic7XG4gIGV4cG9ydCBjb25zdCBkZXBsb3llZEJ5dGVjb2RlID1cbiAgICAnNjA4MDYwNDA1MjM0ODAxNTYwMGY1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjAyODU3NjAwMDM1NjBlMDFjODA2MzA0YzQwMmY0MTQ2MDJkNTc1YjYwMDA4MGZkNWI2MDYwNjAwNDgwMzYwMzYwNDA4MTEwMTU2MDQxNTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDkyOTE5MDgwMzU5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjA3NjU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MjgzMDE5MDUwOTI5MTUwNTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwYzY5MmFhNTU5M2EzOWM0OThmNThjNGEwMjIxYWEwYjZjYTU2NzQzNmIwMmM2MmY5MGI5MjE0YWY3YjdjMzkwMDY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgZnVuY3Rpb24gZGVwbG95KGNsaWVudDogUHJvdmlkZXIsIHdpdGhDb250cmFjdE1ldGEgPSBmYWxzZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgY29uc3QgY29kZWMgPSBjbGllbnQuY29udHJhY3RDb2RlYyhhYmkpO1xuICAgIGNvbnN0IGRhdGEgPSBCdWZmZXIuY29uY2F0KFtCdWZmZXIuZnJvbShieXRlY29kZSwgJ2hleCcpLCBjb2RlYy5lbmNvZGVEZXBsb3koKV0pO1xuICAgIHJldHVybiBjbGllbnQuZGVwbG95KFxuICAgICAgZGF0YSxcbiAgICAgIHdpdGhDb250cmFjdE1ldGFcbiAgICAgICAgPyBbeyBhYmk6IFVubmFtZWQuYWJpLCBjb2RlSGFzaDogbmV3IEtlY2NhaygyNTYpLnVwZGF0ZShVbm5hbWVkLmRlcGxveWVkQnl0ZWNvZGUsICdoZXgnKS5kaWdlc3QoJ2JpbmFyeScpIH1dXG4gICAgICAgIDogdW5kZWZpbmVkLFxuICAgICk7XG4gIH1cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveUNvbnRyYWN0KGNsaWVudDogUHJvdmlkZXIsIHdpdGhDb250cmFjdE1ldGEgPSBmYWxzZSk6IFByb21pc2U8Q29udHJhY3Q+IHtcbiAgICBjb25zdCBhZGRyZXNzID0gYXdhaXQgZGVwbG95KGNsaWVudCwgd2l0aENvbnRyYWN0TWV0YSk7XG4gICAgcmV0dXJuIGNvbnRyYWN0KGNsaWVudCwgYWRkcmVzcyk7XG4gIH1cbiAgZXhwb3J0IHR5cGUgQ29udHJhY3QgPSBSZXR1cm5UeXBlPHR5cGVvZiBjb250cmFjdD47XG4gIGV4cG9ydCBjb25zdCBjb250cmFjdCA9IChjbGllbnQ6IFByb3ZpZGVyLCBhZGRyZXNzOiBzdHJpbmcpID0+XG4gICAgKHtcbiAgICAgIG5hbWU6ICdVbm5hbWVkJyxcbiAgICAgIGFkZHJlc3MsXG4gICAgICBmdW5jdGlvbnM6IHtcbiAgICAgICAgc2V0KFxuICAgICAgICAgIGE6IG51bWJlcixcbiAgICAgICAgICBjYWxsID0gZGVmYXVsdENhbGwsXG4gICAgICAgICk6IFByb21pc2U8e1xuICAgICAgICAgIHN1bTogbnVtYmVyO1xuICAgICAgICB9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IGVuY29kZShjbGllbnQpLnNldChhKTtcbiAgICAgICAgICByZXR1cm4gY2FsbDx7XG4gICAgICAgICAgICBzdW06IG51bWJlcjtcbiAgICAgICAgICB9PihjbGllbnQsIGFkZHJlc3MsIGRhdGEsIHRydWUsIChkYXRhOiBVaW50OEFycmF5IHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb2RlKGNsaWVudCwgZGF0YSkuc2V0KCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICB9IGFzIGNvbnN0LFxuICAgIH0gYXMgY29uc3QpO1xuICBleHBvcnQgY29uc3QgZW5jb2RlID0gKGNsaWVudDogUHJvdmlkZXIpID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHNldDogKGE6IG51bWJlcikgPT4ge1xuICAgICAgICByZXR1cm4gY29kZWMuZW5jb2RlRnVuY3Rpb25EYXRhKCcwNEM0MDJGNCcsIGEpO1xuICAgICAgfSxcbiAgICB9O1xuICB9O1xuICBleHBvcnQgY29uc3QgZGVjb2RlID0gKGNsaWVudDogUHJvdmlkZXIsIGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQsIHRvcGljczogVWludDhBcnJheVtdID0gW10pID0+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHNldDogKCk6IHtcbiAgICAgICAgc3VtOiBudW1iZXI7XG4gICAgICB9ID0+IHtcbiAgICAgICAgY29uc3QgW3N1bV0gPSBjb2RlYy5kZWNvZGVGdW5jdGlvblJlc3VsdCgnMDRDNDAyRjQnLCBkYXRhKTtcbiAgICAgICAgcmV0dXJuIHsgc3VtOiBzdW0gfTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5uYW1lZC5hYmkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc29sdHMvc29sL1VubmFtZWQuYWJpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHVDQUF1QztBQUN2QyxxQ0FBd0Y7QUFxQnhGLFNBQXNCLFdBQVcsQ0FDL0IsTUFBZ0IsRUFDaEIsSUFBWSxFQUNaLElBQWdCLEVBQ2hCLEtBQWMsRUFDZCxRQUF3RDs7Ozs7d0JBRXJDLHFCQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBQTs7b0JBQWpGLFVBQVUsR0FBRyxTQUFvRTtvQkFDdkYsc0JBQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFDOzs7O0NBQzdCO0FBVEQsa0NBU0M7QUFDRCxJQUFpQixPQUFPLENBb0V2QjtBQXBFRCxXQUFpQixPQUFPO0lBQ1Qsb0JBQVksR0FBRyxTQUFTLENBQUM7SUFDekIsV0FBRyxHQUNkLG9SQUFvUixDQUFDO0lBQzFRLGdCQUFRLEdBQ25CLGdiQUFnYixDQUFDO0lBQ3RhLHdCQUFnQixHQUMzQixrWEFBa1gsQ0FBQztJQUNyWCxTQUFnQixNQUFNLENBQUMsRUFNdEI7WUFMQyxNQUFNLFlBQUEsRUFDTixnQkFBZ0Isc0JBQUE7UUFLaEIsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLElBQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQUEsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakYsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUNsQixJQUFJLEVBQ0osZ0JBQWdCO1lBQ2QsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsSUFBSSxjQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM1RyxDQUFDLENBQUMsU0FBUyxDQUNkLENBQUM7SUFDSixDQUFDO0lBZmUsY0FBTSxTQWVyQixDQUFBO0lBQ0QsU0FBc0IsY0FBYyxDQUFDLElBQXNEOzs7Ozs0QkFDekUscUJBQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFBOzt3QkFBNUIsT0FBTyxHQUFHLFNBQWtCO3dCQUNsQyxzQkFBTyxRQUFBLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFDOzs7O0tBQ3ZDO0lBSHFCLHNCQUFjLGlCQUduQyxDQUFBO0lBRVksZ0JBQVEsR0FBRyxVQUFDLE1BQWdCLEVBQUUsT0FBZTtRQUN4RCxPQUFBLENBQUM7WUFDQyxJQUFJLEVBQUUsU0FBUztZQUNmLE9BQU8sU0FBQTtZQUNQLFNBQVMsRUFBRTtnQkFDVCxHQUFHLEVBQUgsVUFDRSxDQUFTLEVBQ1QsSUFBa0I7b0JBQWxCLHFCQUFBLEVBQUEsa0JBQWtCO29CQUlsQixJQUFNLElBQUksR0FBRyxRQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ25DLE9BQU8sSUFBSSxDQUVSLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFDLElBQTRCO3dCQUMzRCxPQUFPLFFBQUEsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDcEMsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQzthQUNPO1NBQ0QsQ0FBQTtJQWxCWCxDQWtCVyxDQUFDO0lBQ0QsY0FBTSxHQUFHLFVBQUMsTUFBZ0I7UUFDckMsSUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFBLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE9BQU87WUFDTCxHQUFHLEVBQUUsVUFBQyxDQUFTO2dCQUNiLE9BQU8sS0FBSyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNqRCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztJQUNXLGNBQU0sR0FBRyxVQUFDLE1BQWdCLEVBQUUsSUFBNEIsRUFBRSxNQUF5QjtRQUF6Qix1QkFBQSxFQUFBLFdBQXlCO1FBQzlGLElBQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsUUFBQSxHQUFHLENBQUMsQ0FBQztRQUN4QyxPQUFPO1lBQ0wsR0FBRyxFQUFFO2dCQUdJLElBQUEsR0FBRyxHQUFJLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLEdBQWhELENBQWlEO2dCQUMzRCxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1lBQ3RCLENBQUM7U0FDRixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxFQXBFZ0IsT0FBTyxHQUFQLGVBQU8sS0FBUCxlQUFPLFFBb0V2QiIsInNvdXJjZXNDb250ZW50IjpbIi8vQ29kZSBnZW5lcmF0ZWQgYnkgc29sdHMuIERPIE5PVCBFRElULlxuaW1wb3J0IHsgQWRkcmVzcywgQ2FuY2VsU3RyZWFtU2lnbmFsLCBDb250cmFjdENvZGVjLCBFdmVudCwgS2VjY2FrIH0gZnJvbSAnLi4vLi4vaW5kZXgnO1xuaW50ZXJmYWNlIFByb3ZpZGVyIHtcbiAgZGVwbG95KFxuICAgIGRhdGE6IHN0cmluZyB8IFVpbnQ4QXJyYXksXG4gICAgY29udHJhY3RNZXRhPzoge1xuICAgICAgYWJpOiBzdHJpbmc7XG4gICAgICBjb2RlSGFzaDogVWludDhBcnJheTtcbiAgICB9W10sXG4gICk6IFByb21pc2U8QWRkcmVzcz47XG4gIGNhbGwoZGF0YTogc3RyaW5nIHwgVWludDhBcnJheSwgYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxVaW50OEFycmF5IHwgdW5kZWZpbmVkPjtcbiAgY2FsbFNpbShkYXRhOiBzdHJpbmcgfCBVaW50OEFycmF5LCBhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQ+O1xuICBsaXN0ZW4oXG4gICAgc2lnbmF0dXJlczogc3RyaW5nW10sXG4gICAgYWRkcmVzczogc3RyaW5nLFxuICAgIGNhbGxiYWNrOiAoZXJyPzogRXJyb3IsIGV2ZW50PzogRXZlbnQpID0+IENhbmNlbFN0cmVhbVNpZ25hbCB8IHZvaWQsXG4gICAgc3RhcnQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgICBlbmQ/OiAnZmlyc3QnIHwgJ2xhdGVzdCcgfCAnc3RyZWFtJyB8IG51bWJlcixcbiAgKTogdW5rbm93bjtcbiAgY29udHJhY3RDb2RlYyhjb250cmFjdEFCSTogc3RyaW5nKTogQ29udHJhY3RDb2RlYztcbn1cbmV4cG9ydCB0eXBlIENhbGxlciA9IHR5cGVvZiBkZWZhdWx0Q2FsbDtcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWZhdWx0Q2FsbDxPdXRwdXQ+KFxuICBjbGllbnQ6IFByb3ZpZGVyLFxuICBhZGRyOiBzdHJpbmcsXG4gIGRhdGE6IFVpbnQ4QXJyYXksXG4gIGlzU2ltOiBib29sZWFuLFxuICBjYWxsYmFjazogKHJldHVybkRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IE91dHB1dCxcbik6IFByb21pc2U8T3V0cHV0PiB7XG4gIGNvbnN0IHJldHVybkRhdGEgPSBhd2FpdCAoaXNTaW0gPyBjbGllbnQuY2FsbFNpbShkYXRhLCBhZGRyKSA6IGNsaWVudC5jYWxsKGRhdGEsIGFkZHIpKTtcbiAgcmV0dXJuIGNhbGxiYWNrKHJldHVybkRhdGEpO1xufVxuZXhwb3J0IG5hbWVzcGFjZSBVbm5hbWVkIHtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0TmFtZSA9ICdVbm5hbWVkJztcbiAgZXhwb3J0IGNvbnN0IGFiaSA9XG4gICAgJ1t7XCJjb25zdGFudFwiOnRydWUsXCJpbnB1dHNcIjpbe1wiaW50ZXJuYWxUeXBlXCI6XCJpbnQyNTZcIixcIm5hbWVcIjpcImFcIixcInR5cGVcIjpcImludDI1NlwifSx7XCJpbnRlcm5hbFR5cGVcIjpcImludDI1NlwiLFwibmFtZVwiOlwiXCIsXCJ0eXBlXCI6XCJpbnQyNTZcIn1dLFwibmFtZVwiOlwic2V0XCIsXCJvdXRwdXRzXCI6W3tcImludGVybmFsVHlwZVwiOlwiaW50MjU2XCIsXCJuYW1lXCI6XCJzdW1cIixcInR5cGVcIjpcImludDI1NlwifV0sXCJwYXlhYmxlXCI6ZmFsc2UsXCJzdGF0ZU11dGFiaWxpdHlcIjpcInB1cmVcIixcInR5cGVcIjpcImZ1bmN0aW9uXCJ9XSc7XG4gIGV4cG9ydCBjb25zdCBieXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MTAwMTA1NzYwMDA4MGZkNWI1MDYwYjg4MDYxMDAxZjYwMDAzOTYwMDBmM2ZlNjA4MDYwNDA1MjM0ODAxNTYwMGY1NzYwMDA4MGZkNWI1MDYwMDQzNjEwNjAyODU3NjAwMDM1NjBlMDFjODA2MzA0YzQwMmY0MTQ2MDJkNTc1YjYwMDA4MGZkNWI2MDYwNjAwNDgwMzYwMzYwNDA4MTEwMTU2MDQxNTc2MDAwODBmZDViODEwMTkwODA4MDM1OTA2MDIwMDE5MDkyOTE5MDgwMzU5MDYwMjAwMTkwOTI5MTkwNTA1MDUwNjA3NjU2NWI2MDQwNTE4MDgyODE1MjYwMjAwMTkxNTA1MDYwNDA1MTgwOTEwMzkwZjM1YjYwMDA4MjgzMDE5MDUwOTI5MTUwNTA1NmZlYTI2NTYyN2E3YTcyMzE1ODIwYzY5MmFhNTU5M2EzOWM0OThmNThjNGEwMjIxYWEwYjZjYTU2NzQzNmIwMmM2MmY5MGI5MjE0YWY3YjdjMzkwMDY0NzM2ZjZjNjM0MzAwMDUxMTAwMzInO1xuICBleHBvcnQgY29uc3QgZGVwbG95ZWRCeXRlY29kZSA9XG4gICAgJzYwODA2MDQwNTIzNDgwMTU2MDBmNTc2MDAwODBmZDViNTA2MDA0MzYxMDYwMjg1NzYwMDAzNTYwZTAxYzgwNjMwNGM0MDJmNDE0NjAyZDU3NWI2MDAwODBmZDViNjA2MDYwMDQ4MDM2MDM2MDQwODExMDE1NjA0MTU3NjAwMDgwZmQ1YjgxMDE5MDgwODAzNTkwNjAyMDAxOTA5MjkxOTA4MDM1OTA2MDIwMDE5MDkyOTE5MDUwNTA1MDYwNzY1NjViNjA0MDUxODA4MjgxNTI2MDIwMDE5MTUwNTA2MDQwNTE4MDkxMDM5MGYzNWI2MDAwODI4MzAxOTA1MDkyOTE1MDUwNTZmZWEyNjU2MjdhN2E3MjMxNTgyMGM2OTJhYTU1OTNhMzljNDk4ZjU4YzRhMDIyMWFhMGI2Y2E1Njc0MzZiMDJjNjJmOTBiOTIxNGFmN2I3YzM5MDA2NDczNmY2YzYzNDMwMDA1MTEwMDMyJztcbiAgZXhwb3J0IGZ1bmN0aW9uIGRlcGxveSh7XG4gICAgY2xpZW50LFxuICAgIHdpdGhDb250cmFjdE1ldGEsXG4gIH06IHtcbiAgICBjbGllbnQ6IFByb3ZpZGVyO1xuICAgIHdpdGhDb250cmFjdE1ldGE/OiBib29sZWFuO1xuICB9KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBjb2RlYyA9IGNsaWVudC5jb250cmFjdENvZGVjKGFiaSk7XG4gICAgY29uc3QgZGF0YSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKGJ5dGVjb2RlLCAnaGV4JyksIGNvZGVjLmVuY29kZURlcGxveSgpXSk7XG4gICAgcmV0dXJuIGNsaWVudC5kZXBsb3koXG4gICAgICBkYXRhLFxuICAgICAgd2l0aENvbnRyYWN0TWV0YVxuICAgICAgICA/IFt7IGFiaTogVW5uYW1lZC5hYmksIGNvZGVIYXNoOiBuZXcgS2VjY2FrKDI1NikudXBkYXRlKFVubmFtZWQuZGVwbG95ZWRCeXRlY29kZSwgJ2hleCcpLmRpZ2VzdCgnYmluYXJ5JykgfV1cbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgKTtcbiAgfVxuICBleHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVwbG95Q29udHJhY3QoZGVwczogeyBjbGllbnQ6IFByb3ZpZGVyOyB3aXRoQ29udHJhY3RNZXRhPzogYm9vbGVhbiB9KTogUHJvbWlzZTxDb250cmFjdD4ge1xuICAgIGNvbnN0IGFkZHJlc3MgPSBhd2FpdCBkZXBsb3koZGVwcyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0KGRlcHMuY2xpZW50LCBhZGRyZXNzKTtcbiAgfVxuICBleHBvcnQgdHlwZSBDb250cmFjdCA9IFJldHVyblR5cGU8dHlwZW9mIGNvbnRyYWN0PjtcbiAgZXhwb3J0IGNvbnN0IGNvbnRyYWN0ID0gKGNsaWVudDogUHJvdmlkZXIsIGFkZHJlc3M6IHN0cmluZykgPT5cbiAgICAoe1xuICAgICAgbmFtZTogJ1VubmFtZWQnLFxuICAgICAgYWRkcmVzcyxcbiAgICAgIGZ1bmN0aW9uczoge1xuICAgICAgICBzZXQoXG4gICAgICAgICAgYTogbnVtYmVyLFxuICAgICAgICAgIGNhbGwgPSBkZWZhdWx0Q2FsbCxcbiAgICAgICAgKTogUHJvbWlzZTx7XG4gICAgICAgICAgc3VtOiBudW1iZXI7XG4gICAgICAgIH0+IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gZW5jb2RlKGNsaWVudCkuc2V0KGEpO1xuICAgICAgICAgIHJldHVybiBjYWxsPHtcbiAgICAgICAgICAgIHN1bTogbnVtYmVyO1xuICAgICAgICAgIH0+KGNsaWVudCwgYWRkcmVzcywgZGF0YSwgdHJ1ZSwgKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBkZWNvZGUoY2xpZW50LCBkYXRhKS5zZXQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0gYXMgY29uc3QsXG4gICAgfSBhcyBjb25zdCk7XG4gIGV4cG9ydCBjb25zdCBlbmNvZGUgPSAoY2xpZW50OiBQcm92aWRlcikgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgc2V0OiAoYTogbnVtYmVyKSA9PiB7XG4gICAgICAgIHJldHVybiBjb2RlYy5lbmNvZGVGdW5jdGlvbkRhdGEoJzA0QzQwMkY0JywgYSk7XG4gICAgICB9LFxuICAgIH07XG4gIH07XG4gIGV4cG9ydCBjb25zdCBkZWNvZGUgPSAoY2xpZW50OiBQcm92aWRlciwgZGF0YTogVWludDhBcnJheSB8IHVuZGVmaW5lZCwgdG9waWNzOiBVaW50OEFycmF5W10gPSBbXSkgPT4ge1xuICAgIGNvbnN0IGNvZGVjID0gY2xpZW50LmNvbnRyYWN0Q29kZWMoYWJpKTtcbiAgICByZXR1cm4ge1xuICAgICAgc2V0OiAoKToge1xuICAgICAgICBzdW06IG51bWJlcjtcbiAgICAgIH0gPT4ge1xuICAgICAgICBjb25zdCBbc3VtXSA9IGNvZGVjLmRlY29kZUZ1bmN0aW9uUmVzdWx0KCcwNEM0MDJGNCcsIGRhdGEpO1xuICAgICAgICByZXR1cm4geyBzdW06IHN1bSB9O1xuICAgICAgfSxcbiAgICB9O1xuICB9O1xufVxuIl19

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

contract = compile_1.compile(source, 'Contract');
return [4 /*yield*/, contract.deploy(test_1.burrow, 'contract1')];
return [4 /*yield*/, contract.deploy(test_1.client, 'contract1')];
case 1:
instance1 = (_a.sent());
return [4 /*yield*/, contract.deploy(test_1.burrow, 'contract2')];
return [4 /*yield*/, contract.deploy(test_1.client, 'contract2')];
case 2:

@@ -95,2 +95,2 @@ instance2 = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTc1LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC8xNzUudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLGtEQUFzRTtBQUN0RSwrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLE1BQU0sRUFBRTtJQUFBLGlCQStCaEI7SUE5QkMsRUFBRSxDQUFDLE1BQU0sRUFBRTs7Ozs7b0JBQ0gsTUFBTSxHQUFHLDhTQVdkLENBQUM7b0JBRUksUUFBUSxHQUFHLGlCQUFPLENBQW1CLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFFNUMscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsV0FBVyxDQUFDLEVBQUE7O29CQUF2RCxTQUFTLEdBQUcsQ0FBQyxTQUEwQyxDQUFRO29CQUNuRCxxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sRUFBRSxXQUFXLENBQUMsRUFBQTs7b0JBQXRELFNBQVMsR0FBRyxTQUEwQztvQkFFdEQsT0FBTyxHQUFHLHNCQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDO29CQUNwQyxxQkFBTSxPQUFPLENBQUMsR0FBRyxDQUFDOzRCQUMzQixpREFBaUQ7NEJBQ2pELFNBQVMsQ0FBQyxPQUFPLEVBQUU7NEJBQ25CLDBEQUEwRDs0QkFDMUQsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7eUJBQ2hDLENBQUMsRUFBQTs7b0JBTEksRUFBRSxHQUFHLFNBS1Q7b0JBQ00sS0FBSyxHQUFjLEVBQUUsTUFBaEIsRUFBSSxLQUFLLEdBQUssRUFBRSxNQUFQLENBQVE7b0JBQzlCLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO29CQUN2QyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQzs7OztTQUN4QyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IENvbnRyYWN0SW5zdGFuY2UsIGdldE1ldGFkYXRhIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCcjMTc1JywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzE3NScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBDb250cmFjdCB7XG4gICAgICAgIHN0cmluZyB0aGVuYW1lO1xuICAgICAgICBjb25zdHJ1Y3RvcihzdHJpbmcgbWVtb3J5IG5ld05hbWUpIHB1YmxpYyB7XG4gICAgICAgICAgdGhlbmFtZSA9IG5ld05hbWU7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gZ2V0TmFtZSgpIHB1YmxpYyB2aWV3IHJldHVybnMgKHN0cmluZyBtZW1vcnkgbmFtZSkge1xuICAgICAgICAgIHJldHVybiB0aGVuYW1lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcblxuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZTxDb250cmFjdEluc3RhbmNlPihzb3VyY2UsICdDb250cmFjdCcpO1xuXG4gICAgY29uc3QgaW5zdGFuY2UxID0gKGF3YWl0IGNvbnRyYWN0LmRlcGxveShidXJyb3csICdjb250cmFjdDEnKSkgYXMgYW55O1xuICAgIGNvbnN0IGluc3RhbmNlMiA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShidXJyb3csICdjb250cmFjdDInKTtcblxuICAgIGNvbnN0IGFkZHJlc3MgPSBnZXRNZXRhZGF0YShpbnN0YW5jZTIpLmFkZHJlc3M7XG4gICAgY29uc3QgcHMgPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAvLyBOb3RlIHVzaW5nIHRoZSBkZWZhdWx0IGFkZHJlc3MgZnJvbSB0aGUgZGVwbG95XG4gICAgICBpbnN0YW5jZTEuZ2V0TmFtZSgpLFxuICAgICAgLy8gVXNpbmcgdGhlIC5hdCgpIHRvIHNwZWNpZnkgdGhlIHNlY29uZCBkZXBsb3llZCBjb250cmFjdFxuICAgICAgaW5zdGFuY2UxLmdldE5hbWUuYXQoYWRkcmVzcykoKSxcbiAgICBdKTtcbiAgICBjb25zdCBbW25hbWUxXSwgW25hbWUyXV0gPSBwcztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwobmFtZTEsICdjb250cmFjdDEnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwobmFtZTIsICdjb250cmFjdDInKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMTc1LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC8xNzUudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLGtEQUFzRTtBQUN0RSwrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLE1BQU0sRUFBRTtJQUFBLGlCQStCaEI7SUE5QkMsRUFBRSxDQUFDLE1BQU0sRUFBRTs7Ozs7b0JBQ0gsTUFBTSxHQUFHLDhTQVdkLENBQUM7b0JBRUksUUFBUSxHQUFHLGlCQUFPLENBQW1CLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFFNUMscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsV0FBVyxDQUFDLEVBQUE7O29CQUF2RCxTQUFTLEdBQUcsQ0FBQyxTQUEwQyxDQUFRO29CQUNuRCxxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sRUFBRSxXQUFXLENBQUMsRUFBQTs7b0JBQXRELFNBQVMsR0FBRyxTQUEwQztvQkFFdEQsT0FBTyxHQUFHLHNCQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDO29CQUNwQyxxQkFBTSxPQUFPLENBQUMsR0FBRyxDQUFDOzRCQUMzQixpREFBaUQ7NEJBQ2pELFNBQVMsQ0FBQyxPQUFPLEVBQUU7NEJBQ25CLDBEQUEwRDs0QkFDMUQsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7eUJBQ2hDLENBQUMsRUFBQTs7b0JBTEksRUFBRSxHQUFHLFNBS1Q7b0JBQ00sS0FBSyxHQUFjLEVBQUUsTUFBaEIsRUFBSSxLQUFLLEdBQUssRUFBRSxNQUFQLENBQVE7b0JBQzlCLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO29CQUN2QyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQzs7OztTQUN4QyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IENvbnRyYWN0SW5zdGFuY2UsIGdldE1ldGFkYXRhIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCcjMTc1JywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzE3NScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBDb250cmFjdCB7XG4gICAgICAgIHN0cmluZyB0aGVuYW1lO1xuICAgICAgICBjb25zdHJ1Y3RvcihzdHJpbmcgbWVtb3J5IG5ld05hbWUpIHB1YmxpYyB7XG4gICAgICAgICAgdGhlbmFtZSA9IG5ld05hbWU7XG4gICAgICAgIH1cbiAgICAgICAgZnVuY3Rpb24gZ2V0TmFtZSgpIHB1YmxpYyB2aWV3IHJldHVybnMgKHN0cmluZyBtZW1vcnkgbmFtZSkge1xuICAgICAgICAgIHJldHVybiB0aGVuYW1lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcblxuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZTxDb250cmFjdEluc3RhbmNlPihzb3VyY2UsICdDb250cmFjdCcpO1xuXG4gICAgY29uc3QgaW5zdGFuY2UxID0gKGF3YWl0IGNvbnRyYWN0LmRlcGxveShjbGllbnQsICdjb250cmFjdDEnKSkgYXMgYW55O1xuICAgIGNvbnN0IGluc3RhbmNlMiA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShjbGllbnQsICdjb250cmFjdDInKTtcblxuICAgIGNvbnN0IGFkZHJlc3MgPSBnZXRNZXRhZGF0YShpbnN0YW5jZTIpLmFkZHJlc3M7XG4gICAgY29uc3QgcHMgPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAvLyBOb3RlIHVzaW5nIHRoZSBkZWZhdWx0IGFkZHJlc3MgZnJvbSB0aGUgZGVwbG95XG4gICAgICBpbnN0YW5jZTEuZ2V0TmFtZSgpLFxuICAgICAgLy8gVXNpbmcgdGhlIC5hdCgpIHRvIHNwZWNpZnkgdGhlIHNlY29uZCBkZXBsb3llZCBjb250cmFjdFxuICAgICAgaW5zdGFuY2UxLmdldE5hbWUuYXQoYWRkcmVzcykoKSxcbiAgICBdKTtcbiAgICBjb25zdCBbW25hbWUxXSwgW25hbWUyXV0gPSBwcztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwobmFtZTEsICdjb250cmFjdDEnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwobmFtZTIsICdjb250cmFjdDInKTtcbiAgfSk7XG59KTtcbiJdfQ==

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

contract = compile_1.compile(source, 'SimpleStorage');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -91,2 +91,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ0LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBdUJmO0lBdEJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRyw0VEFhZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztvQkFDNUIscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQTdDLFFBQVEsR0FBUSxTQUE2QjtvQkFDbkQscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxFQUFBOztvQkFBOUQsU0FBOEQsQ0FBQztvQkFFbEQscUJBQU0sUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFBOztvQkFBM0IsSUFBSSxHQUFHLFNBQW9CO29CQUNqQyxNQUFNLENBQUMsZUFBZSxtQkFBSyxJQUFJLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDLENBQUM7Ozs7U0FDakYsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnIzQ0JywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzQ0JywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgU2ltcGxlU3RvcmFnZSB7XG4gICAgICAgICAgYWRkcmVzcyBzdG9yZWREYXRhO1xuXG4gICAgICAgICAgZnVuY3Rpb24gc2V0KGFkZHJlc3MgeCkgcHVibGljIHtcbiAgICAgICAgICAgICAgc3RvcmVkRGF0YSA9IHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0KCkgcHVibGljIHZpZXcgcmV0dXJucyAoYWRkcmVzcyByZXRWYWwpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHN0b3JlZERhdGE7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ1NpbXBsZVN0b3JhZ2UnKTtcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGJ1cnJvdyk7XG4gICAgYXdhaXQgaW5zdGFuY2Uuc2V0KCc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJyk7XG5cbiAgICBjb25zdCBkYXRhID0gYXdhaXQgaW5zdGFuY2UuZ2V0KCk7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChbLi4uZGF0YV0sIFsnODg5NzdBMzdEMDVBNEZFODZEMDlFODhDODhBNDlDMkZDRjdENkQ4RiddKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ0LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBdUJmO0lBdEJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRyw0VEFhZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztvQkFDNUIscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQTdDLFFBQVEsR0FBUSxTQUE2QjtvQkFDbkQscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxFQUFBOztvQkFBOUQsU0FBOEQsQ0FBQztvQkFFbEQscUJBQU0sUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFBOztvQkFBM0IsSUFBSSxHQUFHLFNBQW9CO29CQUNqQyxNQUFNLENBQUMsZUFBZSxtQkFBSyxJQUFJLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDLENBQUM7Ozs7U0FDakYsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnIzQ0JywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzQ0JywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgU2ltcGxlU3RvcmFnZSB7XG4gICAgICAgICAgYWRkcmVzcyBzdG9yZWREYXRhO1xuXG4gICAgICAgICAgZnVuY3Rpb24gc2V0KGFkZHJlc3MgeCkgcHVibGljIHtcbiAgICAgICAgICAgICAgc3RvcmVkRGF0YSA9IHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0KCkgcHVibGljIHZpZXcgcmV0dXJucyAoYWRkcmVzcyByZXRWYWwpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHN0b3JlZERhdGE7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ1NpbXBsZVN0b3JhZ2UnKTtcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGNsaWVudCk7XG4gICAgYXdhaXQgaW5zdGFuY2Uuc2V0KCc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJyk7XG5cbiAgICBjb25zdCBkYXRhID0gYXdhaXQgaW5zdGFuY2UuZ2V0KCk7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChbLi4uZGF0YV0sIFsnODg5NzdBMzdEMDVBNEZFODZEMDlFODhDODhBNDlDMkZDRjdENkQ4RiddKTtcbiAgfSk7XG59KTtcbiJdfQ==

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

return [2 /*return*/, contract
.deploy(test_1.burrow)
.deploy(test_1.client)
.then(function (instance) { return instance.setName('Batman').then(function () { return instance.getName(); }); })

@@ -82,3 +82,3 @@ .then(function (value) {

contract = compile_1.compile(source, 'Test');
return [2 /*return*/, contract.deploy(test_1.burrow).then(function (instance) {
return [2 /*return*/, contract.deploy(test_1.client).then(function (instance) {
return Promise.all([instance.getAddress(), instance.getNumber()]).then(function (_a) {

@@ -93,2 +93,2 @@ var address = _a[0], number = _a[1];

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDUudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ1LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQXFEZjtJQXBEQyxFQUFFLENBQUMsdUJBQXVCLEVBQUU7OztZQUNwQixNQUFNLEdBQUcsNGFBaUJkLENBQUM7WUFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDekMsc0JBQU8sUUFBUTtxQkFDWixNQUFNLENBQUMsYUFBTSxDQUFDO3FCQUNkLElBQUksQ0FBQyxVQUFDLFFBQWEsSUFBSyxPQUFBLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQU0sT0FBQSxRQUFRLENBQUMsT0FBTyxFQUFFLEVBQWxCLENBQWtCLENBQUMsRUFBekQsQ0FBeUQsQ0FBQztxQkFDbEYsSUFBSSxDQUFDLFVBQUMsS0FBSztvQkFDVixNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzVDLENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxvQkFBb0IsRUFBRTs7O1lBQ2pCLE1BQU0sR0FBRyxrU0FhZCxDQUFDO1lBRUksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3pDLHNCQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsUUFBYTtvQkFDaEQsT0FBQSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsRUFBaUI7NEJBQWhCLE9BQU8sUUFBQSxFQUFFLE1BQU0sUUFBQTt3QkFDL0UsTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO3dCQUMxQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDckMsQ0FBQyxDQUFDO2dCQUhGLENBR0UsQ0FDSCxFQUFDOztTQUNILENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJyM0NScsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ1NldC9nZXQgbWVtb3J5IHN0cmluZycsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3Qge1xuICAgICAgICAgIHN0cmluZyBfbmFtZTtcblxuICAgICAgICAgIGZ1bmN0aW9uIGFkZChpbnQgYSwgaW50IGIpIHB1YmxpYyBwdXJlIHJldHVybnMgKGludCBzdW0pIHtcbiAgICAgICAgICAgICAgc3VtID0gYSArIGI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gc2V0TmFtZShzdHJpbmcgbWVtb3J5IG5ld25hbWUpIHB1YmxpYyB7XG4gICAgICAgICAgICAgX25hbWUgPSBuZXduYW1lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldE5hbWUoKSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgICAgIHJldHVybiBfbmFtZTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIHJldHVybiBjb250cmFjdFxuICAgICAgLmRlcGxveShidXJyb3cpXG4gICAgICAudGhlbigoaW5zdGFuY2U6IGFueSkgPT4gaW5zdGFuY2Uuc2V0TmFtZSgnQmF0bWFuJykudGhlbigoKSA9PiBpbnN0YW5jZS5nZXROYW1lKCkpKVxuICAgICAgLnRoZW4oKHZhbHVlKSA9PiB7XG4gICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwodmFsdWUsIFsnQmF0bWFuJ10pO1xuICAgICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdnZXQgbnVtYmVyL2FkZHJlc3MnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcblxuICAgICAgICAgIGZ1bmN0aW9uIGdldEFkZHJlc3MoKSBwdWJsaWMgdmlldyByZXR1cm5zIChhZGRyZXNzKSB7XG4gICAgICAgICAgICByZXR1cm4gYWRkcmVzcyh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXROdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG4gICAgICAgICAgICByZXR1cm4gMTAwO1xuICAgICAgICAgIH1cblxuICAgICAgfVxuICAgIGA7XG5cbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIHJldHVybiBjb250cmFjdC5kZXBsb3koYnVycm93KS50aGVuKChpbnN0YW5jZTogYW55KSA9PlxuICAgICAgUHJvbWlzZS5hbGwoW2luc3RhbmNlLmdldEFkZHJlc3MoKSwgaW5zdGFuY2UuZ2V0TnVtYmVyKCldKS50aGVuKChbYWRkcmVzcywgbnVtYmVyXSkgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYWRkcmVzc1swXS5sZW5ndGgsIDQwKTtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKG51bWJlclswXSwgMTAwKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDUudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ1LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQXFEZjtJQXBEQyxFQUFFLENBQUMsdUJBQXVCLEVBQUU7OztZQUNwQixNQUFNLEdBQUcsNGFBaUJkLENBQUM7WUFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDekMsc0JBQU8sUUFBUTtxQkFDWixNQUFNLENBQUMsYUFBTSxDQUFDO3FCQUNkLElBQUksQ0FBQyxVQUFDLFFBQWEsSUFBSyxPQUFBLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQU0sT0FBQSxRQUFRLENBQUMsT0FBTyxFQUFFLEVBQWxCLENBQWtCLENBQUMsRUFBekQsQ0FBeUQsQ0FBQztxQkFDbEYsSUFBSSxDQUFDLFVBQUMsS0FBSztvQkFDVixNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzVDLENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxvQkFBb0IsRUFBRTs7O1lBQ2pCLE1BQU0sR0FBRyxrU0FhZCxDQUFDO1lBRUksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3pDLHNCQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsUUFBYTtvQkFDaEQsT0FBQSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsRUFBaUI7NEJBQWhCLE9BQU8sUUFBQSxFQUFFLE1BQU0sUUFBQTt3QkFDL0UsTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO3dCQUMxQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDckMsQ0FBQyxDQUFDO2dCQUhGLENBR0UsQ0FDSCxFQUFDOztTQUNILENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgY2xpZW50IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJyM0NScsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ1NldC9nZXQgbWVtb3J5IHN0cmluZycsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3Qge1xuICAgICAgICAgIHN0cmluZyBfbmFtZTtcblxuICAgICAgICAgIGZ1bmN0aW9uIGFkZChpbnQgYSwgaW50IGIpIHB1YmxpYyBwdXJlIHJldHVybnMgKGludCBzdW0pIHtcbiAgICAgICAgICAgICAgc3VtID0gYSArIGI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gc2V0TmFtZShzdHJpbmcgbWVtb3J5IG5ld25hbWUpIHB1YmxpYyB7XG4gICAgICAgICAgICAgX25hbWUgPSBuZXduYW1lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldE5hbWUoKSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgICAgIHJldHVybiBfbmFtZTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIHJldHVybiBjb250cmFjdFxuICAgICAgLmRlcGxveShjbGllbnQpXG4gICAgICAudGhlbigoaW5zdGFuY2U6IGFueSkgPT4gaW5zdGFuY2Uuc2V0TmFtZSgnQmF0bWFuJykudGhlbigoKSA9PiBpbnN0YW5jZS5nZXROYW1lKCkpKVxuICAgICAgLnRoZW4oKHZhbHVlKSA9PiB7XG4gICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwodmFsdWUsIFsnQmF0bWFuJ10pO1xuICAgICAgfSk7XG4gIH0pO1xuXG4gIGl0KCdnZXQgbnVtYmVyL2FkZHJlc3MnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcblxuICAgICAgICAgIGZ1bmN0aW9uIGdldEFkZHJlc3MoKSBwdWJsaWMgdmlldyByZXR1cm5zIChhZGRyZXNzKSB7XG4gICAgICAgICAgICByZXR1cm4gYWRkcmVzcyh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXROdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG4gICAgICAgICAgICByZXR1cm4gMTAwO1xuICAgICAgICAgIH1cblxuICAgICAgfVxuICAgIGA7XG5cbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIHJldHVybiBjb250cmFjdC5kZXBsb3koY2xpZW50KS50aGVuKChpbnN0YW5jZTogYW55KSA9PlxuICAgICAgUHJvbWlzZS5hbGwoW2luc3RhbmNlLmdldEFkZHJlc3MoKSwgaW5zdGFuY2UuZ2V0TnVtYmVyKCldKS50aGVuKChbYWRkcmVzcywgbnVtYmVyXSkgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYWRkcmVzc1swXS5sZW5ndGgsIDQwKTtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKG51bWJlclswXSwgMTAwKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH0pO1xufSk7XG4iXX0=

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

return [2 /*return*/, contract
.deploy(test_1.burrow)
.deploy(test_1.client)
.then(function (instance) {

@@ -81,2 +81,2 @@ return instance.setName('Batman').then(function () { return Promise.all([instance.getNameConstant(), instance.getName()]); });

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDYudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ2LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQWdDZjtJQS9CQyxFQUFFLENBQUMsS0FBSyxFQUFFOzs7WUFDRixNQUFNLEdBQUcsMlpBa0JkLENBQUM7WUFFSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDekMsc0JBQU8sUUFBUTtxQkFDWixNQUFNLENBQUMsYUFBTSxDQUFDO3FCQUNkLElBQUksQ0FBQyxVQUFDLFFBQWE7b0JBQ2xCLE9BQUEsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBTSxPQUFBLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBN0QsQ0FBNkQsQ0FBQztnQkFBcEcsQ0FBb0csQ0FDckc7cUJBQ0EsSUFBSSxDQUFDLFVBQUMsRUFBdUI7d0JBQXRCLFFBQVEsUUFBQSxFQUFFLFdBQVcsUUFBQTtvQkFDM0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xELENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJyM0NicsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJyM0NicsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3R7XG5cbiAgICAgICAgc3RyaW5nIF9uYW1lO1xuXG4gICAgICAgIGZ1bmN0aW9uIHNldE5hbWUoc3RyaW5nIG1lbW9yeSBuZXduYW1lKSBwdWJsaWMge1xuICAgICAgICAgIF9uYW1lID0gbmV3bmFtZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGdldE5hbWVDb25zdGFudCgpIHB1YmxpYyB2aWV3IHJldHVybnMgKHN0cmluZyBtZW1vcnkpIHtcbiAgICAgICAgICByZXR1cm4gX25hbWU7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXROYW1lKCkgcHVibGljIHZpZXcgcmV0dXJucyAoc3RyaW5nIG1lbW9yeSkge1xuICAgICAgICAgIHJldHVybiBfbmFtZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIHJldHVybiBjb250cmFjdFxuICAgICAgLmRlcGxveShidXJyb3cpXG4gICAgICAudGhlbigoaW5zdGFuY2U6IGFueSkgPT5cbiAgICAgICAgaW5zdGFuY2Uuc2V0TmFtZSgnQmF0bWFuJykudGhlbigoKSA9PiBQcm9taXNlLmFsbChbaW5zdGFuY2UuZ2V0TmFtZUNvbnN0YW50KCksIGluc3RhbmNlLmdldE5hbWUoKV0pKSxcbiAgICAgIClcbiAgICAgIC50aGVuKChbY29uc3RhbnQsIG5vbkNvbnN0YW50XSkgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY29uc3RhbnRbMF0sIG5vbkNvbnN0YW50WzBdKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDYudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ2LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQWdDZjtJQS9CQyxFQUFFLENBQUMsS0FBSyxFQUFFOzs7WUFDRixNQUFNLEdBQUcsMlpBa0JkLENBQUM7WUFFSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDekMsc0JBQU8sUUFBUTtxQkFDWixNQUFNLENBQUMsYUFBTSxDQUFDO3FCQUNkLElBQUksQ0FBQyxVQUFDLFFBQWE7b0JBQ2xCLE9BQUEsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBTSxPQUFBLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxFQUFFLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBN0QsQ0FBNkQsQ0FBQztnQkFBcEcsQ0FBb0csQ0FDckc7cUJBQ0EsSUFBSSxDQUFDLFVBQUMsRUFBdUI7d0JBQXRCLFFBQVEsUUFBQSxFQUFFLFdBQVcsUUFBQTtvQkFDM0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xELENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgY2xpZW50IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJyM0NicsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJyM0NicsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3R7XG5cbiAgICAgICAgc3RyaW5nIF9uYW1lO1xuXG4gICAgICAgIGZ1bmN0aW9uIHNldE5hbWUoc3RyaW5nIG1lbW9yeSBuZXduYW1lKSBwdWJsaWMge1xuICAgICAgICAgIF9uYW1lID0gbmV3bmFtZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGdldE5hbWVDb25zdGFudCgpIHB1YmxpYyB2aWV3IHJldHVybnMgKHN0cmluZyBtZW1vcnkpIHtcbiAgICAgICAgICByZXR1cm4gX25hbWU7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXROYW1lKCkgcHVibGljIHZpZXcgcmV0dXJucyAoc3RyaW5nIG1lbW9yeSkge1xuICAgICAgICAgIHJldHVybiBfbmFtZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIHJldHVybiBjb250cmFjdFxuICAgICAgLmRlcGxveShjbGllbnQpXG4gICAgICAudGhlbigoaW5zdGFuY2U6IGFueSkgPT5cbiAgICAgICAgaW5zdGFuY2Uuc2V0TmFtZSgnQmF0bWFuJykudGhlbigoKSA9PiBQcm9taXNlLmFsbChbaW5zdGFuY2UuZ2V0TmFtZUNvbnN0YW50KCksIGluc3RhbmNlLmdldE5hbWUoKV0pKSxcbiAgICAgIClcbiAgICAgIC50aGVuKChbY29uc3RhbnQsIG5vbkNvbnN0YW50XSkgPT4ge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY29uc3RhbnRbMF0sIG5vbkNvbnN0YW50WzBdKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19

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

return [2 /*return*/, contract
.deploy(test_1.burrow)
.deploy(test_1.client)
.then(function (instance) { return Promise.all([instance.getWithSpaceConstant(), instance.getWithoutSpaceConstant()]); })

@@ -80,2 +80,2 @@ .then(function (_a) {

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDcudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ3LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQTBCZjtJQXpCQyxFQUFFLENBQUMsS0FBSyxFQUFFOzs7WUFDRixNQUFNLEdBQUcseVpBY2QsQ0FBQztZQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN6QyxzQkFBTyxRQUFRO3FCQUNaLE1BQU0sQ0FBQyxhQUFNLENBQUM7cUJBQ2QsSUFBSSxDQUFDLFVBQUMsUUFBYSxJQUFLLE9BQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUMsRUFBbEYsQ0FBa0YsQ0FBQztxQkFDM0csSUFBSSxDQUFDLFVBQUMsRUFBeUI7d0JBQXhCLFNBQVMsUUFBQSxFQUFFLFlBQVksUUFBQTtvQkFDN0IsTUFBTSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO29CQUNoRCxNQUFNLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ25ELENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJyM0NycsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJyM0NycsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3R7XG4gICAgICAgIHN0cmluZyBfd2l0aFNwYWNlID0gXCIgIFBpZXRlclwiO1xuICAgICAgICBzdHJpbmcgX3dpdGhvdXRTcGFjZSA9IFwiUGlldGVyXCI7XG5cbiAgICAgICAgZnVuY3Rpb24gZ2V0V2l0aFNwYWNlQ29uc3RhbnQoKSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgcmV0dXJuIF93aXRoU3BhY2U7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXRXaXRob3V0U3BhY2VDb25zdGFudCAoKSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgcmV0dXJuIF93aXRob3V0U3BhY2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdUZXN0Jyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0XG4gICAgICAuZGVwbG95KGJ1cnJvdylcbiAgICAgIC50aGVuKChpbnN0YW5jZTogYW55KSA9PiBQcm9taXNlLmFsbChbaW5zdGFuY2UuZ2V0V2l0aFNwYWNlQ29uc3RhbnQoKSwgaW5zdGFuY2UuZ2V0V2l0aG91dFNwYWNlQ29uc3RhbnQoKV0pKVxuICAgICAgLnRoZW4oKFt3aXRoU3BhY2UsIHdpdGhvdXRTcGFjZV0pID0+IHtcbiAgICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbCh3aXRoU3BhY2UsIFsnICBQaWV0ZXInXSk7XG4gICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwod2l0aG91dFNwYWNlLCBbJ1BpZXRlciddKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDcudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ3LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQTBCZjtJQXpCQyxFQUFFLENBQUMsS0FBSyxFQUFFOzs7WUFDRixNQUFNLEdBQUcseVpBY2QsQ0FBQztZQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN6QyxzQkFBTyxRQUFRO3FCQUNaLE1BQU0sQ0FBQyxhQUFNLENBQUM7cUJBQ2QsSUFBSSxDQUFDLFVBQUMsUUFBYSxJQUFLLE9BQUEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUMsRUFBbEYsQ0FBa0YsQ0FBQztxQkFDM0csSUFBSSxDQUFDLFVBQUMsRUFBeUI7d0JBQXhCLFNBQVMsUUFBQSxFQUFFLFlBQVksUUFBQTtvQkFDN0IsTUFBTSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO29CQUNoRCxNQUFNLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ25ELENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgY2xpZW50IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJyM0NycsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJyM0NycsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3R7XG4gICAgICAgIHN0cmluZyBfd2l0aFNwYWNlID0gXCIgIFBpZXRlclwiO1xuICAgICAgICBzdHJpbmcgX3dpdGhvdXRTcGFjZSA9IFwiUGlldGVyXCI7XG5cbiAgICAgICAgZnVuY3Rpb24gZ2V0V2l0aFNwYWNlQ29uc3RhbnQoKSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgcmV0dXJuIF93aXRoU3BhY2U7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXRXaXRob3V0U3BhY2VDb25zdGFudCAoKSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgcmV0dXJuIF93aXRob3V0U3BhY2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdUZXN0Jyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0XG4gICAgICAuZGVwbG95KGNsaWVudClcbiAgICAgIC50aGVuKChpbnN0YW5jZTogYW55KSA9PiBQcm9taXNlLmFsbChbaW5zdGFuY2UuZ2V0V2l0aFNwYWNlQ29uc3RhbnQoKSwgaW5zdGFuY2UuZ2V0V2l0aG91dFNwYWNlQ29uc3RhbnQoKV0pKVxuICAgICAgLnRoZW4oKFt3aXRoU3BhY2UsIHdpdGhvdXRTcGFjZV0pID0+IHtcbiAgICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbCh3aXRoU3BhY2UsIFsnICBQaWV0ZXInXSk7XG4gICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwod2l0aG91dFNwYWNlLCBbJ1BpZXRlciddKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19

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

return [2 /*return*/, contract
.deploy(test_1.burrow)
.deploy(test_1.client)
.then(function (instance) { return instance.getCombination(); })

@@ -80,2 +80,2 @@ .then(function (_a) {

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ4LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQThCZjtJQTdCQyxFQUFFLENBQUMsS0FBSyxFQUFFOzs7WUFDRixNQUFNLEdBQUcsZ2RBa0JkLENBQUM7WUFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDekMsc0JBQU8sUUFBUTtxQkFDWixNQUFNLENBQUMsYUFBTSxDQUFDO3FCQUNkLElBQUksQ0FBQyxVQUFDLFFBQWEsSUFBSyxPQUFBLFFBQVEsQ0FBQyxjQUFjLEVBQUUsRUFBekIsQ0FBeUIsQ0FBQztxQkFDbEQsSUFBSSxDQUFDLFVBQUMsRUFBaUI7d0JBQWhCLE1BQU0sUUFBQSxFQUFFLE9BQU8sUUFBQTtvQkFDckIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7b0JBQ2hDLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDekMsQ0FBQyxDQUFDLEVBQUM7O1NBQ04sQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnIzQ4JywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzQ4JywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgVGVzdCB7XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXRBZGRyZXNzKCkgcHVibGljIHZpZXcgcmV0dXJucyAoYWRkcmVzcykge1xuICAgICAgICAgICAgcmV0dXJuIGFkZHJlc3ModGhpcyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0TnVtYmVyKCkgcHVibGljIHB1cmUgcmV0dXJucyAodWludCkge1xuICAgICAgICAgICAgcmV0dXJuIDEwMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXRDb21iaW5hdGlvbigpIHB1YmxpYyB2aWV3IHJldHVybnMgKHVpbnQgX251bWJlciwgYWRkcmVzcyBfYWRkcmVzcykge1xuICAgICAgICAgICAgX251bWJlciA9IDEwMDtcbiAgICAgICAgICAgIF9hZGRyZXNzID0gYWRkcmVzcyh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgIH1cbiAgICBgO1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdUZXN0Jyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0XG4gICAgICAuZGVwbG95KGJ1cnJvdylcbiAgICAgIC50aGVuKChpbnN0YW5jZTogYW55KSA9PiBpbnN0YW5jZS5nZXRDb21iaW5hdGlvbigpKVxuICAgICAgLnRoZW4oKFtudW1iZXIsIGFkZHJlc3NdKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChudW1iZXIsIDEwMCk7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChhZGRyZXNzLmxlbmd0aCwgNDApO1xuICAgICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNDgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzQ4LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLEtBQUssRUFBRTtJQUFBLGlCQThCZjtJQTdCQyxFQUFFLENBQUMsS0FBSyxFQUFFOzs7WUFDRixNQUFNLEdBQUcsZ2RBa0JkLENBQUM7WUFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDekMsc0JBQU8sUUFBUTtxQkFDWixNQUFNLENBQUMsYUFBTSxDQUFDO3FCQUNkLElBQUksQ0FBQyxVQUFDLFFBQWEsSUFBSyxPQUFBLFFBQVEsQ0FBQyxjQUFjLEVBQUUsRUFBekIsQ0FBeUIsQ0FBQztxQkFDbEQsSUFBSSxDQUFDLFVBQUMsRUFBaUI7d0JBQWhCLE1BQU0sUUFBQSxFQUFFLE9BQU8sUUFBQTtvQkFDckIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7b0JBQ2hDLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDekMsQ0FBQyxDQUFDLEVBQUM7O1NBQ04sQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnIzQ4JywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzQ4JywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgVGVzdCB7XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXRBZGRyZXNzKCkgcHVibGljIHZpZXcgcmV0dXJucyAoYWRkcmVzcykge1xuICAgICAgICAgICAgcmV0dXJuIGFkZHJlc3ModGhpcyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0TnVtYmVyKCkgcHVibGljIHB1cmUgcmV0dXJucyAodWludCkge1xuICAgICAgICAgICAgcmV0dXJuIDEwMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXRDb21iaW5hdGlvbigpIHB1YmxpYyB2aWV3IHJldHVybnMgKHVpbnQgX251bWJlciwgYWRkcmVzcyBfYWRkcmVzcykge1xuICAgICAgICAgICAgX251bWJlciA9IDEwMDtcbiAgICAgICAgICAgIF9hZGRyZXNzID0gYWRkcmVzcyh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgIH1cbiAgICBgO1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdUZXN0Jyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0XG4gICAgICAuZGVwbG95KGNsaWVudClcbiAgICAgIC50aGVuKChpbnN0YW5jZTogYW55KSA9PiBpbnN0YW5jZS5nZXRDb21iaW5hdGlvbigpKVxuICAgICAgLnRoZW4oKFtudW1iZXIsIGFkZHJlc3NdKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChudW1iZXIsIDEwMCk7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChhZGRyZXNzLmxlbmd0aCwgNDApO1xuICAgICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=

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

contract = compile_1.compile(source, 'SimpleStorage');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -91,2 +91,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTAudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzUwLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBc0JmO0lBckJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRyxtVEFhZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztvQkFDakMscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQXhDLFFBQVEsR0FBRyxTQUE2QjtvQkFDOUMscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBQTs7b0JBQXRCLFNBQXNCLENBQUM7b0JBQ1QscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBQTs7b0JBQWpDLEtBQUssR0FBRyxTQUF5QjtvQkFDdkMsTUFBTSxDQUFDLGVBQWUsbUJBQUssS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzs7OztTQUMxQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCcjNTAnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCcjNTAnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBTaW1wbGVTdG9yYWdlIHtcbiAgICAgICAgICB1aW50IHN0b3JlZERhdGE7XG5cbiAgICAgICAgICBmdW5jdGlvbiBzZXQodWludCB4KSBwdWJsaWMge1xuICAgICAgICAgICAgICBzdG9yZWREYXRhID0geDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXQoKSBwdWJsaWMgdmlldyByZXR1cm5zICh1aW50IHJldFZhbCkge1xuICAgICAgICAgICAgICByZXR1cm4gc3RvcmVkRGF0YTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnU2ltcGxlU3RvcmFnZScpO1xuICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGJ1cnJvdyk7XG4gICAgYXdhaXQgaW5zdGFuY2Uuc2V0KDQyKTtcbiAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGluc3RhbmNlLmdldC5jYWxsKCk7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChbLi4udmFsdWVdLCBbNDJdKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNTAudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzUwLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBc0JmO0lBckJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRyxtVEFhZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztvQkFDakMscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQXhDLFFBQVEsR0FBRyxTQUE2QjtvQkFDOUMscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBQTs7b0JBQXRCLFNBQXNCLENBQUM7b0JBQ1QscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsRUFBQTs7b0JBQWpDLEtBQUssR0FBRyxTQUF5QjtvQkFDdkMsTUFBTSxDQUFDLGVBQWUsbUJBQUssS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzs7OztTQUMxQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCcjNTAnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCcjNTAnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBTaW1wbGVTdG9yYWdlIHtcbiAgICAgICAgICB1aW50IHN0b3JlZERhdGE7XG5cbiAgICAgICAgICBmdW5jdGlvbiBzZXQodWludCB4KSBwdWJsaWMge1xuICAgICAgICAgICAgICBzdG9yZWREYXRhID0geDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXQoKSBwdWJsaWMgdmlldyByZXR1cm5zICh1aW50IHJldFZhbCkge1xuICAgICAgICAgICAgICByZXR1cm4gc3RvcmVkRGF0YTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnU2ltcGxlU3RvcmFnZScpO1xuICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGNsaWVudCk7XG4gICAgYXdhaXQgaW5zdGFuY2Uuc2V0KDQyKTtcbiAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGluc3RhbmNlLmdldC5jYWxsKCk7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChbLi4udmFsdWVdLCBbNDJdKTtcbiAgfSk7XG59KTtcbiJdfQ==

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

contract = compile_1.compile(source, 'SimpleStorage');
return [4 /*yield*/, contract.deploy(test_1.burrow, '88977A37D05A4FE86D09E88C88A49C2FCF7D6D8F')];
return [4 /*yield*/, contract.deploy(test_1.client, '88977A37D05A4FE86D09E88C88A49C2FCF7D6D8F')];
case 1:

@@ -88,2 +88,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjEudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzYxLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBcUJmO0lBcEJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRywyVEFhZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztvQkFDakMscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsMENBQTBDLENBQUMsRUFBQTs7b0JBQXBGLFFBQVEsR0FBRyxTQUF5RTtvQkFDNUUscUJBQU0sUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFBOztvQkFBNUIsS0FBSyxHQUFHLFNBQW9CO29CQUNsQyxNQUFNLENBQUMsZUFBZSxtQkFBSyxLQUFLLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDLENBQUM7Ozs7U0FDbEYsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnIzYxJywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzYxJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgU2ltcGxlU3RvcmFnZSB7XG4gICAgICAgICAgYWRkcmVzcyBzdG9yZWREYXRhO1xuXG4gICAgICAgICAgY29uc3RydWN0b3IoYWRkcmVzcyB4KSBwdWJsaWMge1xuICAgICAgICAgICAgICBzdG9yZWREYXRhID0geDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXQoKSBwdWJsaWMgdmlldyByZXR1cm5zIChhZGRyZXNzIHJldFZhbCkge1xuICAgICAgICAgICAgICByZXR1cm4gc3RvcmVkRGF0YTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnU2ltcGxlU3RvcmFnZScpO1xuICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGJ1cnJvdywgJzg4OTc3QTM3RDA1QTRGRTg2RDA5RTg4Qzg4QTQ5QzJGQ0Y3RDZEOEYnKTtcbiAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGluc3RhbmNlLmdldCgpO1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnZhbHVlXSwgWyc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJ10pO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjEudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0LzYxLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBcUJmO0lBcEJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRywyVEFhZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxlQUFlLENBQUMsQ0FBQztvQkFDakMscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsMENBQTBDLENBQUMsRUFBQTs7b0JBQXBGLFFBQVEsR0FBRyxTQUF5RTtvQkFDNUUscUJBQU0sUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFBOztvQkFBNUIsS0FBSyxHQUFHLFNBQW9CO29CQUNsQyxNQUFNLENBQUMsZUFBZSxtQkFBSyxLQUFLLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDLENBQUM7Ozs7U0FDbEYsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnIzYxJywgZnVuY3Rpb24gKCkge1xuICBpdCgnIzYxJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgU2ltcGxlU3RvcmFnZSB7XG4gICAgICAgICAgYWRkcmVzcyBzdG9yZWREYXRhO1xuXG4gICAgICAgICAgY29uc3RydWN0b3IoYWRkcmVzcyB4KSBwdWJsaWMge1xuICAgICAgICAgICAgICBzdG9yZWREYXRhID0geDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXQoKSBwdWJsaWMgdmlldyByZXR1cm5zIChhZGRyZXNzIHJldFZhbCkge1xuICAgICAgICAgICAgICByZXR1cm4gc3RvcmVkRGF0YTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnU2ltcGxlU3RvcmFnZScpO1xuICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGNsaWVudCwgJzg4OTc3QTM3RDA1QTRGRTg2RDA5RTg4Qzg4QTQ5QzJGQ0Y3RDZEOEYnKTtcbiAgICBjb25zdCB2YWx1ZSA9IGF3YWl0IGluc3RhbmNlLmdldCgpO1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnZhbHVlXSwgWyc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJ10pO1xuICB9KTtcbn0pO1xuIl19

@@ -72,9 +72,9 @@ "use strict";

contract = compile_1.compile(source, 'random');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:
instance = _a.sent();
return [4 /*yield*/, test_1.burrow.namereg.set('random', contract_1.getAddress(instance))];
return [4 /*yield*/, test_1.client.namereg.set('random', contract_1.getAddress(instance))];
case 2:
_a.sent();
return [4 /*yield*/, test_1.burrow.namereg.get('random')];
return [4 /*yield*/, test_1.client.namereg.get('random')];
case 3:

@@ -84,3 +84,3 @@ entry = _a.sent();

console.log(address);
return [4 /*yield*/, contract.at(address, test_1.burrow)];
return [4 /*yield*/, contract.at(address, test_1.client)];
case 4:

@@ -97,2 +97,2 @@ contractOut = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpcy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvYWJpcy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0Msa0RBQW1EO0FBQ25ELCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBc0JmO0lBckJDLElBQU0sTUFBTSxHQUFHLHdJQVFkLENBQUM7SUFDRixpREFBaUQ7SUFDakQsRUFBRSxDQUFDLG1DQUFtQyxFQUFFOzs7OztvQkFDaEMsUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO29CQUNyQixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBN0MsUUFBUSxHQUFRLFNBQTZCO29CQUNuRCxxQkFBTSxhQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUscUJBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFBOztvQkFBeEQsU0FBd0QsQ0FBQztvQkFDM0MscUJBQU0sYUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUE7O29CQUExQyxLQUFLLEdBQUcsU0FBa0M7b0JBQzFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ2hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ0kscUJBQU0sUUFBUSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsYUFBTSxDQUFDLEVBQUE7O29CQUFyRCxXQUFXLEdBQVEsU0FBa0M7b0JBQzVDLHFCQUFNLFdBQVcsQ0FBQyxlQUFlLEVBQUUsRUFBQTs7b0JBQTVDLE1BQU0sR0FBRyxTQUFtQztvQkFDbEQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Ozs7U0FDbkMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBnZXRBZGRyZXNzIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdBYmknLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHNvdXJjZSA9IGBcbnByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuXG5jb250cmFjdCByYW5kb20ge1xuXHRmdW5jdGlvbiBnZXRSYW5kb21OdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG5cdFx0cmV0dXJuIDU1O1xuXHR9XG59XG4gIGA7XG4gIC8vIFRPRE86IHVuZGVyc3RhbmQgd2h5IGFiaSBzdG9yYWdlIGlzbid0IHdvcmtpbmdcbiAgaXQoJ0NhbGwgY29udHJhY3QgdmlhIGJ1cnJvdyBzaWRlIEFiaScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAncmFuZG9tJyk7XG4gICAgY29uc3QgaW5zdGFuY2U6IGFueSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShidXJyb3cpO1xuICAgIGF3YWl0IGJ1cnJvdy5uYW1lcmVnLnNldCgncmFuZG9tJywgZ2V0QWRkcmVzcyhpbnN0YW5jZSkpO1xuICAgIGNvbnN0IGVudHJ5ID0gYXdhaXQgYnVycm93Lm5hbWVyZWcuZ2V0KCdyYW5kb20nKTtcbiAgICBjb25zdCBhZGRyZXNzID0gZW50cnkuZ2V0RGF0YSgpO1xuICAgIGNvbnNvbGUubG9nKGFkZHJlc3MpO1xuICAgIGNvbnN0IGNvbnRyYWN0T3V0OiBhbnkgPSBhd2FpdCBjb250cmFjdC5hdChhZGRyZXNzLCBidXJyb3cpO1xuICAgIGNvbnN0IG51bWJlciA9IGF3YWl0IGNvbnRyYWN0T3V0LmdldFJhbmRvbU51bWJlcigpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChudW1iZXJbMF0sIDU1KTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpcy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvYWJpcy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0Msa0RBQW1EO0FBQ25ELCtCQUFnQztBQUVoQyxRQUFRLENBQUMsS0FBSyxFQUFFO0lBQUEsaUJBc0JmO0lBckJDLElBQU0sTUFBTSxHQUFHLHdJQVFkLENBQUM7SUFDRixpREFBaUQ7SUFDakQsRUFBRSxDQUFDLG1DQUFtQyxFQUFFOzs7OztvQkFDaEMsUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO29CQUNyQixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBN0MsUUFBUSxHQUFRLFNBQTZCO29CQUNuRCxxQkFBTSxhQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUscUJBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFBOztvQkFBeEQsU0FBd0QsQ0FBQztvQkFDM0MscUJBQU0sYUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUE7O29CQUExQyxLQUFLLEdBQUcsU0FBa0M7b0JBQzFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ2hDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ0kscUJBQU0sUUFBUSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsYUFBTSxDQUFDLEVBQUE7O29CQUFyRCxXQUFXLEdBQVEsU0FBa0M7b0JBQzVDLHFCQUFNLFdBQVcsQ0FBQyxlQUFlLEVBQUUsRUFBQTs7b0JBQTVDLE1BQU0sR0FBRyxTQUFtQztvQkFDbEQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Ozs7U0FDbkMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBnZXRBZGRyZXNzIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdBYmknLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHNvdXJjZSA9IGBcbnByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuXG5jb250cmFjdCByYW5kb20ge1xuXHRmdW5jdGlvbiBnZXRSYW5kb21OdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG5cdFx0cmV0dXJuIDU1O1xuXHR9XG59XG4gIGA7XG4gIC8vIFRPRE86IHVuZGVyc3RhbmQgd2h5IGFiaSBzdG9yYWdlIGlzbid0IHdvcmtpbmdcbiAgaXQoJ0NhbGwgY29udHJhY3QgdmlhIGJ1cnJvdyBzaWRlIEFiaScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAncmFuZG9tJyk7XG4gICAgY29uc3QgaW5zdGFuY2U6IGFueSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShjbGllbnQpO1xuICAgIGF3YWl0IGNsaWVudC5uYW1lcmVnLnNldCgncmFuZG9tJywgZ2V0QWRkcmVzcyhpbnN0YW5jZSkpO1xuICAgIGNvbnN0IGVudHJ5ID0gYXdhaXQgY2xpZW50Lm5hbWVyZWcuZ2V0KCdyYW5kb20nKTtcbiAgICBjb25zdCBhZGRyZXNzID0gZW50cnkuZ2V0RGF0YSgpO1xuICAgIGNvbnNvbGUubG9nKGFkZHJlc3MpO1xuICAgIGNvbnN0IGNvbnRyYWN0T3V0OiBhbnkgPSBhd2FpdCBjb250cmFjdC5hdChhZGRyZXNzLCBjbGllbnQpO1xuICAgIGNvbnN0IG51bWJlciA9IGF3YWl0IGNvbnRyYWN0T3V0LmdldFJhbmRvbU51bWJlcigpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChudW1iZXJbMF0sIDU1KTtcbiAgfSk7XG59KTtcbiJdfQ==

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

contract = compile_1.compile(source, 'Test');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -91,2 +91,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm4udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2JuLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLElBQUksRUFBRTtJQUFBLGlCQTBCZDtJQXpCQyxFQUFFLENBQUMsSUFBSSxFQUFFOzs7OztvQkFDRCxNQUFNLEdBQUcsd1JBV2QsQ0FBQztvQkFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7b0JBQ3hCLHFCQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBTSxDQUFDLEVBQUE7O29CQUF4QyxRQUFRLEdBQUcsU0FBNkI7b0JBRTdCLHFCQUFNLFFBQVEsQ0FBQyxTQUFTLEVBQUUsRUFBQTs7b0JBQXBDLE1BQU0sR0FBSSxDQUFBLFNBQTBCLENBQUEsR0FBOUI7b0JBQ2IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztvQkFFeEMscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBQTs7b0JBQTVDLFdBQVcsR0FBSSxDQUFBLFNBQTZCLENBQUEsR0FBakM7b0JBQ2xCLE1BQU0sQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBRXBCLHFCQUFNLFFBQVEsQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxDQUFDLEVBQUE7O29CQUE1RCxTQUFTLEdBQUksQ0FBQSxTQUErQyxDQUFBLEdBQW5EO29CQUNoQixNQUFNLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDOzs7O1NBQ3BFLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ0JOJywgZnVuY3Rpb24gKCkge1xuICBpdCgnQk4nLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcbiAgICAgICAgICBmdW5jdGlvbiBtdWwoaW50IGEsIGludCBiKSBwdWJsaWMgcHVyZSByZXR1cm5zIChpbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBhICogYjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXROdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG4gICAgICAgICAgICByZXR1cm4gMWUxOTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGJ1cnJvdyk7XG5cbiAgICBjb25zdCBbbnVtYmVyXSA9IGF3YWl0IGluc3RhbmNlLmdldE51bWJlcigpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChudW1iZXIudG9TdHJpbmcoKSwgJzEwMDAwMDAwMDAwMDAwMDAwMDAwJyk7XG5cbiAgICBjb25zdCBbc21hbGxOdW1iZXJdID0gYXdhaXQgaW5zdGFuY2UubXVsKDEwMCwgLTMwMCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHNtYWxsTnVtYmVyLCAtMzAwMDApO1xuXG4gICAgY29uc3QgW2JpZ051bWJlcl0gPSBhd2FpdCBpbnN0YW5jZS5tdWwoJzE4NDQ2NzQ0MDczNzA5NTUxNjE2JywgMTAyKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYmlnTnVtYmVyLnRvU3RyaW5nKCksICcxODgxNTY3ODk1NTE4Mzc0MjY0ODMyJyk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm4udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2JuLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLElBQUksRUFBRTtJQUFBLGlCQTBCZDtJQXpCQyxFQUFFLENBQUMsSUFBSSxFQUFFOzs7OztvQkFDRCxNQUFNLEdBQUcsd1JBV2QsQ0FBQztvQkFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7b0JBQ3hCLHFCQUFNLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBTSxDQUFDLEVBQUE7O29CQUF4QyxRQUFRLEdBQUcsU0FBNkI7b0JBRTdCLHFCQUFNLFFBQVEsQ0FBQyxTQUFTLEVBQUUsRUFBQTs7b0JBQXBDLE1BQU0sR0FBSSxDQUFBLFNBQTBCLENBQUEsR0FBOUI7b0JBQ2IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztvQkFFeEMscUJBQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBQTs7b0JBQTVDLFdBQVcsR0FBSSxDQUFBLFNBQTZCLENBQUEsR0FBakM7b0JBQ2xCLE1BQU0sQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBRXBCLHFCQUFNLFFBQVEsQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxDQUFDLEVBQUE7O29CQUE1RCxTQUFTLEdBQUksQ0FBQSxTQUErQyxDQUFBLEdBQW5EO29CQUNoQixNQUFNLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDOzs7O1NBQ3BFLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgY2xpZW50IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ0JOJywgZnVuY3Rpb24gKCkge1xuICBpdCgnQk4nLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcbiAgICAgICAgICBmdW5jdGlvbiBtdWwoaW50IGEsIGludCBiKSBwdWJsaWMgcHVyZSByZXR1cm5zIChpbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBhICogYjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXROdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG4gICAgICAgICAgICByZXR1cm4gMWUxOTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuICAgIGNvbnN0IGluc3RhbmNlID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGNsaWVudCk7XG5cbiAgICBjb25zdCBbbnVtYmVyXSA9IGF3YWl0IGluc3RhbmNlLmdldE51bWJlcigpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChudW1iZXIudG9TdHJpbmcoKSwgJzEwMDAwMDAwMDAwMDAwMDAwMDAwJyk7XG5cbiAgICBjb25zdCBbc21hbGxOdW1iZXJdID0gYXdhaXQgaW5zdGFuY2UubXVsKDEwMCwgLTMwMCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHNtYWxsTnVtYmVyLCAtMzAwMDApO1xuXG4gICAgY29uc3QgW2JpZ051bWJlcl0gPSBhd2FpdCBpbnN0YW5jZS5tdWwoJzE4NDQ2NzQ0MDczNzA5NTUxNjE2JywgMTAyKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYmlnTnVtYmVyLnRvU3RyaW5nKCksICcxODgxNTY3ODk1NTE4Mzc0MjY0ODMyJyk7XG4gIH0pO1xufSk7XG4iXX0=

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

contract = compile_1.compile(source, 'Contract');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -70,2 +70,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QtZXZlbnQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2NvbnRyYWN0LWV2ZW50LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxnREFBK0M7QUFDL0Msa0RBQWtFO0FBQ2xFLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUU7SUFBQSxpQkF3QjFDO0lBdkJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRywwTEFTZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFDdkIscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQTdDLFFBQVEsR0FBUSxTQUE2QjtvQkFDN0MsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFzQixDQUFDO29CQUN4QyxNQUFNLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxxQkFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsS0FBSyxFQUFFLE1BQU07d0JBQ25FLElBQUksS0FBSyxFQUFFOzRCQUNULE1BQU0sS0FBSyxDQUFDO3lCQUNiOzZCQUFNOzRCQUNMLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQzt5QkFDakI7d0JBQ0QsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUN0QixDQUFDLENBQUMsQ0FBQzs7OztTQUNKLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IENvbnRyYWN0RXZlbnQsIGdldEFkZHJlc3MgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ05lc3RlZCBjb250cmFjdCBldmVudCBlbWlzc2lvbicsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJyMzOCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IENvbnRyYWN0IHtcbiAgICAgICAgICBldmVudCBFdmVudCgpO1xuXG4gICAgICAgICAgZnVuY3Rpb24gYW5ub3VuY2UoKSBwdWJsaWMge1xuICAgICAgICAgICAgICBlbWl0IEV2ZW50KCk7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ0NvbnRyYWN0Jyk7XG4gICAgY29uc3QgaW5zdGFuY2U6IGFueSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShidXJyb3cpO1xuICAgIGNvbnN0IGV2ZW50ID0gaW5zdGFuY2UuRXZlbnQgYXMgQ29udHJhY3RFdmVudDtcbiAgICBjb25zdCBzdHJlYW0gPSBldmVudC5hdChnZXRBZGRyZXNzKGluc3RhbmNlKSwgZnVuY3Rpb24gKGVycm9yLCByZXN1bHQpIHtcbiAgICAgIGlmIChlcnJvcikge1xuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN0cmVhbS5jYW5jZWwoKTtcbiAgICAgIH1cbiAgICAgIGluc3RhbmNlLmFubm91bmNlKCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3QtZXZlbnQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2NvbnRyYWN0LWV2ZW50LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxnREFBK0M7QUFDL0Msa0RBQWtFO0FBQ2xFLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsZ0NBQWdDLEVBQUU7SUFBQSxpQkF3QjFDO0lBdkJDLEVBQUUsQ0FBQyxLQUFLLEVBQUU7Ozs7O29CQUNGLE1BQU0sR0FBRywwTEFTZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFDdkIscUJBQU0sUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQTdDLFFBQVEsR0FBUSxTQUE2QjtvQkFDN0MsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFzQixDQUFDO29CQUN4QyxNQUFNLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxxQkFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsS0FBSyxFQUFFLE1BQU07d0JBQ25FLElBQUksS0FBSyxFQUFFOzRCQUNULE1BQU0sS0FBSyxDQUFDO3lCQUNiOzZCQUFNOzRCQUNMLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQzt5QkFDakI7d0JBQ0QsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUN0QixDQUFDLENBQUMsQ0FBQzs7OztTQUNKLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IENvbnRyYWN0RXZlbnQsIGdldEFkZHJlc3MgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgY2xpZW50IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ05lc3RlZCBjb250cmFjdCBldmVudCBlbWlzc2lvbicsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJyMzOCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IENvbnRyYWN0IHtcbiAgICAgICAgICBldmVudCBFdmVudCgpO1xuXG4gICAgICAgICAgZnVuY3Rpb24gYW5ub3VuY2UoKSBwdWJsaWMge1xuICAgICAgICAgICAgICBlbWl0IEV2ZW50KCk7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ0NvbnRyYWN0Jyk7XG4gICAgY29uc3QgaW5zdGFuY2U6IGFueSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShjbGllbnQpO1xuICAgIGNvbnN0IGV2ZW50ID0gaW5zdGFuY2UuRXZlbnQgYXMgQ29udHJhY3RFdmVudDtcbiAgICBjb25zdCBzdHJlYW0gPSBldmVudC5hdChnZXRBZGRyZXNzKGluc3RhbmNlKSwgZnVuY3Rpb24gKGVycm9yLCByZXN1bHQpIHtcbiAgICAgIGlmIChlcnJvcikge1xuICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN0cmVhbS5jYW5jZWwoKTtcbiAgICAgIH1cbiAgICAgIGluc3RhbmNlLmFubm91bmNlKCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=

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

contract = compile_1.compile(source, 'Contract');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -105,2 +105,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbGlzdGVuLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9ldmVudC1saXN0ZW4udGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBRS9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsaUJBQWlCLEVBQUU7SUFBQSxpQkEwRDNCO0lBekRDLEVBQUUsQ0FBQyxxQ0FBcUMsRUFBRTs7Ozs7b0JBQ2xDLE1BQU0sR0FBRyxvcEJBeUJkLENBQUM7b0JBRUksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO29CQUM1QixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBeEMsUUFBUSxHQUFHLFNBQTZCO29CQUN4QyxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQWlCLFVBQUMsT0FBTyxFQUFFLE1BQU07d0JBQzFELElBQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxHQUFvQixDQUFDO3dCQUMxQyxJQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsVUFBQyxLQUFLLEVBQUUsTUFBTTs0QkFDL0IsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0NBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzs2QkFDZjtpQ0FBTTtnQ0FDTCxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Z0NBQ2hCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQzs2QkFDakI7d0JBQ0gsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FBQyxDQUFDLENBQUM7b0JBQ0gscUJBQU0sUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFBOztvQkFBekIsU0FBeUIsQ0FBQztvQkFFWCxxQkFBTSxPQUFPLEVBQUE7O29CQUF0QixNQUFNLEdBQUcsU0FBYTtvQkFFNUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSwwQ0FBMEMsQ0FBQyxDQUFDO29CQUN2RixNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLDBDQUEwQyxDQUFDLENBQUM7b0JBQ3hGLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ2xELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQ3RELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7b0JBQ3ZELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7b0JBQ2hELFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQXFCLENBQUM7b0JBQ3RELE1BQU0sQ0FBQyxXQUFXLENBQ2hCLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQ3pDLGtFQUFrRSxDQUNuRSxDQUFDOzs7O1NBQ0gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dEZXNjcmlwdGlvbiB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L2FiaSc7XG5pbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBDb250cmFjdEV2ZW50IH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdFdmVudCBsaXN0ZW5pbmcnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdsaXN0ZW5zIHRvIGFuIGV2ZW50IGZyb20gYSBjb250cmFjdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IENvbnRyYWN0IHtcbiAgICAgICAgZXZlbnQgUGF5KFxuICAgICAgICAgIGFkZHJlc3Mgb3JpZ2luYXRvcixcbiAgICAgICAgICBhZGRyZXNzIGJlbmVmaWNpYXJ5LFxuICAgICAgICAgIGludCBhbW91bnQsXG4gICAgICAgICAgc3RyaW5nIHNlcnZpY2VuYW1lLFxuICAgICAgICAgIHN0cmluZyBuaWNrbmFtZSxcbiAgICAgICAgICBzdHJpbmcgcHJvdmlkZXJuYW1lLFxuICAgICAgICAgIGJ5dGVzMzIgcmFuZG9tQnl0ZXNcbiAgICAgICAgKTtcblxuICAgICAgICBmdW5jdGlvbiBhbm5vdW5jZSgpIHB1YmxpYyB7XG4gICAgICAgICAgZW1pdCBQYXkoXG4gICAgICAgICAgICAweDg4OTc3YTM3RDA1YTRGRTg2ZDA5RTg4Yzg4YTQ5QzJmQ0Y3ZDZkOEYsXG4gICAgICAgICAgICAweDcyMTU4NGZhNGYxQjlmNTE5NTAwMTgwNzNBOEU1RUNGNDdmMmQzYjgsXG4gICAgICAgICAgICAxLFxuICAgICAgICAgICAgXCJFbmVyZ3lcIixcbiAgICAgICAgICAgIFwid2FzbWFjaGluZVwiLFxuICAgICAgICAgICAgXCJFbmVjb1wiLFxuICAgICAgICAgICAgYnl0ZXMzMih1aW50MjU2KDB4REVBREZFRURCRUVGRkFDRSkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnQ29udHJhY3QnKTtcbiAgICBjb25zdCBpbnN0YW5jZSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShidXJyb3cpO1xuICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZTxMb2dEZXNjcmlwdGlvbj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgcGF5ID0gaW5zdGFuY2UuUGF5IGFzIENvbnRyYWN0RXZlbnQ7XG4gICAgICBjb25zdCBzdHJlYW0gPSBwYXkoKGVycm9yLCByZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIHx8ICFyZXN1bHQpIHtcbiAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcbiAgICAgICAgICBzdHJlYW0uY2FuY2VsKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGF3YWl0IGluc3RhbmNlLmFubm91bmNlKCk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBwcm9taXNlO1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLm9yaWdpbmF0b3IsICc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLmJlbmVmaWNpYXJ5LCAnNzIxNTg0RkE0RjFCOUY1MTk1MDAxODA3M0E4RTVFQ0Y0N0YyRDNCOCcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChOdW1iZXIocmVzdWx0LmFyZ3MuYW1vdW50KSwgMSk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLnNlcnZpY2VuYW1lLCAnRW5lcmd5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLm5pY2tuYW1lLCAnd2FzbWFjaGluZScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChyZXN1bHQuYXJncy5wcm92aWRlcm5hbWUsICdFbmVjbycpO1xuICAgIGNvbnN0IHJhbmRvbUJ5dGVzID0gcmVzdWx0LmFyZ3MucmFuZG9tQnl0ZXMgYXMgQnVmZmVyO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHJhbmRvbUJ5dGVzLnRvU3RyaW5nKCdoZXgnKS50b1VwcGVyQ2FzZSgpLFxuICAgICAgJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMERFQURGRUVEQkVFRkZBQ0UnLFxuICAgICk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtbGlzdGVuLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9ldmVudC1saXN0ZW4udGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBRS9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsaUJBQWlCLEVBQUU7SUFBQSxpQkEwRDNCO0lBekRDLEVBQUUsQ0FBQyxxQ0FBcUMsRUFBRTs7Ozs7b0JBQ2xDLE1BQU0sR0FBRyxvcEJBeUJkLENBQUM7b0JBRUksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO29CQUM1QixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBeEMsUUFBUSxHQUFHLFNBQTZCO29CQUN4QyxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQWlCLFVBQUMsT0FBTyxFQUFFLE1BQU07d0JBQzFELElBQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxHQUFvQixDQUFDO3dCQUMxQyxJQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsVUFBQyxLQUFLLEVBQUUsTUFBTTs0QkFDL0IsSUFBSSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0NBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzs2QkFDZjtpQ0FBTTtnQ0FDTCxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Z0NBQ2hCLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQzs2QkFDakI7d0JBQ0gsQ0FBQyxDQUFDLENBQUM7b0JBQ0wsQ0FBQyxDQUFDLENBQUM7b0JBQ0gscUJBQU0sUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFBOztvQkFBekIsU0FBeUIsQ0FBQztvQkFFWCxxQkFBTSxPQUFPLEVBQUE7O29CQUF0QixNQUFNLEdBQUcsU0FBYTtvQkFFNUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSwwQ0FBMEMsQ0FBQyxDQUFDO29CQUN2RixNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLDBDQUEwQyxDQUFDLENBQUM7b0JBQ3hGLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ2xELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7b0JBQ3RELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7b0JBQ3ZELE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7b0JBQ2hELFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQXFCLENBQUM7b0JBQ3RELE1BQU0sQ0FBQyxXQUFXLENBQ2hCLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQ3pDLGtFQUFrRSxDQUNuRSxDQUFDOzs7O1NBQ0gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dEZXNjcmlwdGlvbiB9IGZyb20gJ0BldGhlcnNwcm9qZWN0L2FiaSc7XG5pbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBDb250cmFjdEV2ZW50IH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdFdmVudCBsaXN0ZW5pbmcnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdsaXN0ZW5zIHRvIGFuIGV2ZW50IGZyb20gYSBjb250cmFjdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IENvbnRyYWN0IHtcbiAgICAgICAgZXZlbnQgUGF5KFxuICAgICAgICAgIGFkZHJlc3Mgb3JpZ2luYXRvcixcbiAgICAgICAgICBhZGRyZXNzIGJlbmVmaWNpYXJ5LFxuICAgICAgICAgIGludCBhbW91bnQsXG4gICAgICAgICAgc3RyaW5nIHNlcnZpY2VuYW1lLFxuICAgICAgICAgIHN0cmluZyBuaWNrbmFtZSxcbiAgICAgICAgICBzdHJpbmcgcHJvdmlkZXJuYW1lLFxuICAgICAgICAgIGJ5dGVzMzIgcmFuZG9tQnl0ZXNcbiAgICAgICAgKTtcblxuICAgICAgICBmdW5jdGlvbiBhbm5vdW5jZSgpIHB1YmxpYyB7XG4gICAgICAgICAgZW1pdCBQYXkoXG4gICAgICAgICAgICAweDg4OTc3YTM3RDA1YTRGRTg2ZDA5RTg4Yzg4YTQ5QzJmQ0Y3ZDZkOEYsXG4gICAgICAgICAgICAweDcyMTU4NGZhNGYxQjlmNTE5NTAwMTgwNzNBOEU1RUNGNDdmMmQzYjgsXG4gICAgICAgICAgICAxLFxuICAgICAgICAgICAgXCJFbmVyZ3lcIixcbiAgICAgICAgICAgIFwid2FzbWFjaGluZVwiLFxuICAgICAgICAgICAgXCJFbmVjb1wiLFxuICAgICAgICAgICAgYnl0ZXMzMih1aW50MjU2KDB4REVBREZFRURCRUVGRkFDRSkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnQ29udHJhY3QnKTtcbiAgICBjb25zdCBpbnN0YW5jZSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShjbGllbnQpO1xuICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZTxMb2dEZXNjcmlwdGlvbj4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgcGF5ID0gaW5zdGFuY2UuUGF5IGFzIENvbnRyYWN0RXZlbnQ7XG4gICAgICBjb25zdCBzdHJlYW0gPSBwYXkoKGVycm9yLCByZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKGVycm9yIHx8ICFyZXN1bHQpIHtcbiAgICAgICAgICByZWplY3QoZXJyb3IpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcbiAgICAgICAgICBzdHJlYW0uY2FuY2VsKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGF3YWl0IGluc3RhbmNlLmFubm91bmNlKCk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBwcm9taXNlO1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLm9yaWdpbmF0b3IsICc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLmJlbmVmaWNpYXJ5LCAnNzIxNTg0RkE0RjFCOUY1MTk1MDAxODA3M0E4RTVFQ0Y0N0YyRDNCOCcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChOdW1iZXIocmVzdWx0LmFyZ3MuYW1vdW50KSwgMSk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLnNlcnZpY2VuYW1lLCAnRW5lcmd5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJlc3VsdC5hcmdzLm5pY2tuYW1lLCAnd2FzbWFjaGluZScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChyZXN1bHQuYXJncy5wcm92aWRlcm5hbWUsICdFbmVjbycpO1xuICAgIGNvbnN0IHJhbmRvbUJ5dGVzID0gcmVzdWx0LmFyZ3MucmFuZG9tQnl0ZXMgYXMgQnVmZmVyO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHJhbmRvbUJ5dGVzLnRvU3RyaW5nKCdoZXgnKS50b1VwcGVyQ2FzZSgpLFxuICAgICAgJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMERFQURGRUVEQkVFRkZBQ0UnLFxuICAgICk7XG4gIH0pO1xufSk7XG4iXX0=

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

contract = compile_1.compile(source, 'Contract');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -96,2 +96,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2V2ZW50LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUUvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLE9BQU8sRUFBRTtJQUFBLGlCQW9DakI7SUFuQ0MsRUFBRSxDQUFDLHFDQUFxQyxFQUFFOzs7OztvQkFDbEMsTUFBTSxHQUFHLDRPQVdkLENBQUM7b0JBQ0ksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO29CQUN2QixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBN0MsUUFBUSxHQUFRLFNBQTZCO29CQUMvQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO29CQUVSLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBc0IsQ0FBQztvQkFDeEMsTUFBTSxHQUFHLEtBQUssQ0FBQyxVQUFDLEtBQUssRUFBRSxLQUFLOzt3QkFDaEMsSUFBSSxLQUFLLEVBQUU7NEJBQ1QsTUFBTSxLQUFLLENBQUM7eUJBQ2I7NkJBQU07NEJBQ0wsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFBLE1BQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLElBQUksMENBQUUsSUFBSSwwQ0FBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7NEJBRWxELEtBQUssRUFBRSxDQUFDOzRCQUVSLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtnQ0FDZixNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7NkJBQ2pCO3lCQUNGO29CQUNILENBQUMsQ0FBQyxDQUFDO29CQUVILFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDcEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDOzs7O1NBQ3JCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgQ29udHJhY3RFdmVudCB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb250cmFjdCc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnZXZlbnQnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdsaXN0ZW5zIHRvIGFuIGV2ZW50IGZyb20gYSBjb250cmFjdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IENvbnRyYWN0IHtcbiAgICAgICAgICBldmVudCBFdmVudChcbiAgICAgICAgICAgICAgYWRkcmVzcyBmcm9tXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGZ1bmN0aW9uIGFubm91bmNlKCkgcHVibGljIHtcbiAgICAgICAgICAgICAgZW1pdCBFdmVudChtc2cuc2VuZGVyKTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnQ29udHJhY3QnKTtcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGJ1cnJvdyk7XG4gICAgbGV0IGNvdW50ID0gMDtcblxuICAgIGNvbnN0IGV2ZW50ID0gaW5zdGFuY2UuRXZlbnQgYXMgQ29udHJhY3RFdmVudDtcbiAgICBjb25zdCBzdHJlYW0gPSBldmVudCgoZXJyb3IsIGV2ZW50KSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZXZlbnQ/LmFyZ3M/LmZyb20/Lmxlbmd0aCwgNDApO1xuXG4gICAgICAgIGNvdW50Kys7XG5cbiAgICAgICAgaWYgKGNvdW50ID09PSAyKSB7XG4gICAgICAgICAgc3RyZWFtLmNhbmNlbCgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpbnN0YW5jZS5hbm5vdW5jZSgpO1xuICAgIGluc3RhbmNlLmFubm91bmNlKCk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L2V2ZW50LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUUvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLE9BQU8sRUFBRTtJQUFBLGlCQW9DakI7SUFuQ0MsRUFBRSxDQUFDLHFDQUFxQyxFQUFFOzs7OztvQkFDbEMsTUFBTSxHQUFHLDRPQVdkLENBQUM7b0JBQ0ksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO29CQUN2QixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBN0MsUUFBUSxHQUFRLFNBQTZCO29CQUMvQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO29CQUVSLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBc0IsQ0FBQztvQkFDeEMsTUFBTSxHQUFHLEtBQUssQ0FBQyxVQUFDLEtBQUssRUFBRSxLQUFLOzt3QkFDaEMsSUFBSSxLQUFLLEVBQUU7NEJBQ1QsTUFBTSxLQUFLLENBQUM7eUJBQ2I7NkJBQU07NEJBQ0wsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFBLE1BQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLElBQUksMENBQUUsSUFBSSwwQ0FBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7NEJBRWxELEtBQUssRUFBRSxDQUFDOzRCQUVSLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtnQ0FDZixNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7NkJBQ2pCO3lCQUNGO29CQUNILENBQUMsQ0FBQyxDQUFDO29CQUVILFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDcEIsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDOzs7O1NBQ3JCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgQ29udHJhY3RFdmVudCB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb250cmFjdCc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnZXZlbnQnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdsaXN0ZW5zIHRvIGFuIGV2ZW50IGZyb20gYSBjb250cmFjdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IENvbnRyYWN0IHtcbiAgICAgICAgICBldmVudCBFdmVudChcbiAgICAgICAgICAgICAgYWRkcmVzcyBmcm9tXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGZ1bmN0aW9uIGFubm91bmNlKCkgcHVibGljIHtcbiAgICAgICAgICAgICAgZW1pdCBFdmVudChtc2cuc2VuZGVyKTtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnQ29udHJhY3QnKTtcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gYXdhaXQgY29udHJhY3QuZGVwbG95KGNsaWVudCk7XG4gICAgbGV0IGNvdW50ID0gMDtcblxuICAgIGNvbnN0IGV2ZW50ID0gaW5zdGFuY2UuRXZlbnQgYXMgQ29udHJhY3RFdmVudDtcbiAgICBjb25zdCBzdHJlYW0gPSBldmVudCgoZXJyb3IsIGV2ZW50KSA9PiB7XG4gICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZXZlbnQ/LmFyZ3M/LmZyb20/Lmxlbmd0aCwgNDApO1xuXG4gICAgICAgIGNvdW50Kys7XG5cbiAgICAgICAgaWYgKGNvdW50ID09PSAyKSB7XG4gICAgICAgICAgc3RyZWFtLmNhbmNlbCgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpbnN0YW5jZS5hbm5vdW5jZSgpO1xuICAgIGluc3RhbmNlLmFubm91bmNlKCk7XG4gIH0pO1xufSk7XG4iXX0=

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

wasm = fs_1["default"].readFileSync('src/test/flipper.wasm').toString('hex');
return [4 /*yield*/, new contract_1.Contract({ abi: abi, bytecode: wasm }).deploy(test_1.burrow, true)];
return [4 /*yield*/, new contract_1.Contract({ abi: abi, bytecode: wasm }).deploy(test_1.client, true)];
case 1:

@@ -103,2 +103,2 @@ TestContract = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxpcHBlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvZmxpcHBlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQywwQ0FBb0I7QUFDcEIsa0RBQWlEO0FBQ2pELCtCQUFnQztBQUVoQyxRQUFRLENBQUMsZUFBZSxFQUFFO0lBQUEsaUJBZ0J6QjtJQWZDLElBQUksWUFBaUIsQ0FBQztJQUV0QixNQUFNLENBQUM7Ozs7O29CQUNDLEdBQUcsR0FBVSxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQUUsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztvQkFDMUUsSUFBSSxHQUFXLGVBQUUsQ0FBQyxZQUFZLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQy9ELHFCQUFNLElBQUksbUJBQVEsQ0FBQyxFQUFFLEdBQUcsS0FBQSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUE7O29CQUEvRSxZQUFZLEdBQUcsU0FBZ0UsQ0FBQzs7OztTQUNqRixDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsTUFBTSxFQUFFOzs7O3dCQUNJLHFCQUFNLFlBQVksQ0FBQyxHQUFHLEVBQUUsRUFBQTs7b0JBQWpDLE1BQU0sR0FBRyxTQUF3QjtvQkFDckMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3BDLHFCQUFNLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBQTs7b0JBQXpCLFNBQXlCLENBQUM7b0JBQ2pCLHFCQUFNLFlBQVksQ0FBQyxHQUFHLEVBQUUsRUFBQTs7b0JBQWpDLE1BQU0sR0FBRyxTQUF3QixDQUFDO29CQUNsQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztTQUN0QyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzJztcbmltcG9ydCB7IENvbnRyYWN0IH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdXYXNtIGZsaXBwZXI6JywgZnVuY3Rpb24gKCkge1xuICBsZXQgVGVzdENvbnRyYWN0OiBhbnk7XG5cbiAgYmVmb3JlKGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBhYmk6IGFueVtdID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoJ3NyYy90ZXN0L2ZsaXBwZXIuYWJpJywgJ3V0Zi04JykpO1xuICAgIGNvbnN0IHdhc206IHN0cmluZyA9IGZzLnJlYWRGaWxlU3luYygnc3JjL3Rlc3QvZmxpcHBlci53YXNtJykudG9TdHJpbmcoJ2hleCcpO1xuICAgIFRlc3RDb250cmFjdCA9IGF3YWl0IG5ldyBDb250cmFjdCh7IGFiaSwgYnl0ZWNvZGU6IHdhc20gfSkuZGVwbG95KGJ1cnJvdywgdHJ1ZSk7XG4gIH0pO1xuXG4gIGl0KCdGbGlwJywgYXN5bmMgKCkgPT4ge1xuICAgIGxldCBvdXRwdXQgPSBhd2FpdCBUZXN0Q29udHJhY3QuZ2V0KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG91dHB1dFswXSwgdHJ1ZSk7XG4gICAgYXdhaXQgVGVzdENvbnRyYWN0LmZsaXAoKTtcbiAgICBvdXRwdXQgPSBhd2FpdCBUZXN0Q29udHJhY3QuZ2V0KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG91dHB1dFswXSwgZmFsc2UpO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxpcHBlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvZmxpcHBlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQywwQ0FBb0I7QUFDcEIsa0RBQWlEO0FBQ2pELCtCQUFnQztBQUVoQyxRQUFRLENBQUMsZUFBZSxFQUFFO0lBQUEsaUJBZ0J6QjtJQWZDLElBQUksWUFBaUIsQ0FBQztJQUV0QixNQUFNLENBQUM7Ozs7O29CQUNDLEdBQUcsR0FBVSxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQUUsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztvQkFDMUUsSUFBSSxHQUFXLGVBQUUsQ0FBQyxZQUFZLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQy9ELHFCQUFNLElBQUksbUJBQVEsQ0FBQyxFQUFFLEdBQUcsS0FBQSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUE7O29CQUEvRSxZQUFZLEdBQUcsU0FBZ0UsQ0FBQzs7OztTQUNqRixDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsTUFBTSxFQUFFOzs7O3dCQUNJLHFCQUFNLFlBQVksQ0FBQyxHQUFHLEVBQUUsRUFBQTs7b0JBQWpDLE1BQU0sR0FBRyxTQUF3QjtvQkFDckMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3BDLHFCQUFNLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBQTs7b0JBQXpCLFNBQXlCLENBQUM7b0JBQ2pCLHFCQUFNLFlBQVksQ0FBQyxHQUFHLEVBQUUsRUFBQTs7b0JBQWpDLE1BQU0sR0FBRyxTQUF3QixDQUFDO29CQUNsQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQzs7OztTQUN0QyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IGZzIGZyb20gJ2ZzJztcbmltcG9ydCB7IENvbnRyYWN0IH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbnRyYWN0JztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdXYXNtIGZsaXBwZXI6JywgZnVuY3Rpb24gKCkge1xuICBsZXQgVGVzdENvbnRyYWN0OiBhbnk7XG5cbiAgYmVmb3JlKGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBhYmk6IGFueVtdID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoJ3NyYy90ZXN0L2ZsaXBwZXIuYWJpJywgJ3V0Zi04JykpO1xuICAgIGNvbnN0IHdhc206IHN0cmluZyA9IGZzLnJlYWRGaWxlU3luYygnc3JjL3Rlc3QvZmxpcHBlci53YXNtJykudG9TdHJpbmcoJ2hleCcpO1xuICAgIFRlc3RDb250cmFjdCA9IGF3YWl0IG5ldyBDb250cmFjdCh7IGFiaSwgYnl0ZWNvZGU6IHdhc20gfSkuZGVwbG95KGNsaWVudCwgdHJ1ZSk7XG4gIH0pO1xuXG4gIGl0KCdGbGlwJywgYXN5bmMgKCkgPT4ge1xuICAgIGxldCBvdXRwdXQgPSBhd2FpdCBUZXN0Q29udHJhY3QuZ2V0KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG91dHB1dFswXSwgdHJ1ZSk7XG4gICAgYXdhaXQgVGVzdENvbnRyYWN0LmZsaXAoKTtcbiAgICBvdXRwdXQgPSBhd2FpdCBUZXN0Q29udHJhY3QuZ2V0KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG91dHB1dFswXSwgZmFsc2UpO1xuICB9KTtcbn0pO1xuIl19

@@ -77,4 +77,4 @@ "use strict";

return [4 /*yield*/, Promise.all([
contract.deploy(test_1.burrow, '88977A37D05A4FE86D09E88C88A49C2FCF7D6D8F'),
contract.deploy(test_1.burrow, 'ABCDEFABCDEFABCDEFABCDEFABCDEFABCDEF0123'),
contract.deploy(test_1.client, '88977A37D05A4FE86D09E88C88A49C2FCF7D6D8F'),
contract.deploy(test_1.client, 'ABCDEFABCDEFABCDEFABCDEFABCDEFABCDEF0123'),
])];

@@ -103,2 +103,2 @@ case 1:

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25hbC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvZnVuY3Rpb25hbC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQyxrREFBb0Q7QUFDcEQsK0JBQWdDO0FBRWhDLFFBQVEsQ0FBQywyQkFBMkIsRUFBRTtJQUFBLGlCQW1EckM7SUFsREMsRUFBRSxDQUFDLG9CQUFvQixFQUFFOzs7OztvQkFDakIsTUFBTSxHQUFHLDR1QkF5QmQsQ0FBQztvQkFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7b0JBRVYscUJBQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQzs0QkFDL0MsUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsMENBQTBDLENBQUM7NEJBQ25FLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBTSxFQUFFLDBDQUEwQyxDQUFDO3lCQUNwRSxDQUFDLEVBQUE7O29CQUhJLEtBQXlCLFNBRzdCLEVBSEssU0FBUyxRQUFBLEVBQUUsU0FBUyxRQUFBO29CQUtyQixRQUFRLEdBQUcsc0JBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUM7b0JBQzFDLFFBQVEsR0FBRyxzQkFBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFFM0IscUJBQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQzs0QkFDckMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUU7NEJBQ3ZDLFNBQVMsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFO3lCQUN4QyxDQUFDLEVBQUE7O29CQUhJLEtBQWUsU0FHbkIsRUFISyxJQUFJLFFBQUEsRUFBRSxJQUFJLFFBQUE7b0JBS1gsV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0VBQWtFLEVBQUUsS0FBSyxDQUFDLENBQUM7b0JBQ3JHLFNBQVMsR0FBRyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSwwQ0FBMEMsQ0FBQyxDQUFDO29CQUNuRyxTQUFTLEdBQUcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsMENBQTBDLENBQUMsQ0FBQztvQkFDekcsTUFBTSxDQUFDLGVBQWUsbUJBQUssSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDO29CQUM3QyxNQUFNLENBQUMsZUFBZSxtQkFBSyxJQUFJLEdBQUcsU0FBUyxDQUFDLENBQUM7b0JBQzdDLG9FQUFvRTtvQkFDcEUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDOzs7O1NBQ2hELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgZ2V0TWV0YWRhdGEgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ0Z1bmN0aW9uYWwgQ29udHJhY3QgVXNhZ2UnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCcjQ29uc3RydWN0b3IgdXNhZ2UnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcbiAgICAgICAgYWRkcmVzcyBzdG9yZWREYXRhO1xuICAgICAgICBjb25zdHJ1Y3RvcihhZGRyZXNzIHgpIHB1YmxpYyB7XG4gICAgICAgICAgc3RvcmVkRGF0YSA9IHg7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXRBZGRyZXNzKCkgcHVibGljIHZpZXcgcmV0dXJucyAoYWRkcmVzcykge1xuICAgICAgICAgIHJldHVybiBhZGRyZXNzKHRoaXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gZ2V0TnVtYmVyKCkgcHVibGljIHB1cmUgcmV0dXJucyAodWludCkge1xuICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXRDb21iaW5hdGlvbigpIHB1YmxpYyB2aWV3IHJldHVybnMgKHVpbnQgX251bWJlciwgYWRkcmVzcyBfYWRkcmVzcywgc3RyaW5nIG1lbW9yeSBfc2F5aW5nLCBieXRlczMyIF9yYW5kb21CeXRlcywgYWRkcmVzcyBfc3RvcmVkKSB7XG4gICAgICAgICAgX251bWJlciA9IDEwMDtcbiAgICAgICAgICBfYWRkcmVzcyA9IGFkZHJlc3ModGhpcyk7XG4gICAgICAgICAgX3NheWluZyA9IFwiaGVsbG8gbW90b1wiO1xuICAgICAgICAgIF9yYW5kb21CeXRlcyA9IGJ5dGVzMzIodWludDI1NigweERFQURCRUVGRkVFREZBQ0UpKTtcbiAgICAgICAgICBfc3RvcmVkID0gc3RvcmVkRGF0YTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuXG4gICAgY29uc3QgW2luc3RhbmNlMSwgaW5zdGFuY2UyXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgIGNvbnRyYWN0LmRlcGxveShidXJyb3csICc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJyksXG4gICAgICBjb250cmFjdC5kZXBsb3koYnVycm93LCAnQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGMDEyMycpLFxuICAgIF0pO1xuXG4gICAgY29uc3QgYWRkcmVzczEgPSBnZXRNZXRhZGF0YShpbnN0YW5jZTEpLmFkZHJlc3M7XG4gICAgY29uc3QgYWRkcmVzczIgPSBnZXRNZXRhZGF0YShpbnN0YW5jZTIpLmFkZHJlc3M7XG5cbiAgICBjb25zdCBbcmV0MSwgcmV0Ml0gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICBpbnN0YW5jZTEuZ2V0Q29tYmluYXRpb24uYXQoYWRkcmVzczEpKCksXG4gICAgICBpbnN0YW5jZTEuZ2V0Q29tYmluYXRpb24uYXQoYWRkcmVzczIpKCksXG4gICAgXSk7XG5cbiAgICBjb25zdCByYW5kb21CeXRlcyA9IEJ1ZmZlci5mcm9tKCcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBERUFEQkVFRkZFRURGQUNFJywgJ2hleCcpO1xuICAgIGNvbnN0IGV4cGVjdGVkMSA9IFsxMDAsIGFkZHJlc3MxLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzLCAnODg5NzdBMzdEMDVBNEZFODZEMDlFODhDODhBNDlDMkZDRjdENkQ4RiddO1xuICAgIGNvbnN0IGV4cGVjdGVkMiA9IFsxMDAsIGFkZHJlc3MyLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzLCAnQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGMDEyMyddO1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnJldDFdLCBleHBlY3RlZDEpO1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnJldDJdLCBleHBlY3RlZDIpO1xuICAgIC8vIENoZWNrIHdlIGFyZSBhc3NpZ25pbmcgbmFtZXMgdG8gaHlicmlkIHJlY29yZC9hcnJheSBSZXN1bHQgb2JqZWN0XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJldDIuX3NheWluZywgJ2hlbGxvIG1vdG8nKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25hbC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvZnVuY3Rpb25hbC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQyxrREFBb0Q7QUFDcEQsK0JBQWdDO0FBRWhDLFFBQVEsQ0FBQywyQkFBMkIsRUFBRTtJQUFBLGlCQW1EckM7SUFsREMsRUFBRSxDQUFDLG9CQUFvQixFQUFFOzs7OztvQkFDakIsTUFBTSxHQUFHLDR1QkF5QmQsQ0FBQztvQkFDSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7b0JBRVYscUJBQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQzs0QkFDL0MsUUFBUSxDQUFDLE1BQU0sQ0FBQyxhQUFNLEVBQUUsMENBQTBDLENBQUM7NEJBQ25FLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBTSxFQUFFLDBDQUEwQyxDQUFDO3lCQUNwRSxDQUFDLEVBQUE7O29CQUhJLEtBQXlCLFNBRzdCLEVBSEssU0FBUyxRQUFBLEVBQUUsU0FBUyxRQUFBO29CQUtyQixRQUFRLEdBQUcsc0JBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUM7b0JBQzFDLFFBQVEsR0FBRyxzQkFBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFFM0IscUJBQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQzs0QkFDckMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUU7NEJBQ3ZDLFNBQVMsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFO3lCQUN4QyxDQUFDLEVBQUE7O29CQUhJLEtBQWUsU0FHbkIsRUFISyxJQUFJLFFBQUEsRUFBRSxJQUFJLFFBQUE7b0JBS1gsV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0VBQWtFLEVBQUUsS0FBSyxDQUFDLENBQUM7b0JBQ3JHLFNBQVMsR0FBRyxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSwwQ0FBMEMsQ0FBQyxDQUFDO29CQUNuRyxTQUFTLEdBQUcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsMENBQTBDLENBQUMsQ0FBQztvQkFDekcsTUFBTSxDQUFDLGVBQWUsbUJBQUssSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDO29CQUM3QyxNQUFNLENBQUMsZUFBZSxtQkFBSyxJQUFJLEdBQUcsU0FBUyxDQUFDLENBQUM7b0JBQzdDLG9FQUFvRTtvQkFDcEUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDOzs7O1NBQ2hELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgZ2V0TWV0YWRhdGEgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgY2xpZW50IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ0Z1bmN0aW9uYWwgQ29udHJhY3QgVXNhZ2UnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCcjQ29uc3RydWN0b3IgdXNhZ2UnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcbiAgICAgICAgYWRkcmVzcyBzdG9yZWREYXRhO1xuICAgICAgICBjb25zdHJ1Y3RvcihhZGRyZXNzIHgpIHB1YmxpYyB7XG4gICAgICAgICAgc3RvcmVkRGF0YSA9IHg7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXRBZGRyZXNzKCkgcHVibGljIHZpZXcgcmV0dXJucyAoYWRkcmVzcykge1xuICAgICAgICAgIHJldHVybiBhZGRyZXNzKHRoaXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gZ2V0TnVtYmVyKCkgcHVibGljIHB1cmUgcmV0dXJucyAodWludCkge1xuICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiBnZXRDb21iaW5hdGlvbigpIHB1YmxpYyB2aWV3IHJldHVybnMgKHVpbnQgX251bWJlciwgYWRkcmVzcyBfYWRkcmVzcywgc3RyaW5nIG1lbW9yeSBfc2F5aW5nLCBieXRlczMyIF9yYW5kb21CeXRlcywgYWRkcmVzcyBfc3RvcmVkKSB7XG4gICAgICAgICAgX251bWJlciA9IDEwMDtcbiAgICAgICAgICBfYWRkcmVzcyA9IGFkZHJlc3ModGhpcyk7XG4gICAgICAgICAgX3NheWluZyA9IFwiaGVsbG8gbW90b1wiO1xuICAgICAgICAgIF9yYW5kb21CeXRlcyA9IGJ5dGVzMzIodWludDI1NigweERFQURCRUVGRkVFREZBQ0UpKTtcbiAgICAgICAgICBfc3RvcmVkID0gc3RvcmVkRGF0YTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgYDtcbiAgICBjb25zdCBjb250cmFjdCA9IGNvbXBpbGUoc291cmNlLCAnVGVzdCcpO1xuXG4gICAgY29uc3QgW2luc3RhbmNlMSwgaW5zdGFuY2UyXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgIGNvbnRyYWN0LmRlcGxveShjbGllbnQsICc4ODk3N0EzN0QwNUE0RkU4NkQwOUU4OEM4OEE0OUMyRkNGN0Q2RDhGJyksXG4gICAgICBjb250cmFjdC5kZXBsb3koY2xpZW50LCAnQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGMDEyMycpLFxuICAgIF0pO1xuXG4gICAgY29uc3QgYWRkcmVzczEgPSBnZXRNZXRhZGF0YShpbnN0YW5jZTEpLmFkZHJlc3M7XG4gICAgY29uc3QgYWRkcmVzczIgPSBnZXRNZXRhZGF0YShpbnN0YW5jZTIpLmFkZHJlc3M7XG5cbiAgICBjb25zdCBbcmV0MSwgcmV0Ml0gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICBpbnN0YW5jZTEuZ2V0Q29tYmluYXRpb24uYXQoYWRkcmVzczEpKCksXG4gICAgICBpbnN0YW5jZTEuZ2V0Q29tYmluYXRpb24uYXQoYWRkcmVzczIpKCksXG4gICAgXSk7XG5cbiAgICBjb25zdCByYW5kb21CeXRlcyA9IEJ1ZmZlci5mcm9tKCcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBERUFEQkVFRkZFRURGQUNFJywgJ2hleCcpO1xuICAgIGNvbnN0IGV4cGVjdGVkMSA9IFsxMDAsIGFkZHJlc3MxLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzLCAnODg5NzdBMzdEMDVBNEZFODZEMDlFODhDODhBNDlDMkZDRjdENkQ4RiddO1xuICAgIGNvbnN0IGV4cGVjdGVkMiA9IFsxMDAsIGFkZHJlc3MyLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzLCAnQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGQUJDREVGMDEyMyddO1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnJldDFdLCBleHBlY3RlZDEpO1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnJldDJdLCBleHBlY3RlZDIpO1xuICAgIC8vIENoZWNrIHdlIGFyZSBhc3NpZ25pbmcgbmFtZXMgdG8gaHlicmlkIHJlY29yZC9hcnJheSBSZXN1bHQgb2JqZWN0XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHJldDIuX3NheWluZywgJ2hlbGxvIG1vdG8nKTtcbiAgfSk7XG59KTtcbiJdfQ==

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

contract = compile_1.compile(source, 'GetSet');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -144,2 +144,2 @@ TestContract = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNldC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvZ2V0LXNldC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0MsK0JBQWdDO0FBRWhDLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRTtJQUFBLGlCQTRGdkM7SUEzRkMsSUFBTSxNQUFNLEdBQUcseWdDQXNEaEIsQ0FBQztJQUVBLElBQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNwQixJQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGtFQUFrRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pHLElBQU0sVUFBVSxHQUFHLGNBQWMsQ0FBQztJQUNsQyxJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFFdEIsSUFBSSxZQUFpQixDQUFDO0lBRXRCLE1BQU0sQ0FBQzs7Ozs7b0JBQ0MsUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO29CQUM1QixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBNUMsWUFBWSxHQUFHLFNBQTZCLENBQUM7Ozs7U0FDOUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLE1BQU0sRUFBRTs7Ozt3QkFDVCxxQkFBTSxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFBOztvQkFBcEMsU0FBb0MsQ0FBQztvQkFDdEIscUJBQU0sWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFBOztvQkFBckMsTUFBTSxHQUFHLFNBQTRCO29CQUMzQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzs7OztTQUN6QyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsTUFBTSxFQUFFOzs7O3dCQUNULHFCQUFNLFlBQVksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUE7O29CQUFwQyxTQUFvQyxDQUFDO29CQUN0QixxQkFBTSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUE7O29CQUFyQyxNQUFNLEdBQUcsU0FBNEI7b0JBQzNDLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDOzs7O1NBQ3pDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxPQUFPLEVBQUU7Ozs7d0JBQ1YscUJBQU0sWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBQTs7b0JBQXRDLFNBQXNDLENBQUM7b0JBQ3hCLHFCQUFNLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBQTs7b0JBQXRDLE1BQU0sR0FBRyxTQUE2QjtvQkFDNUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7Ozs7U0FDOUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLFFBQVEsRUFBRTs7Ozt3QkFDWCxxQkFBTSxZQUFZLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFBOztvQkFBeEMsU0FBd0MsQ0FBQztvQkFDMUIscUJBQU0sWUFBWSxDQUFDLFNBQVMsRUFBRSxFQUFBOztvQkFBdkMsTUFBTSxHQUFHLFNBQThCO29CQUM3QyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQzs7OztTQUMzQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdTZXR0aW5nIGFuZCBHZXR0aW5nIFZhbHVlczonLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHNvdXJjZSA9IGBcbnByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuXG5jb250cmFjdCBHZXRTZXQge1xuXG5cdHVpbnQgdWludGZpZWxkO1xuXHRieXRlczMyIGJ5dGVzZmllbGQ7XG5cdHN0cmluZyBzdHJpbmdmaWVsZDtcblx0Ym9vbCBib29sZmllbGQ7XG5cblx0ZnVuY3Rpb24gdGVzdEV4aXN0KCkgcHVibGljIHB1cmUgcmV0dXJucyAodWludCBvdXRwdXQpe1xuXHRcdHJldHVybiAxO1xuXHR9XG5cblx0ZnVuY3Rpb24gc2V0VWludCh1aW50IGlucHV0KSBwdWJsaWMge1xuXHRcdHVpbnRmaWVsZCA9IGlucHV0O1xuXHRcdHJldHVybjtcblx0fVxuXG5cdGZ1bmN0aW9uIGdldFVpbnQoKSBwdWJsaWMgdmlldyByZXR1cm5zICh1aW50IG91dHB1dCl7XG5cdFx0b3V0cHV0ID0gdWludGZpZWxkO1xuXHRcdHJldHVybiBvdXRwdXQ7XG5cdH1cblxuXHRmdW5jdGlvbiBzZXRCeXRlcyhieXRlczMyIGlucHV0KSBwdWJsaWMge1xuXHRcdGJ5dGVzZmllbGQgPSBpbnB1dDtcblx0XHRyZXR1cm47XG5cdH1cblxuXHRmdW5jdGlvbiBnZXRCeXRlcygpIHB1YmxpYyB2aWV3IHJldHVybnMgKGJ5dGVzMzIgb3V0cHV0KXtcblx0XHRvdXRwdXQgPSBieXRlc2ZpZWxkO1xuXHRcdHJldHVybiBvdXRwdXQ7XG5cdH1cblxuXHRmdW5jdGlvbiBzZXRTdHJpbmcoc3RyaW5nIG1lbW9yeSBpbnB1dCkgcHVibGljIHtcblx0XHRzdHJpbmdmaWVsZCA9IGlucHV0O1xuXHRcdHJldHVybjtcblx0fVxuXG5cdGZ1bmN0aW9uIGdldFN0cmluZygpIHB1YmxpYyB2aWV3IHJldHVybnMgKHN0cmluZyBtZW1vcnkgb3V0cHV0KXtcblx0XHRvdXRwdXQgPSBzdHJpbmdmaWVsZDtcblx0XHRyZXR1cm4gb3V0cHV0O1xuXHR9XG5cblx0ZnVuY3Rpb24gc2V0Qm9vbChib29sIGlucHV0KSBwdWJsaWMge1xuXHRcdGJvb2xmaWVsZCA9IGlucHV0O1xuXHRcdHJldHVybjtcblx0fVxuXG5cdGZ1bmN0aW9uIGdldEJvb2woKSBwdWJsaWMgdmlldyByZXR1cm5zIChib29sIG91dHB1dCl7XG5cdFx0b3V0cHV0ID0gYm9vbGZpZWxkO1xuXHRcdHJldHVybiBvdXRwdXQ7XG5cdH1cbn1cbmA7XG5cbiAgY29uc3QgdGVzdFVpbnQgPSA0MjtcbiAgY29uc3QgdGVzdEJ5dGVzID0gQnVmZmVyLmZyb20oJ0RFQURCRUVGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLCAnaGV4Jyk7XG4gIGNvbnN0IHRlc3RTdHJpbmcgPSAnSGVsbG8gV29ybGQhJztcbiAgY29uc3QgdGVzdEJvb2wgPSB0cnVlO1xuXG4gIGxldCBUZXN0Q29udHJhY3Q6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdHZXRTZXQnKTtcbiAgICBUZXN0Q29udHJhY3QgPSBhd2FpdCBjb250cmFjdC5kZXBsb3koYnVycm93KTtcbiAgfSk7XG5cbiAgaXQoJ1VpbnQnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgVGVzdENvbnRyYWN0LnNldFVpbnQodGVzdFVpbnQpO1xuICAgIGNvbnN0IG91dHB1dCA9IGF3YWl0IFRlc3RDb250cmFjdC5nZXRVaW50KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG91dHB1dFswXSwgdGVzdFVpbnQpO1xuICB9KTtcblxuICBpdCgnQm9vbCcsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBUZXN0Q29udHJhY3Quc2V0Qm9vbCh0ZXN0Qm9vbCk7XG4gICAgY29uc3Qgb3V0cHV0ID0gYXdhaXQgVGVzdENvbnRyYWN0LmdldEJvb2woKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob3V0cHV0WzBdLCB0ZXN0Qm9vbCk7XG4gIH0pO1xuXG4gIGl0KCdCeXRlcycsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBUZXN0Q29udHJhY3Quc2V0Qnl0ZXModGVzdEJ5dGVzKTtcbiAgICBjb25zdCBvdXRwdXQgPSBhd2FpdCBUZXN0Q29udHJhY3QuZ2V0Qnl0ZXMoKTtcbiAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKG91dHB1dFswXSwgdGVzdEJ5dGVzKTtcbiAgfSk7XG5cbiAgaXQoJ1N0cmluZycsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBUZXN0Q29udHJhY3Quc2V0U3RyaW5nKHRlc3RTdHJpbmcpO1xuICAgIGNvbnN0IG91dHB1dCA9IGF3YWl0IFRlc3RDb250cmFjdC5nZXRTdHJpbmcoKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob3V0cHV0WzBdLCB0ZXN0U3RyaW5nKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNldC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvZ2V0LXNldC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0MsK0JBQWdDO0FBRWhDLFFBQVEsQ0FBQyw2QkFBNkIsRUFBRTtJQUFBLGlCQTRGdkM7SUEzRkMsSUFBTSxNQUFNLEdBQUcseWdDQXNEaEIsQ0FBQztJQUVBLElBQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUNwQixJQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGtFQUFrRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pHLElBQU0sVUFBVSxHQUFHLGNBQWMsQ0FBQztJQUNsQyxJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFFdEIsSUFBSSxZQUFpQixDQUFDO0lBRXRCLE1BQU0sQ0FBQzs7Ozs7b0JBQ0MsUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO29CQUM1QixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBNUMsWUFBWSxHQUFHLFNBQTZCLENBQUM7Ozs7U0FDOUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLE1BQU0sRUFBRTs7Ozt3QkFDVCxxQkFBTSxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFBOztvQkFBcEMsU0FBb0MsQ0FBQztvQkFDdEIscUJBQU0sWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFBOztvQkFBckMsTUFBTSxHQUFHLFNBQTRCO29CQUMzQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQzs7OztTQUN6QyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsTUFBTSxFQUFFOzs7O3dCQUNULHFCQUFNLFlBQVksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUE7O29CQUFwQyxTQUFvQyxDQUFDO29CQUN0QixxQkFBTSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUE7O29CQUFyQyxNQUFNLEdBQUcsU0FBNEI7b0JBQzNDLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDOzs7O1NBQ3pDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxPQUFPLEVBQUU7Ozs7d0JBQ1YscUJBQU0sWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBQTs7b0JBQXRDLFNBQXNDLENBQUM7b0JBQ3hCLHFCQUFNLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBQTs7b0JBQXRDLE1BQU0sR0FBRyxTQUE2QjtvQkFDNUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7Ozs7U0FDOUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLFFBQVEsRUFBRTs7Ozt3QkFDWCxxQkFBTSxZQUFZLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFBOztvQkFBeEMsU0FBd0MsQ0FBQztvQkFDMUIscUJBQU0sWUFBWSxDQUFDLFNBQVMsRUFBRSxFQUFBOztvQkFBdkMsTUFBTSxHQUFHLFNBQThCO29CQUM3QyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQzs7OztTQUMzQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdTZXR0aW5nIGFuZCBHZXR0aW5nIFZhbHVlczonLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IHNvdXJjZSA9IGBcbnByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuXG5jb250cmFjdCBHZXRTZXQge1xuXG5cdHVpbnQgdWludGZpZWxkO1xuXHRieXRlczMyIGJ5dGVzZmllbGQ7XG5cdHN0cmluZyBzdHJpbmdmaWVsZDtcblx0Ym9vbCBib29sZmllbGQ7XG5cblx0ZnVuY3Rpb24gdGVzdEV4aXN0KCkgcHVibGljIHB1cmUgcmV0dXJucyAodWludCBvdXRwdXQpe1xuXHRcdHJldHVybiAxO1xuXHR9XG5cblx0ZnVuY3Rpb24gc2V0VWludCh1aW50IGlucHV0KSBwdWJsaWMge1xuXHRcdHVpbnRmaWVsZCA9IGlucHV0O1xuXHRcdHJldHVybjtcblx0fVxuXG5cdGZ1bmN0aW9uIGdldFVpbnQoKSBwdWJsaWMgdmlldyByZXR1cm5zICh1aW50IG91dHB1dCl7XG5cdFx0b3V0cHV0ID0gdWludGZpZWxkO1xuXHRcdHJldHVybiBvdXRwdXQ7XG5cdH1cblxuXHRmdW5jdGlvbiBzZXRCeXRlcyhieXRlczMyIGlucHV0KSBwdWJsaWMge1xuXHRcdGJ5dGVzZmllbGQgPSBpbnB1dDtcblx0XHRyZXR1cm47XG5cdH1cblxuXHRmdW5jdGlvbiBnZXRCeXRlcygpIHB1YmxpYyB2aWV3IHJldHVybnMgKGJ5dGVzMzIgb3V0cHV0KXtcblx0XHRvdXRwdXQgPSBieXRlc2ZpZWxkO1xuXHRcdHJldHVybiBvdXRwdXQ7XG5cdH1cblxuXHRmdW5jdGlvbiBzZXRTdHJpbmcoc3RyaW5nIG1lbW9yeSBpbnB1dCkgcHVibGljIHtcblx0XHRzdHJpbmdmaWVsZCA9IGlucHV0O1xuXHRcdHJldHVybjtcblx0fVxuXG5cdGZ1bmN0aW9uIGdldFN0cmluZygpIHB1YmxpYyB2aWV3IHJldHVybnMgKHN0cmluZyBtZW1vcnkgb3V0cHV0KXtcblx0XHRvdXRwdXQgPSBzdHJpbmdmaWVsZDtcblx0XHRyZXR1cm4gb3V0cHV0O1xuXHR9XG5cblx0ZnVuY3Rpb24gc2V0Qm9vbChib29sIGlucHV0KSBwdWJsaWMge1xuXHRcdGJvb2xmaWVsZCA9IGlucHV0O1xuXHRcdHJldHVybjtcblx0fVxuXG5cdGZ1bmN0aW9uIGdldEJvb2woKSBwdWJsaWMgdmlldyByZXR1cm5zIChib29sIG91dHB1dCl7XG5cdFx0b3V0cHV0ID0gYm9vbGZpZWxkO1xuXHRcdHJldHVybiBvdXRwdXQ7XG5cdH1cbn1cbmA7XG5cbiAgY29uc3QgdGVzdFVpbnQgPSA0MjtcbiAgY29uc3QgdGVzdEJ5dGVzID0gQnVmZmVyLmZyb20oJ0RFQURCRUVGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLCAnaGV4Jyk7XG4gIGNvbnN0IHRlc3RTdHJpbmcgPSAnSGVsbG8gV29ybGQhJztcbiAgY29uc3QgdGVzdEJvb2wgPSB0cnVlO1xuXG4gIGxldCBUZXN0Q29udHJhY3Q6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdHZXRTZXQnKTtcbiAgICBUZXN0Q29udHJhY3QgPSBhd2FpdCBjb250cmFjdC5kZXBsb3koY2xpZW50KTtcbiAgfSk7XG5cbiAgaXQoJ1VpbnQnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgVGVzdENvbnRyYWN0LnNldFVpbnQodGVzdFVpbnQpO1xuICAgIGNvbnN0IG91dHB1dCA9IGF3YWl0IFRlc3RDb250cmFjdC5nZXRVaW50KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG91dHB1dFswXSwgdGVzdFVpbnQpO1xuICB9KTtcblxuICBpdCgnQm9vbCcsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBUZXN0Q29udHJhY3Quc2V0Qm9vbCh0ZXN0Qm9vbCk7XG4gICAgY29uc3Qgb3V0cHV0ID0gYXdhaXQgVGVzdENvbnRyYWN0LmdldEJvb2woKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob3V0cHV0WzBdLCB0ZXN0Qm9vbCk7XG4gIH0pO1xuXG4gIGl0KCdCeXRlcycsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBUZXN0Q29udHJhY3Quc2V0Qnl0ZXModGVzdEJ5dGVzKTtcbiAgICBjb25zdCBvdXRwdXQgPSBhd2FpdCBUZXN0Q29udHJhY3QuZ2V0Qnl0ZXMoKTtcbiAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKG91dHB1dFswXSwgdGVzdEJ5dGVzKTtcbiAgfSk7XG5cbiAgaXQoJ1N0cmluZycsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBUZXN0Q29udHJhY3Quc2V0U3RyaW5nKHRlc3RTdHJpbmcpO1xuICAgIGNvbnN0IG91dHB1dCA9IGF3YWl0IFRlc3RDb250cmFjdC5nZXRTdHJpbmcoKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob3V0cHV0WzBdLCB0ZXN0U3RyaW5nKTtcbiAgfSk7XG59KTtcbiJdfQ==

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

source = "\n pragma solidity >=0.0.0;\n contract Test {\n\n function getAddress() public view returns (address) {\n return address(this);\n }\n\n function getNumber() public pure returns (uint) {\n return 100;\n }\n\n function getCombination() public view returns (uint _number, address _address, string memory _saying, bytes32 _randomBytes) {\n _number = 100;\n _address = address(this);\n _saying = \"hello moto\";\n _randomBytes = bytes32(uint256(0xDEADBEEFFEEDFACE));\n }\n\n }\n ";
return [4 /*yield*/, compile_1.compile(source, 'Test').deployWith(test_1.burrow, {
return [4 /*yield*/, compile_1.compile(source, 'Test').deployWith(test_1.client, {
handler: function (_a) {

@@ -109,2 +109,2 @@ var result = _a.result;

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlci1vdmVyd3JpdGluZy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvaGFuZGxlci1vdmVyd3JpdGluZy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBRWpDLGdEQUErQztBQUMvQyxrREFBb0Q7QUFDcEQsc0NBQWtEO0FBQ2xELCtCQUFnQztBQUVoQyxRQUFRLENBQUMsMENBQTBDLEVBQUU7SUFDbkQsNEZBQTRGO0lBRHpDLGlCQWdEcEQ7SUE3Q0MsRUFBRSxDQUFDLDhDQUE4QyxFQUFFOzs7OztvQkFDM0MsTUFBTSxHQUFHLHNtQkFvQmQsQ0FBQztvQkFFb0IscUJBQU0saUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsVUFBVSxDQUFDLGFBQU0sRUFBRTs0QkFDckUsT0FBTyxFQUFFLFVBQVUsRUFBc0I7b0NBQXBCLE1BQU0sWUFBQTtnQ0FDekIsT0FBTztvQ0FDTCxNQUFNLEVBQUUsOEJBQW9CLENBQUMsTUFBTSxDQUFDO29DQUNwQyxHQUFHLG9CQUFNLE1BQU0sQ0FBQztpQ0FDakIsQ0FBQzs0QkFDSixDQUFDO3lCQUNGLENBQUMsRUFBQTs7b0JBUEksUUFBUSxHQUFRLFNBT3BCO29CQUNJLE9BQU8sR0FBRyxzQkFBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFDekIscUJBQU0sUUFBUSxDQUFDLGNBQWMsRUFBRSxFQUFBOztvQkFBOUMsWUFBWSxHQUFHLFNBQStCO29CQUM5QyxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxrRUFBa0UsRUFBRSxLQUFLLENBQUMsQ0FBQztvQkFDckcsUUFBUSxHQUFHO3dCQUNmLE1BQU0sRUFBRTs0QkFDTixPQUFPLEVBQUUsR0FBRzs0QkFDWixRQUFRLEVBQUUsT0FBTzs0QkFDakIsT0FBTyxFQUFFLFlBQVk7NEJBQ3JCLFlBQVksRUFBRSxXQUFXO3lCQUMxQjt3QkFDRCxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUM7cUJBQy9DLENBQUM7b0JBQ0YsTUFBTSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7Ozs7U0FDaEQsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IENhbGxSZXN1bHQgfSBmcm9tICcuLi9jb250cmFjdHMvY2FsbCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgZ2V0TWV0YWRhdGEgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgd2l0aG91dEFycmF5RWxlbWVudHMgfSBmcm9tICcuLi9jb252ZXJ0JztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdUZXN0aW5nIFBlci1jb250cmFjdCBoYW5kbGVyIG92ZXJ3cml0aW5nJywgZnVuY3Rpb24gKCkge1xuICAvLyB7aGFuZGxlcnM6IHtjYWxsOiBmdW5jdGlvbiAocmVzdWx0KSB7IHJldHVybiB7c3VwZXI6IHJlc3VsdC52YWx1ZXMsIG1hbjogcmVzdWx0LnJhd30gfX19KVxuXG4gIGl0KCcjMTcgVGVzdGluZyBQZXItY29udHJhY3QgaGFuZGxlciBvdmVyd3JpdGluZycsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3Qge1xuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0QWRkcmVzcygpIHB1YmxpYyB2aWV3IHJldHVybnMgKGFkZHJlc3MpIHtcbiAgICAgICAgICAgIHJldHVybiBhZGRyZXNzKHRoaXMpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldE51bWJlcigpIHB1YmxpYyBwdXJlIHJldHVybnMgKHVpbnQpIHtcbiAgICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0Q29tYmluYXRpb24oKSBwdWJsaWMgdmlldyByZXR1cm5zICh1aW50IF9udW1iZXIsIGFkZHJlc3MgX2FkZHJlc3MsIHN0cmluZyBtZW1vcnkgX3NheWluZywgYnl0ZXMzMiBfcmFuZG9tQnl0ZXMpIHtcbiAgICAgICAgICAgIF9udW1iZXIgPSAxMDA7XG4gICAgICAgICAgICBfYWRkcmVzcyA9IGFkZHJlc3ModGhpcyk7XG4gICAgICAgICAgICBfc2F5aW5nID0gXCJoZWxsbyBtb3RvXCI7XG4gICAgICAgICAgICBfcmFuZG9tQnl0ZXMgPSBieXRlczMyKHVpbnQyNTYoMHhERUFEQkVFRkZFRURGQUNFKSk7XG4gICAgICAgICAgfVxuXG4gICAgICB9XG4gICAgYDtcblxuICAgIGNvbnN0IGluc3RhbmNlOiBhbnkgPSBhd2FpdCBjb21waWxlKHNvdXJjZSwgJ1Rlc3QnKS5kZXBsb3lXaXRoKGJ1cnJvdywge1xuICAgICAgaGFuZGxlcjogZnVuY3Rpb24gKHsgcmVzdWx0IH06IENhbGxSZXN1bHQpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB2YWx1ZXM6IHdpdGhvdXRBcnJheUVsZW1lbnRzKHJlc3VsdCksXG4gICAgICAgICAgcmF3OiBbLi4ucmVzdWx0XSxcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgY29uc3QgYWRkcmVzcyA9IGdldE1ldGFkYXRhKGluc3RhbmNlKS5hZGRyZXNzO1xuICAgIGNvbnN0IHJldHVybk9iamVjdCA9IGF3YWl0IGluc3RhbmNlLmdldENvbWJpbmF0aW9uKCk7XG4gICAgY29uc3QgcmFuZG9tQnl0ZXMgPSBCdWZmZXIuZnJvbSgnMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwREVBREJFRUZGRUVERkFDRScsICdoZXgnKTtcbiAgICBjb25zdCBleHBlY3RlZCA9IHtcbiAgICAgIHZhbHVlczoge1xuICAgICAgICBfbnVtYmVyOiAxMDAsXG4gICAgICAgIF9hZGRyZXNzOiBhZGRyZXNzLFxuICAgICAgICBfc2F5aW5nOiAnaGVsbG8gbW90bycsXG4gICAgICAgIF9yYW5kb21CeXRlczogcmFuZG9tQnl0ZXMsXG4gICAgICB9LFxuICAgICAgcmF3OiBbMTAwLCBhZGRyZXNzLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzXSxcbiAgICB9O1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwocmV0dXJuT2JqZWN0LCBleHBlY3RlZCk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlci1vdmVyd3JpdGluZy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvaGFuZGxlci1vdmVyd3JpdGluZy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBRWpDLGdEQUErQztBQUMvQyxrREFBb0Q7QUFDcEQsc0NBQWtEO0FBQ2xELCtCQUFnQztBQUVoQyxRQUFRLENBQUMsMENBQTBDLEVBQUU7SUFDbkQsNEZBQTRGO0lBRHpDLGlCQWdEcEQ7SUE3Q0MsRUFBRSxDQUFDLDhDQUE4QyxFQUFFOzs7OztvQkFDM0MsTUFBTSxHQUFHLHNtQkFvQmQsQ0FBQztvQkFFb0IscUJBQU0saUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsVUFBVSxDQUFDLGFBQU0sRUFBRTs0QkFDckUsT0FBTyxFQUFFLFVBQVUsRUFBc0I7b0NBQXBCLE1BQU0sWUFBQTtnQ0FDekIsT0FBTztvQ0FDTCxNQUFNLEVBQUUsOEJBQW9CLENBQUMsTUFBTSxDQUFDO29DQUNwQyxHQUFHLG9CQUFNLE1BQU0sQ0FBQztpQ0FDakIsQ0FBQzs0QkFDSixDQUFDO3lCQUNGLENBQUMsRUFBQTs7b0JBUEksUUFBUSxHQUFRLFNBT3BCO29CQUNJLE9BQU8sR0FBRyxzQkFBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFDekIscUJBQU0sUUFBUSxDQUFDLGNBQWMsRUFBRSxFQUFBOztvQkFBOUMsWUFBWSxHQUFHLFNBQStCO29CQUM5QyxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxrRUFBa0UsRUFBRSxLQUFLLENBQUMsQ0FBQztvQkFDckcsUUFBUSxHQUFHO3dCQUNmLE1BQU0sRUFBRTs0QkFDTixPQUFPLEVBQUUsR0FBRzs0QkFDWixRQUFRLEVBQUUsT0FBTzs0QkFDakIsT0FBTyxFQUFFLFlBQVk7NEJBQ3JCLFlBQVksRUFBRSxXQUFXO3lCQUMxQjt3QkFDRCxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUM7cUJBQy9DLENBQUM7b0JBQ0YsTUFBTSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7Ozs7U0FDaEQsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IENhbGxSZXN1bHQgfSBmcm9tICcuLi9jb250cmFjdHMvY2FsbCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgZ2V0TWV0YWRhdGEgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgd2l0aG91dEFycmF5RWxlbWVudHMgfSBmcm9tICcuLi9jb252ZXJ0JztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdUZXN0aW5nIFBlci1jb250cmFjdCBoYW5kbGVyIG92ZXJ3cml0aW5nJywgZnVuY3Rpb24gKCkge1xuICAvLyB7aGFuZGxlcnM6IHtjYWxsOiBmdW5jdGlvbiAocmVzdWx0KSB7IHJldHVybiB7c3VwZXI6IHJlc3VsdC52YWx1ZXMsIG1hbjogcmVzdWx0LnJhd30gfX19KVxuXG4gIGl0KCcjMTcgVGVzdGluZyBQZXItY29udHJhY3QgaGFuZGxlciBvdmVyd3JpdGluZycsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFRlc3Qge1xuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0QWRkcmVzcygpIHB1YmxpYyB2aWV3IHJldHVybnMgKGFkZHJlc3MpIHtcbiAgICAgICAgICAgIHJldHVybiBhZGRyZXNzKHRoaXMpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldE51bWJlcigpIHB1YmxpYyBwdXJlIHJldHVybnMgKHVpbnQpIHtcbiAgICAgICAgICAgIHJldHVybiAxMDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZnVuY3Rpb24gZ2V0Q29tYmluYXRpb24oKSBwdWJsaWMgdmlldyByZXR1cm5zICh1aW50IF9udW1iZXIsIGFkZHJlc3MgX2FkZHJlc3MsIHN0cmluZyBtZW1vcnkgX3NheWluZywgYnl0ZXMzMiBfcmFuZG9tQnl0ZXMpIHtcbiAgICAgICAgICAgIF9udW1iZXIgPSAxMDA7XG4gICAgICAgICAgICBfYWRkcmVzcyA9IGFkZHJlc3ModGhpcyk7XG4gICAgICAgICAgICBfc2F5aW5nID0gXCJoZWxsbyBtb3RvXCI7XG4gICAgICAgICAgICBfcmFuZG9tQnl0ZXMgPSBieXRlczMyKHVpbnQyNTYoMHhERUFEQkVFRkZFRURGQUNFKSk7XG4gICAgICAgICAgfVxuXG4gICAgICB9XG4gICAgYDtcblxuICAgIGNvbnN0IGluc3RhbmNlOiBhbnkgPSBhd2FpdCBjb21waWxlKHNvdXJjZSwgJ1Rlc3QnKS5kZXBsb3lXaXRoKGNsaWVudCwge1xuICAgICAgaGFuZGxlcjogZnVuY3Rpb24gKHsgcmVzdWx0IH06IENhbGxSZXN1bHQpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB2YWx1ZXM6IHdpdGhvdXRBcnJheUVsZW1lbnRzKHJlc3VsdCksXG4gICAgICAgICAgcmF3OiBbLi4ucmVzdWx0XSxcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgY29uc3QgYWRkcmVzcyA9IGdldE1ldGFkYXRhKGluc3RhbmNlKS5hZGRyZXNzO1xuICAgIGNvbnN0IHJldHVybk9iamVjdCA9IGF3YWl0IGluc3RhbmNlLmdldENvbWJpbmF0aW9uKCk7XG4gICAgY29uc3QgcmFuZG9tQnl0ZXMgPSBCdWZmZXIuZnJvbSgnMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwREVBREJFRUZGRUVERkFDRScsICdoZXgnKTtcbiAgICBjb25zdCBleHBlY3RlZCA9IHtcbiAgICAgIHZhbHVlczoge1xuICAgICAgICBfbnVtYmVyOiAxMDAsXG4gICAgICAgIF9hZGRyZXNzOiBhZGRyZXNzLFxuICAgICAgICBfc2F5aW5nOiAnaGVsbG8gbW90bycsXG4gICAgICAgIF9yYW5kb21CeXRlczogcmFuZG9tQnl0ZXMsXG4gICAgICB9LFxuICAgICAgcmF3OiBbMTAwLCBhZGRyZXNzLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzXSxcbiAgICB9O1xuICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwocmV0dXJuT2JqZWN0LCBleHBlY3RlZCk7XG4gIH0pO1xufSk7XG4iXX0=

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

contract = compile_1.compile(source, 'main');
return [4 /*yield*/, contract.deployWith(test_1.burrow, {
return [4 /*yield*/, contract.deployWith(test_1.client, {
middleware: function (callTx) {

@@ -106,2 +106,2 @@ // Normal gas for deploy (when address === '')

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mbG9vcC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvaW5mbG9vcC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0MsK0JBQWdDO0FBRWhDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRTtJQUFBLGlCQWdENUI7SUEvQ0MsSUFBSSxRQUFhLENBQUM7SUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV0QixNQUFNLENBQUM7Ozs7O29CQUNDLE1BQU0sR0FBRyw2ZEFrQmQsQ0FBQztvQkFFSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7b0JBQzlCLHFCQUFNLFFBQVEsQ0FBQyxVQUFVLENBQUMsYUFBTSxFQUFFOzRCQUMzQyxVQUFVLEVBQUUsVUFBQyxNQUFNO2dDQUNqQiw4Q0FBOEM7Z0NBQzlDLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFO29DQUN2QixzQkFBc0I7b0NBQ3RCLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7aUNBQ3hCO2dDQUNELE9BQU8sTUFBTSxDQUFDOzRCQUNoQixDQUFDO3lCQUNGLENBQUMsRUFBQTs7b0JBVEYsUUFBUSxHQUFHLFNBU1QsQ0FBQzs7OztTQUNKLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRTs7O3dCQUMxQyxxQkFBTSxRQUFRO3lCQUNYLElBQUksRUFBRTt5QkFDTixJQUFJLENBQUMsVUFBQyxHQUFXO3dCQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7b0JBQ2hELENBQUMsQ0FBQyxDQUNELE9BQUssQ0FBQSxDQUFDLFVBQUMsR0FBVTt3QkFDaEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLDJCQUEyQixDQUFDLENBQUM7b0JBQ3pELENBQUMsQ0FBQyxFQUFBOztvQkFQSixTQU9JLENBQUM7Ozs7U0FDTixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdSZWFsbHkgTG9uZyBMb29wJywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcbiAgdGhpcy50aW1lb3V0KDEwMDAwMDApO1xuXG4gIGJlZm9yZShhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBtYWluIHtcbiAgICAgICAgZnVuY3Rpb24gdGVzdCgpIHB1YmxpYyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgICBjIHN1YiA9IG5ldyBjKCk7XG4gICAgICAgICAgICByZXR1cm4gc3ViLmdldFN0cmluZygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIHN0cmluZyBzID0gXCJzZWNyZXRcIjtcbiAgICAgICAgdWludCBuID0gMDtcbiAgICAgICAgZnVuY3Rpb24gZ2V0U3RyaW5nKCkgcHVibGljIHJldHVybnMgKHN0cmluZyBtZW1vcnkpe1xuICAgICAgICAgIGZvciAodWludCBpID0gMDsgaSA8IDEwMDAwMDAwMDAwMDAwOyBpKyspIHtcbiAgICAgICAgICAgIG4gKz0gMTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuXG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ21haW4nKTtcbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveVdpdGgoYnVycm93LCB7XG4gICAgICBtaWRkbGV3YXJlOiAoY2FsbFR4KSA9PiB7XG4gICAgICAgIC8vIE5vcm1hbCBnYXMgZm9yIGRlcGxveSAod2hlbiBhZGRyZXNzID09PSAnJylcbiAgICAgICAgaWYgKGNhbGxUeC5nZXRBZGRyZXNzKCkpIHtcbiAgICAgICAgICAvLyBIYXJkbHkgYW55IGZvciBjYWxsXG4gICAgICAgICAgY2FsbFR4LnNldEdhc2xpbWl0KDExKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2FsbFR4O1xuICAgICAgfSxcbiAgICB9KTtcbiAgfSk7XG5cbiAgaXQoJ0l0IGNhdGNoZXMgYSByZXZlcnQgd2hlbiBnYXMgcnVucyBvdXQnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgaW5zdGFuY2VcbiAgICAgIC50ZXN0KClcbiAgICAgIC50aGVuKChzdHI6IHN0cmluZykgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RpZCBub3QgY2F0Y2ggcmV2ZXJ0IGVycm9yJyk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnI6IEVycm9yKSA9PiB7XG4gICAgICAgIGFzc2VydC5tYXRjaChlcnIubWVzc2FnZSwgL0Vycm9yIDU6IGluc3VmZmljaWVudCBnYXMvKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mbG9vcC50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvaW5mbG9vcC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0MsK0JBQWdDO0FBRWhDLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRTtJQUFBLGlCQWdENUI7SUEvQ0MsSUFBSSxRQUFhLENBQUM7SUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV0QixNQUFNLENBQUM7Ozs7O29CQUNDLE1BQU0sR0FBRyw2ZEFrQmQsQ0FBQztvQkFFSSxRQUFRLEdBQUcsaUJBQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7b0JBQzlCLHFCQUFNLFFBQVEsQ0FBQyxVQUFVLENBQUMsYUFBTSxFQUFFOzRCQUMzQyxVQUFVLEVBQUUsVUFBQyxNQUFNO2dDQUNqQiw4Q0FBOEM7Z0NBQzlDLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFO29DQUN2QixzQkFBc0I7b0NBQ3RCLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7aUNBQ3hCO2dDQUNELE9BQU8sTUFBTSxDQUFDOzRCQUNoQixDQUFDO3lCQUNGLENBQUMsRUFBQTs7b0JBVEYsUUFBUSxHQUFHLFNBU1QsQ0FBQzs7OztTQUNKLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRTs7O3dCQUMxQyxxQkFBTSxRQUFRO3lCQUNYLElBQUksRUFBRTt5QkFDTixJQUFJLENBQUMsVUFBQyxHQUFXO3dCQUNoQixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7b0JBQ2hELENBQUMsQ0FBQyxDQUNELE9BQUssQ0FBQSxDQUFDLFVBQUMsR0FBVTt3QkFDaEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLDJCQUEyQixDQUFDLENBQUM7b0JBQ3pELENBQUMsQ0FBQyxFQUFBOztvQkFQSixTQU9JLENBQUM7Ozs7U0FDTixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdSZWFsbHkgTG9uZyBMb29wJywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcbiAgdGhpcy50aW1lb3V0KDEwMDAwMDApO1xuXG4gIGJlZm9yZShhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBtYWluIHtcbiAgICAgICAgZnVuY3Rpb24gdGVzdCgpIHB1YmxpYyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KSB7XG4gICAgICAgICAgICBjIHN1YiA9IG5ldyBjKCk7XG4gICAgICAgICAgICByZXR1cm4gc3ViLmdldFN0cmluZygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIHN0cmluZyBzID0gXCJzZWNyZXRcIjtcbiAgICAgICAgdWludCBuID0gMDtcbiAgICAgICAgZnVuY3Rpb24gZ2V0U3RyaW5nKCkgcHVibGljIHJldHVybnMgKHN0cmluZyBtZW1vcnkpe1xuICAgICAgICAgIGZvciAodWludCBpID0gMDsgaSA8IDEwMDAwMDAwMDAwMDAwOyBpKyspIHtcbiAgICAgICAgICAgIG4gKz0gMTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuXG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ21haW4nKTtcbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveVdpdGgoY2xpZW50LCB7XG4gICAgICBtaWRkbGV3YXJlOiAoY2FsbFR4KSA9PiB7XG4gICAgICAgIC8vIE5vcm1hbCBnYXMgZm9yIGRlcGxveSAod2hlbiBhZGRyZXNzID09PSAnJylcbiAgICAgICAgaWYgKGNhbGxUeC5nZXRBZGRyZXNzKCkpIHtcbiAgICAgICAgICAvLyBIYXJkbHkgYW55IGZvciBjYWxsXG4gICAgICAgICAgY2FsbFR4LnNldEdhc2xpbWl0KDExKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2FsbFR4O1xuICAgICAgfSxcbiAgICB9KTtcbiAgfSk7XG5cbiAgaXQoJ0l0IGNhdGNoZXMgYSByZXZlcnQgd2hlbiBnYXMgcnVucyBvdXQnLCBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgaW5zdGFuY2VcbiAgICAgIC50ZXN0KClcbiAgICAgIC50aGVuKChzdHI6IHN0cmluZykgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RpZCBub3QgY2F0Y2ggcmV2ZXJ0IGVycm9yJyk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnI6IEVycm9yKSA9PiB7XG4gICAgICAgIGFzc2VydC5tYXRjaChlcnIubWVzc2FnZSwgL0Vycm9yIDU6IGluc3VmZmljaWVudCBnYXMvKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19

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

contract = compile_1.compile(source, 'c');
return [4 /*yield*/, contract.deploy(test_1.burrow)];
return [4 /*yield*/, contract.deploy(test_1.client)];
case 1:

@@ -104,2 +104,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtb3J5LWJ5dGVzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tZW1vcnktYnl0ZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsY0FBYyxFQUFFO0lBQUEsaUJBeUN4QjtJQXhDQyxJQUFJLFFBQWEsQ0FBQztJQUVsQixNQUFNLENBQUM7Ozs7O29CQUNDLE1BQU0sR0FBRyxtakJBbUJkLENBQUM7b0JBRUksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO29CQUMzQixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBeEMsUUFBUSxHQUFHLFNBQTZCLENBQUM7Ozs7U0FDMUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDZDQUE2QyxFQUFFOzs7O3dCQUNoQyxxQkFBTSxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUE7O29CQUFsQyxLQUFLLEdBQUksQ0FBQSxTQUF5QixDQUFBLEdBQTdCO29CQUNaLE1BQU0sQ0FBQyxlQUFlLENBQ3BCLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBQyxDQUFTLElBQUssT0FBQSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUEvQixDQUErQixDQUFDLEVBQ3pELENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQzdELENBQUM7Ozs7U0FDSCxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsbURBQW1ELEVBQUU7Ozs7d0JBQ3ZDLHFCQUFNLFFBQVEsQ0FBQyxNQUFNLEVBQUUsRUFBQTs7b0JBQWhDLE1BQU0sR0FBRyxTQUF1QjtvQkFDdEMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Ozs7U0FDbkMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnbWVtb3J5IGJ5dGVzJywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIGZ1bmN0aW9uIGdldEJ5dGVzKCkgcHVibGljIHB1cmUgcmV0dXJucyAoYnl0ZXMxWzEwXSBtZW1vcnkpe1xuICAgICAgICAgICAgYnl0ZXMxWzEwXSBtZW1vcnkgYjtcbiAgICAgICAgICAgIHN0cmluZyBtZW1vcnkgcyA9IFwiaGVsbG9cIjtcbiAgICAgICAgICAgIGJ5dGVzIG1lbW9yeSBzYiA9IGJ5dGVzKHMpO1xuXG4gICAgICAgICAgICB1aW50IGsgPSAwO1xuICAgICAgICAgICAgZm9yICh1aW50IGkgPSAwOyBpIDwgc2IubGVuZ3RoOyBpKyspIGJbaysrXSA9IHNiW2ldO1xuICAgICAgICAgICAgYls5XSA9IDB4ZmY7XG4gICAgICAgICAgICByZXR1cm4gYjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGRlZXBlcigpIHB1YmxpYyBwdXJlIHJldHVybnMgKGJ5dGVzMVsxMl1bMTAwXSBtZW1vcnkgcywgdWludCBjb3VudCkge1xuICAgICAgICAgIGNvdW50ID0gNDI7XG4gICAgICAgICAgcmV0dXJuIChzLCBjb3VudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuXG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ2MnKTtcbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShidXJyb3cpO1xuICB9KTtcblxuICBpdCgnZ2V0cyB0aGUgc3RhdGljIGJ5dGUgYXJyYXkgZGVjb2RlZCBwcm9wZXJseScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBbYnl0ZXNdID0gYXdhaXQgaW5zdGFuY2UuZ2V0Qnl0ZXMoKTtcbiAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKFxuICAgICAgYnl0ZXMubWFwKChiOiBCdWZmZXIpID0+IGIudG9TdHJpbmcoJ2hleCcpLnRvVXBwZXJDYXNlKCkpLFxuICAgICAgWyc2OCcsICc2NScsICc2QycsICc2QycsICc2RicsICcwMCcsICcwMCcsICcwMCcsICcwMCcsICdGRiddLFxuICAgICk7XG4gIH0pO1xuXG4gIGl0KCdyZXR1cm5zIG11bHRpcGxlIHZhbHVlcyBjb3JyZWN0bHkgZnJvbSBhIGZ1bmN0aW9uJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHZhbHVlcyA9IGF3YWl0IGluc3RhbmNlLmRlZXBlcigpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWx1ZXNbMV0sIDQyKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtb3J5LWJ5dGVzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9tZW1vcnktYnl0ZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsY0FBYyxFQUFFO0lBQUEsaUJBeUN4QjtJQXhDQyxJQUFJLFFBQWEsQ0FBQztJQUVsQixNQUFNLENBQUM7Ozs7O29CQUNDLE1BQU0sR0FBRyxtakJBbUJkLENBQUM7b0JBRUksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO29CQUMzQixxQkFBTSxRQUFRLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBeEMsUUFBUSxHQUFHLFNBQTZCLENBQUM7Ozs7U0FDMUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDZDQUE2QyxFQUFFOzs7O3dCQUNoQyxxQkFBTSxRQUFRLENBQUMsUUFBUSxFQUFFLEVBQUE7O29CQUFsQyxLQUFLLEdBQUksQ0FBQSxTQUF5QixDQUFBLEdBQTdCO29CQUNaLE1BQU0sQ0FBQyxlQUFlLENBQ3BCLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBQyxDQUFTLElBQUssT0FBQSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUEvQixDQUErQixDQUFDLEVBQ3pELENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQzdELENBQUM7Ozs7U0FDSCxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsbURBQW1ELEVBQUU7Ozs7d0JBQ3ZDLHFCQUFNLFFBQVEsQ0FBQyxNQUFNLEVBQUUsRUFBQTs7b0JBQWhDLE1BQU0sR0FBRyxTQUF1QjtvQkFDdEMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Ozs7U0FDbkMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnbWVtb3J5IGJ5dGVzJywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIGZ1bmN0aW9uIGdldEJ5dGVzKCkgcHVibGljIHB1cmUgcmV0dXJucyAoYnl0ZXMxWzEwXSBtZW1vcnkpe1xuICAgICAgICAgICAgYnl0ZXMxWzEwXSBtZW1vcnkgYjtcbiAgICAgICAgICAgIHN0cmluZyBtZW1vcnkgcyA9IFwiaGVsbG9cIjtcbiAgICAgICAgICAgIGJ5dGVzIG1lbW9yeSBzYiA9IGJ5dGVzKHMpO1xuXG4gICAgICAgICAgICB1aW50IGsgPSAwO1xuICAgICAgICAgICAgZm9yICh1aW50IGkgPSAwOyBpIDwgc2IubGVuZ3RoOyBpKyspIGJbaysrXSA9IHNiW2ldO1xuICAgICAgICAgICAgYls5XSA9IDB4ZmY7XG4gICAgICAgICAgICByZXR1cm4gYjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGRlZXBlcigpIHB1YmxpYyBwdXJlIHJldHVybnMgKGJ5dGVzMVsxMl1bMTAwXSBtZW1vcnkgcywgdWludCBjb3VudCkge1xuICAgICAgICAgIGNvdW50ID0gNDI7XG4gICAgICAgICAgcmV0dXJuIChzLCBjb3VudCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuXG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ2MnKTtcbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbnRyYWN0LmRlcGxveShjbGllbnQpO1xuICB9KTtcblxuICBpdCgnZ2V0cyB0aGUgc3RhdGljIGJ5dGUgYXJyYXkgZGVjb2RlZCBwcm9wZXJseScsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBbYnl0ZXNdID0gYXdhaXQgaW5zdGFuY2UuZ2V0Qnl0ZXMoKTtcbiAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKFxuICAgICAgYnl0ZXMubWFwKChiOiBCdWZmZXIpID0+IGIudG9TdHJpbmcoJ2hleCcpLnRvVXBwZXJDYXNlKCkpLFxuICAgICAgWyc2OCcsICc2NScsICc2QycsICc2QycsICc2RicsICcwMCcsICcwMCcsICcwMCcsICcwMCcsICdGRiddLFxuICAgICk7XG4gIH0pO1xuXG4gIGl0KCdyZXR1cm5zIG11bHRpcGxlIHZhbHVlcyBjb3JyZWN0bHkgZnJvbSBhIGZ1bmN0aW9uJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHZhbHVlcyA9IGF3YWl0IGluc3RhbmNlLmRlZXBlcigpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWx1ZXNbMV0sIDQyKTtcbiAgfSk7XG59KTtcbiJdfQ==

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

switch (_a.label) {
case 0: return [4 /*yield*/, test_1.burrow.namereg.set('DOUG', 'ABCDEF0123456789', 5000, 100)];
case 0: return [4 /*yield*/, test_1.client.namereg.set('DOUG', 'ABCDEF0123456789', 5000, 100)];
case 1:
_a.sent();
return [4 /*yield*/, test_1.burrow.namereg.get('DOUG')];
return [4 /*yield*/, test_1.client.namereg.get('DOUG')];
case 2:

@@ -80,2 +80,2 @@ entry = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXJlZy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvbmFtZXJlZy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLFNBQVMsRUFBRTtJQUFBLGlCQVFuQjtJQVBDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRXhCLEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRTs7Ozt3QkFDbkMscUJBQU0sYUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsRUFBQTs7b0JBQS9ELFNBQStELENBQUM7b0JBQ2xELHFCQUFNLGFBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFBOztvQkFBeEMsS0FBSyxHQUFHLFNBQWdDO29CQUM5QyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDOzs7O1NBQ3pELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnTmFtZXJlZycsIGZ1bmN0aW9uICgpIHtcbiAgdGhpcy50aW1lb3V0KDEwICogMTAwMCk7XG5cbiAgaXQoJ1NldHMgYW5kIGdldHMgYSBuYW1lIGNvcnJlY3RseScsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBidXJyb3cubmFtZXJlZy5zZXQoJ0RPVUcnLCAnQUJDREVGMDEyMzQ1Njc4OScsIDUwMDAsIDEwMCk7XG4gICAgY29uc3QgZW50cnkgPSBhd2FpdCBidXJyb3cubmFtZXJlZy5nZXQoJ0RPVUcnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZW50cnkuZ2V0RGF0YSgpLCAnQUJDREVGMDEyMzQ1Njc4OScpO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXJlZy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvbmFtZXJlZy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLFNBQVMsRUFBRTtJQUFBLGlCQVFuQjtJQVBDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRXhCLEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRTs7Ozt3QkFDbkMscUJBQU0sYUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsRUFBQTs7b0JBQS9ELFNBQStELENBQUM7b0JBQ2xELHFCQUFNLGFBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFBOztvQkFBeEMsS0FBSyxHQUFHLFNBQWdDO29CQUM5QyxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDOzs7O1NBQ3pELENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnTmFtZXJlZycsIGZ1bmN0aW9uICgpIHtcbiAgdGhpcy50aW1lb3V0KDEwICogMTAwMCk7XG5cbiAgaXQoJ1NldHMgYW5kIGdldHMgYSBuYW1lIGNvcnJlY3RseScsIGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCBjbGllbnQubmFtZXJlZy5zZXQoJ0RPVUcnLCAnQUJDREVGMDEyMzQ1Njc4OScsIDUwMDAsIDEwMCk7XG4gICAgY29uc3QgZW50cnkgPSBhd2FpdCBjbGllbnQubmFtZXJlZy5nZXQoJ0RPVUcnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZW50cnkuZ2V0RGF0YSgpLCAnQUJDREVGMDEyMzQ1Njc4OScpO1xuICB9KTtcbn0pO1xuIl19

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

contract = compile_1.compile(source, 'Test');
return [4 /*yield*/, contract.deployWith(test_1.burrow, {
return [4 /*yield*/, contract.deployWith(test_1.client, {
handler: function (_a) {

@@ -108,2 +108,2 @@ var result = _a.result;

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0dXJuLXR5cGVzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9yZXR1cm4tdHlwZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0Msa0RBQW1EO0FBQ25ELHNDQUFrRDtBQUNsRCwrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLHVCQUF1QixFQUFFO0lBQUEsaUJBNkNqQztJQTVDQyxFQUFFLENBQUMsNkJBQTZCLEVBQUU7Ozs7O29CQUMxQixNQUFNLEdBQUcsc21CQW9CZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztvQkFDbkIscUJBQU0sUUFBUSxDQUFDLFVBQVUsQ0FBQyxhQUFNLEVBQUU7NEJBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQVU7b0NBQVIsTUFBTSxZQUFBO2dDQUN6QixPQUFPO29DQUNMLE1BQU0sRUFBRSw4QkFBb0IsQ0FBQyxNQUFNLENBQUM7b0NBQ3BDLEdBQUcsb0JBQU0sTUFBTSxDQUFDO2lDQUNqQixDQUFDOzRCQUNKLENBQUM7eUJBQ0YsQ0FBQyxFQUFBOztvQkFQSSxRQUFRLEdBQVEsU0FPcEI7b0JBQ0ksV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0VBQWtFLEVBQUUsS0FBSyxDQUFDLENBQUM7b0JBQ3JHLFFBQVEsR0FBRzt3QkFDZixNQUFNLEVBQUU7NEJBQ04sT0FBTyxFQUFFLEdBQUc7NEJBQ1osUUFBUSxFQUFFLHFCQUFVLENBQUMsUUFBUSxDQUFDOzRCQUM5QixPQUFPLEVBQUUsWUFBWTs0QkFDckIsWUFBWSxFQUFFLFdBQVc7eUJBQzFCO3dCQUNELEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxxQkFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUM7cUJBQzVELENBQUM7b0JBQ2EscUJBQU0sUUFBUSxDQUFDLGNBQWMsRUFBRSxFQUFBOztvQkFBeEMsTUFBTSxHQUFHLFNBQStCO29CQUM5QyxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQzs7OztTQUMxQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGdldEFkZHJlc3MgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgd2l0aG91dEFycmF5RWxlbWVudHMgfSBmcm9tICcuLi9jb252ZXJ0JztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdNdWx0aXBsZSByZXR1cm4gdHlwZXMnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdjYW4gZGVjb2RlIG11bHRpcGxlIHJldHVybnMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcblxuICAgICAgICAgIGZ1bmN0aW9uIGdldEFkZHJlc3MoKSBwdWJsaWMgdmlldyByZXR1cm5zIChhZGRyZXNzKSB7XG4gICAgICAgICAgICByZXR1cm4gYWRkcmVzcyh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXROdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG4gICAgICAgICAgICByZXR1cm4gMTAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldENvbWJpbmF0aW9uKCkgcHVibGljIHZpZXcgcmV0dXJucyAodWludCBfbnVtYmVyLCBhZGRyZXNzIF9hZGRyZXNzLCBzdHJpbmcgbWVtb3J5IF9zYXlpbmcsIGJ5dGVzMzIgX3JhbmRvbUJ5dGVzKSB7XG4gICAgICAgICAgICBfbnVtYmVyID0gMTAwO1xuICAgICAgICAgICAgX2FkZHJlc3MgPSBhZGRyZXNzKHRoaXMpO1xuICAgICAgICAgICAgX3NheWluZyA9IFwiaGVsbG8gbW90b1wiO1xuICAgICAgICAgICAgX3JhbmRvbUJ5dGVzID0gYnl0ZXMzMih1aW50MjU2KDB4REVBREJFRUZGRUVERkFDRSkpO1xuICAgICAgICAgIH1cblxuICAgICAgfVxuICAgIGA7XG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ1Rlc3QnKTtcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gYXdhaXQgY29udHJhY3QuZGVwbG95V2l0aChidXJyb3csIHtcbiAgICAgIGhhbmRsZXI6IGZ1bmN0aW9uICh7IHJlc3VsdCB9KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdmFsdWVzOiB3aXRob3V0QXJyYXlFbGVtZW50cyhyZXN1bHQpLFxuICAgICAgICAgIHJhdzogWy4uLnJlc3VsdF0sXG4gICAgICAgIH07XG4gICAgICB9LFxuICAgIH0pO1xuICAgIGNvbnN0IHJhbmRvbUJ5dGVzID0gQnVmZmVyLmZyb20oJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMERFQURCRUVGRkVFREZBQ0UnLCAnaGV4Jyk7XG4gICAgY29uc3QgZXhwZWN0ZWQgPSB7XG4gICAgICB2YWx1ZXM6IHtcbiAgICAgICAgX251bWJlcjogMTAwLFxuICAgICAgICBfYWRkcmVzczogZ2V0QWRkcmVzcyhpbnN0YW5jZSksXG4gICAgICAgIF9zYXlpbmc6ICdoZWxsbyBtb3RvJyxcbiAgICAgICAgX3JhbmRvbUJ5dGVzOiByYW5kb21CeXRlcyxcbiAgICAgIH0sXG4gICAgICByYXc6IFsxMDAsIGdldEFkZHJlc3MoaW5zdGFuY2UpLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzXSxcbiAgICB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGluc3RhbmNlLmdldENvbWJpbmF0aW9uKCk7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChyZXN1bHQsIGV4cGVjdGVkKTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0dXJuLXR5cGVzLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9yZXR1cm4tdHlwZXMudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUFpQztBQUNqQyxnREFBK0M7QUFDL0Msa0RBQW1EO0FBQ25ELHNDQUFrRDtBQUNsRCwrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLHVCQUF1QixFQUFFO0lBQUEsaUJBNkNqQztJQTVDQyxFQUFFLENBQUMsNkJBQTZCLEVBQUU7Ozs7O29CQUMxQixNQUFNLEdBQUcsc21CQW9CZCxDQUFDO29CQUNJLFFBQVEsR0FBRyxpQkFBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztvQkFDbkIscUJBQU0sUUFBUSxDQUFDLFVBQVUsQ0FBQyxhQUFNLEVBQUU7NEJBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQVU7b0NBQVIsTUFBTSxZQUFBO2dDQUN6QixPQUFPO29DQUNMLE1BQU0sRUFBRSw4QkFBb0IsQ0FBQyxNQUFNLENBQUM7b0NBQ3BDLEdBQUcsb0JBQU0sTUFBTSxDQUFDO2lDQUNqQixDQUFDOzRCQUNKLENBQUM7eUJBQ0YsQ0FBQyxFQUFBOztvQkFQSSxRQUFRLEdBQVEsU0FPcEI7b0JBQ0ksV0FBVyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0VBQWtFLEVBQUUsS0FBSyxDQUFDLENBQUM7b0JBQ3JHLFFBQVEsR0FBRzt3QkFDZixNQUFNLEVBQUU7NEJBQ04sT0FBTyxFQUFFLEdBQUc7NEJBQ1osUUFBUSxFQUFFLHFCQUFVLENBQUMsUUFBUSxDQUFDOzRCQUM5QixPQUFPLEVBQUUsWUFBWTs0QkFDckIsWUFBWSxFQUFFLFdBQVc7eUJBQzFCO3dCQUNELEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxxQkFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUM7cUJBQzVELENBQUM7b0JBQ2EscUJBQU0sUUFBUSxDQUFDLGNBQWMsRUFBRSxFQUFBOztvQkFBeEMsTUFBTSxHQUFHLFNBQStCO29CQUM5QyxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQzs7OztTQUMxQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGdldEFkZHJlc3MgfSBmcm9tICcuLi9jb250cmFjdHMvY29udHJhY3QnO1xuaW1wb3J0IHsgd2l0aG91dEFycmF5RWxlbWVudHMgfSBmcm9tICcuLi9jb252ZXJ0JztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdNdWx0aXBsZSByZXR1cm4gdHlwZXMnLCBmdW5jdGlvbiAoKSB7XG4gIGl0KCdjYW4gZGVjb2RlIG11bHRpcGxlIHJldHVybnMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc291cmNlID0gYFxuICAgICAgcHJhZ21hIHNvbGlkaXR5ID49MC4wLjA7XG4gICAgICBjb250cmFjdCBUZXN0IHtcblxuICAgICAgICAgIGZ1bmN0aW9uIGdldEFkZHJlc3MoKSBwdWJsaWMgdmlldyByZXR1cm5zIChhZGRyZXNzKSB7XG4gICAgICAgICAgICByZXR1cm4gYWRkcmVzcyh0aGlzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmdW5jdGlvbiBnZXROdW1iZXIoKSBwdWJsaWMgcHVyZSByZXR1cm5zICh1aW50KSB7XG4gICAgICAgICAgICByZXR1cm4gMTAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldENvbWJpbmF0aW9uKCkgcHVibGljIHZpZXcgcmV0dXJucyAodWludCBfbnVtYmVyLCBhZGRyZXNzIF9hZGRyZXNzLCBzdHJpbmcgbWVtb3J5IF9zYXlpbmcsIGJ5dGVzMzIgX3JhbmRvbUJ5dGVzKSB7XG4gICAgICAgICAgICBfbnVtYmVyID0gMTAwO1xuICAgICAgICAgICAgX2FkZHJlc3MgPSBhZGRyZXNzKHRoaXMpO1xuICAgICAgICAgICAgX3NheWluZyA9IFwiaGVsbG8gbW90b1wiO1xuICAgICAgICAgICAgX3JhbmRvbUJ5dGVzID0gYnl0ZXMzMih1aW50MjU2KDB4REVBREJFRUZGRUVERkFDRSkpO1xuICAgICAgICAgIH1cblxuICAgICAgfVxuICAgIGA7XG4gICAgY29uc3QgY29udHJhY3QgPSBjb21waWxlKHNvdXJjZSwgJ1Rlc3QnKTtcbiAgICBjb25zdCBpbnN0YW5jZTogYW55ID0gYXdhaXQgY29udHJhY3QuZGVwbG95V2l0aChjbGllbnQsIHtcbiAgICAgIGhhbmRsZXI6IGZ1bmN0aW9uICh7IHJlc3VsdCB9KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdmFsdWVzOiB3aXRob3V0QXJyYXlFbGVtZW50cyhyZXN1bHQpLFxuICAgICAgICAgIHJhdzogWy4uLnJlc3VsdF0sXG4gICAgICAgIH07XG4gICAgICB9LFxuICAgIH0pO1xuICAgIGNvbnN0IHJhbmRvbUJ5dGVzID0gQnVmZmVyLmZyb20oJzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMERFQURCRUVGRkVFREZBQ0UnLCAnaGV4Jyk7XG4gICAgY29uc3QgZXhwZWN0ZWQgPSB7XG4gICAgICB2YWx1ZXM6IHtcbiAgICAgICAgX251bWJlcjogMTAwLFxuICAgICAgICBfYWRkcmVzczogZ2V0QWRkcmVzcyhpbnN0YW5jZSksXG4gICAgICAgIF9zYXlpbmc6ICdoZWxsbyBtb3RvJyxcbiAgICAgICAgX3JhbmRvbUJ5dGVzOiByYW5kb21CeXRlcyxcbiAgICAgIH0sXG4gICAgICByYXc6IFsxMDAsIGdldEFkZHJlc3MoaW5zdGFuY2UpLCAnaGVsbG8gbW90bycsIHJhbmRvbUJ5dGVzXSxcbiAgICB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGluc3RhbmNlLmdldENvbWJpbmF0aW9uKCk7XG4gICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChyZXN1bHQsIGV4cGVjdGVkKTtcbiAgfSk7XG59KTtcbiJdfQ==

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

source = "\n pragma solidity >=0.0.0;\n contract c {\n string s = \"secret\";\n function getString(uint key) public view returns (string memory){\n if (key != 42){\n revert(\"Did not pass correct key\");\n } else {\n return s;\n }\n }\n }\n ";
return [4 /*yield*/, compile_1.compile(source, 'c').deploy(test_1.burrow)];
return [4 /*yield*/, compile_1.compile(source, 'c').deploy(test_1.client)];
case 1:

@@ -99,2 +99,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9yZXZlcnQudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrREFBc0M7QUFDdEMsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLGlCQUFpQixFQUFFO0lBQUEsaUJBc0MzQjtJQXJDQyxJQUFJLFFBQWEsQ0FBQztJQUVsQixNQUFNLENBQUM7Ozs7O29CQUNDLE1BQU0sR0FBRyxpVUFZZCxDQUFDO29CQUVTLHFCQUFNLGlCQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQXBELFFBQVEsR0FBRyxTQUF5QyxDQUFDOzs7O1NBQ3RELENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx3Q0FBd0MsRUFBRTs7WUFDM0Msc0JBQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxHQUFXO29CQUM3QyxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzFDLENBQUMsQ0FBQyxFQUFDOztTQUNKLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyw0Q0FBNEMsRUFBRTs7WUFDL0Msc0JBQU8sUUFBUTtxQkFDWixTQUFTLENBQUMsQ0FBQyxDQUFDO3FCQUNaLElBQUksQ0FBQyxVQUFDLEdBQVc7b0JBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztnQkFDaEQsQ0FBQyxDQUFDLENBQ0QsT0FBSyxDQUFBLENBQUMsVUFBQyxHQUFzQjtvQkFDNUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ2xELE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDO2dCQUMxRSxDQUFDLENBQUMsRUFBQzs7U0FDTixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGdycGMgZnJvbSAnQGdycGMvZ3JwYy1qcyc7XG5pbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnUkVWRVJUIGNvbnN0YW50JywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIHN0cmluZyBzID0gXCJzZWNyZXRcIjtcbiAgICAgICAgZnVuY3Rpb24gZ2V0U3RyaW5nKHVpbnQga2V5KSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KXtcbiAgICAgICAgICBpZiAoa2V5ICE9IDQyKXtcbiAgICAgICAgICAgIHJldmVydChcIkRpZCBub3QgcGFzcyBjb3JyZWN0IGtleVwiKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcblxuICAgIGluc3RhbmNlID0gYXdhaXQgY29tcGlsZShzb3VyY2UsICdjJykuZGVwbG95KGJ1cnJvdyk7XG4gIH0pO1xuXG4gIGl0KCdnZXRzIHRoZSBzdHJpbmcgd2hlbiByZXZlcnQgbm90IGNhbGxlZCcsIGFzeW5jICgpID0+IHtcbiAgICByZXR1cm4gaW5zdGFuY2UuZ2V0U3RyaW5nKDQyKS50aGVuKChzdHI6IHN0cmluZykgPT4ge1xuICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChzdHIsIFsnc2VjcmV0J10pO1xuICAgIH0pO1xuICB9KTtcblxuICBpdCgnSXQgY2F0Y2hlcyBhIHJldmVydCB3aXRoIHRoZSByZXZlcnQgc3RyaW5nJywgYXN5bmMgKCkgPT4ge1xuICAgIHJldHVybiBpbnN0YW5jZVxuICAgICAgLmdldFN0cmluZygxKVxuICAgICAgLnRoZW4oKHN0cjogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRGlkIG5vdCBjYXRjaCByZXZlcnQgZXJyb3InKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycjogZ3JwYy5TZXJ2aWNlRXJyb3IpID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGVyci5jb2RlLCBncnBjLnN0YXR1cy5BQk9SVEVEKTtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGVyci5tZXNzYWdlLCAnMTAgQUJPUlRFRDogRGlkIG5vdCBwYXNzIGNvcnJlY3Qga2V5Jyk7XG4gICAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVzdC9yZXZlcnQudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrREFBc0M7QUFDdEMsNkNBQWlDO0FBQ2pDLGdEQUErQztBQUMvQywrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLGlCQUFpQixFQUFFO0lBQUEsaUJBc0MzQjtJQXJDQyxJQUFJLFFBQWEsQ0FBQztJQUVsQixNQUFNLENBQUM7Ozs7O29CQUNDLE1BQU0sR0FBRyxpVUFZZCxDQUFDO29CQUVTLHFCQUFNLGlCQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFNLENBQUMsRUFBQTs7b0JBQXBELFFBQVEsR0FBRyxTQUF5QyxDQUFDOzs7O1NBQ3RELENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx3Q0FBd0MsRUFBRTs7WUFDM0Msc0JBQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxHQUFXO29CQUM3QyxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzFDLENBQUMsQ0FBQyxFQUFDOztTQUNKLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyw0Q0FBNEMsRUFBRTs7WUFDL0Msc0JBQU8sUUFBUTtxQkFDWixTQUFTLENBQUMsQ0FBQyxDQUFDO3FCQUNaLElBQUksQ0FBQyxVQUFDLEdBQVc7b0JBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztnQkFDaEQsQ0FBQyxDQUFDLENBQ0QsT0FBSyxDQUFBLENBQUMsVUFBQyxHQUFzQjtvQkFDNUIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ2xELE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDO2dCQUMxRSxDQUFDLENBQUMsRUFBQzs7U0FDTixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGdycGMgZnJvbSAnQGdycGMvZ3JwYy1qcyc7XG5pbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnUkVWRVJUIGNvbnN0YW50JywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIHN0cmluZyBzID0gXCJzZWNyZXRcIjtcbiAgICAgICAgZnVuY3Rpb24gZ2V0U3RyaW5nKHVpbnQga2V5KSBwdWJsaWMgdmlldyByZXR1cm5zIChzdHJpbmcgbWVtb3J5KXtcbiAgICAgICAgICBpZiAoa2V5ICE9IDQyKXtcbiAgICAgICAgICAgIHJldmVydChcIkRpZCBub3QgcGFzcyBjb3JyZWN0IGtleVwiKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcblxuICAgIGluc3RhbmNlID0gYXdhaXQgY29tcGlsZShzb3VyY2UsICdjJykuZGVwbG95KGNsaWVudCk7XG4gIH0pO1xuXG4gIGl0KCdnZXRzIHRoZSBzdHJpbmcgd2hlbiByZXZlcnQgbm90IGNhbGxlZCcsIGFzeW5jICgpID0+IHtcbiAgICByZXR1cm4gaW5zdGFuY2UuZ2V0U3RyaW5nKDQyKS50aGVuKChzdHI6IHN0cmluZykgPT4ge1xuICAgICAgYXNzZXJ0LmRlZXBTdHJpY3RFcXVhbChzdHIsIFsnc2VjcmV0J10pO1xuICAgIH0pO1xuICB9KTtcblxuICBpdCgnSXQgY2F0Y2hlcyBhIHJldmVydCB3aXRoIHRoZSByZXZlcnQgc3RyaW5nJywgYXN5bmMgKCkgPT4ge1xuICAgIHJldHVybiBpbnN0YW5jZVxuICAgICAgLmdldFN0cmluZygxKVxuICAgICAgLnRoZW4oKHN0cjogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRGlkIG5vdCBjYXRjaCByZXZlcnQgZXJyb3InKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycjogZ3JwYy5TZXJ2aWNlRXJyb3IpID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGVyci5jb2RlLCBncnBjLnN0YXR1cy5BQk9SVEVEKTtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGVyci5tZXNzYWdlLCAnMTAgQUJPUlRFRDogRGlkIG5vdCBwYXNzIGNvcnJlY3Qga2V5Jyk7XG4gICAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==

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

source = "\n pragma solidity >=0.0.0;\n contract c {\n string s = \"secret\";\n uint n = 0;\n function getString(uint key) public returns (string memory){\n if (key != 42){\n revert(\"Did not pass correct key\");\n } else {\n n = n + 1;\n return s;\n }\n }\n }\n ";
return [4 /*yield*/, compile_1.compile(source, 'c').deploy(test_1.burrow)];
return [4 /*yield*/, compile_1.compile(source, 'c').deploy(test_1.client)];
case 1:

@@ -99,2 +99,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0Mi50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvcmV2ZXJ0Mi50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUFzQztBQUN0Qyw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMscUJBQXFCLEVBQUU7SUFBQSxpQkF3Qy9CO0lBdkNDLElBQUksUUFBYSxDQUFDO0lBRWxCLE1BQU0sQ0FBQzs7Ozs7b0JBQ0MsTUFBTSxHQUFHLHlXQWNkLENBQUM7b0JBRVMscUJBQU0saUJBQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBcEQsUUFBUSxHQUFHLFNBQXlDLENBQUM7Ozs7U0FDdEQsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHdDQUF3QyxFQUFFOztZQUMzQyxzQkFBTyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFDLEdBQVc7b0JBQzdDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDMUMsQ0FBQyxDQUFDLEVBQUM7O1NBQ0osQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDRDQUE0QyxFQUFFOztZQUMvQyxzQkFBTyxRQUFRO3FCQUNaLFNBQVMsQ0FBQyxDQUFDLENBQUM7cUJBQ1osSUFBSSxDQUFDLFVBQUMsR0FBVztvQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDLENBQUMsQ0FDRCxPQUFLLENBQUEsQ0FBQyxVQUFDLEdBQXNCO29CQUM1QixNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbEQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7Z0JBQzFFLENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZ3JwYyBmcm9tICdAZ3JwYy9ncnBjLWpzJztcbmltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGJ1cnJvdyB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdSRVZFUlQgbm9uLWNvbnN0YW50JywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIHN0cmluZyBzID0gXCJzZWNyZXRcIjtcbiAgICAgICAgdWludCBuID0gMDtcbiAgICAgICAgZnVuY3Rpb24gZ2V0U3RyaW5nKHVpbnQga2V5KSBwdWJsaWMgcmV0dXJucyAoc3RyaW5nIG1lbW9yeSl7XG4gICAgICAgICAgaWYgKGtleSAhPSA0Mil7XG4gICAgICAgICAgICByZXZlcnQoXCJEaWQgbm90IHBhc3MgY29ycmVjdCBrZXlcIik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG4gPSBuICsgMTtcbiAgICAgICAgICAgIHJldHVybiBzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbXBpbGUoc291cmNlLCAnYycpLmRlcGxveShidXJyb3cpO1xuICB9KTtcblxuICBpdCgnZ2V0cyB0aGUgc3RyaW5nIHdoZW4gcmV2ZXJ0IG5vdCBjYWxsZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgcmV0dXJuIGluc3RhbmNlLmdldFN0cmluZyg0MikudGhlbigoc3RyOiBzdHJpbmcpID0+IHtcbiAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoc3RyLCBbJ3NlY3JldCddKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgaXQoJ0l0IGNhdGNoZXMgYSByZXZlcnQgd2l0aCB0aGUgcmV2ZXJ0IHN0cmluZycsIGFzeW5jICgpID0+IHtcbiAgICByZXR1cm4gaW5zdGFuY2VcbiAgICAgIC5nZXRTdHJpbmcoMSlcbiAgICAgIC50aGVuKChzdHI6IHN0cmluZykgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RpZCBub3QgY2F0Y2ggcmV2ZXJ0IGVycm9yJyk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnI6IGdycGMuU2VydmljZUVycm9yKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChlcnIuY29kZSwgZ3JwYy5zdGF0dXMuQUJPUlRFRCk7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChlcnIubWVzc2FnZSwgJzEwIEFCT1JURUQ6IERpZCBub3QgcGFzcyBjb3JyZWN0IGtleScpO1xuICAgICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0Mi50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvcmV2ZXJ0Mi50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUFzQztBQUN0Qyw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMscUJBQXFCLEVBQUU7SUFBQSxpQkF3Qy9CO0lBdkNDLElBQUksUUFBYSxDQUFDO0lBRWxCLE1BQU0sQ0FBQzs7Ozs7b0JBQ0MsTUFBTSxHQUFHLHlXQWNkLENBQUM7b0JBRVMscUJBQU0saUJBQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBcEQsUUFBUSxHQUFHLFNBQXlDLENBQUM7Ozs7U0FDdEQsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHdDQUF3QyxFQUFFOztZQUMzQyxzQkFBTyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFDLEdBQVc7b0JBQzdDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDMUMsQ0FBQyxDQUFDLEVBQUM7O1NBQ0osQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDRDQUE0QyxFQUFFOztZQUMvQyxzQkFBTyxRQUFRO3FCQUNaLFNBQVMsQ0FBQyxDQUFDLENBQUM7cUJBQ1osSUFBSSxDQUFDLFVBQUMsR0FBVztvQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDLENBQUMsQ0FDRCxPQUFLLENBQUEsQ0FBQyxVQUFDLEdBQXNCO29CQUM1QixNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbEQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLHNDQUFzQyxDQUFDLENBQUM7Z0JBQzFFLENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZ3JwYyBmcm9tICdAZ3JwYy9ncnBjLWpzJztcbmltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgY29tcGlsZSB9IGZyb20gJy4uL2NvbnRyYWN0cy9jb21waWxlJztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdSRVZFUlQgbm9uLWNvbnN0YW50JywgZnVuY3Rpb24gKCkge1xuICBsZXQgaW5zdGFuY2U6IGFueTtcblxuICBiZWZvcmUoYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IGBcbiAgICAgIHByYWdtYSBzb2xpZGl0eSA+PTAuMC4wO1xuICAgICAgY29udHJhY3QgYyB7XG4gICAgICAgIHN0cmluZyBzID0gXCJzZWNyZXRcIjtcbiAgICAgICAgdWludCBuID0gMDtcbiAgICAgICAgZnVuY3Rpb24gZ2V0U3RyaW5nKHVpbnQga2V5KSBwdWJsaWMgcmV0dXJucyAoc3RyaW5nIG1lbW9yeSl7XG4gICAgICAgICAgaWYgKGtleSAhPSA0Mil7XG4gICAgICAgICAgICByZXZlcnQoXCJEaWQgbm90IHBhc3MgY29ycmVjdCBrZXlcIik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG4gPSBuICsgMTtcbiAgICAgICAgICAgIHJldHVybiBzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbXBpbGUoc291cmNlLCAnYycpLmRlcGxveShjbGllbnQpO1xuICB9KTtcblxuICBpdCgnZ2V0cyB0aGUgc3RyaW5nIHdoZW4gcmV2ZXJ0IG5vdCBjYWxsZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgcmV0dXJuIGluc3RhbmNlLmdldFN0cmluZyg0MikudGhlbigoc3RyOiBzdHJpbmcpID0+IHtcbiAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoc3RyLCBbJ3NlY3JldCddKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgaXQoJ0l0IGNhdGNoZXMgYSByZXZlcnQgd2l0aCB0aGUgcmV2ZXJ0IHN0cmluZycsIGFzeW5jICgpID0+IHtcbiAgICByZXR1cm4gaW5zdGFuY2VcbiAgICAgIC5nZXRTdHJpbmcoMSlcbiAgICAgIC50aGVuKChzdHI6IHN0cmluZykgPT4ge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RpZCBub3QgY2F0Y2ggcmV2ZXJ0IGVycm9yJyk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnI6IGdycGMuU2VydmljZUVycm9yKSA9PiB7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChlcnIuY29kZSwgZ3JwYy5zdGF0dXMuQUJPUlRFRCk7XG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChlcnIubWVzc2FnZSwgJzEwIEFCT1JURUQ6IERpZCBub3QgcGFzcyBjb3JyZWN0IGtleScpO1xuICAgICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=

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

source = "\n pragma solidity >=0.0.0;\n contract c {\n string s = \"secret\";\n uint n = 0;\n function getString(uint key) public returns (string memory){\n if (key != 42){\n revert();\n } else {\n n = n + 1;\n return s;\n }\n }\n }\n ";
return [4 /*yield*/, compile_1.compile(source, 'c').deploy(test_1.burrow)];
return [4 /*yield*/, compile_1.compile(source, 'c').deploy(test_1.client)];
case 1:

@@ -91,2 +91,2 @@ instance = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0My50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvcmV2ZXJ0My50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUFzQztBQUN0Qyw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMscUJBQXFCLEVBQUU7SUFBQSxpQkFpQy9CO0lBaENDLElBQUksUUFBYSxDQUFDO0lBRWxCLE1BQU0sQ0FBQzs7Ozs7b0JBQ0MsTUFBTSxHQUFHLDZVQWNkLENBQUM7b0JBRVMscUJBQU0saUJBQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBcEQsUUFBUSxHQUFHLFNBQXlDLENBQUM7Ozs7U0FDdEQsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDRDQUE0QyxFQUFFOztZQUMvQyxzQkFBTyxRQUFRO3FCQUNaLFNBQVMsQ0FBQyxDQUFDLENBQUM7cUJBQ1osSUFBSSxDQUFDLFVBQUMsR0FBUTtvQkFDYixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0JBQ2hELENBQUMsQ0FBQyxDQUNELE9BQUssQ0FBQSxDQUFDLFVBQUMsR0FBc0I7b0JBQzVCLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNwRCxDQUFDLENBQUMsRUFBQzs7U0FDTixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGdycGMgZnJvbSAnQGdycGMvZ3JwYy1qcyc7XG5pbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBidXJyb3cgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnUkVWRVJUIG5vbi1jb25zdGFudCcsIGZ1bmN0aW9uICgpIHtcbiAgbGV0IGluc3RhbmNlOiBhbnk7XG5cbiAgYmVmb3JlKGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IGMge1xuICAgICAgICBzdHJpbmcgcyA9IFwic2VjcmV0XCI7XG4gICAgICAgIHVpbnQgbiA9IDA7XG4gICAgICAgIGZ1bmN0aW9uIGdldFN0cmluZyh1aW50IGtleSkgcHVibGljIHJldHVybnMgKHN0cmluZyBtZW1vcnkpe1xuICAgICAgICAgIGlmIChrZXkgIT0gNDIpe1xuICAgICAgICAgICAgcmV2ZXJ0KCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG4gPSBuICsgMTtcbiAgICAgICAgICAgIHJldHVybiBzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbXBpbGUoc291cmNlLCAnYycpLmRlcGxveShidXJyb3cpO1xuICB9KTtcblxuICBpdCgnSXQgY2F0Y2hlcyBhIHJldmVydCB3aXRoIHRoZSByZXZlcnQgc3RyaW5nJywgYXN5bmMgKCkgPT4ge1xuICAgIHJldHVybiBpbnN0YW5jZVxuICAgICAgLmdldFN0cmluZygxKVxuICAgICAgLnRoZW4oKHN0cjogYW55KSA9PiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRGlkIG5vdCBjYXRjaCByZXZlcnQgZXJyb3InKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycjogZ3JwYy5TZXJ2aWNlRXJyb3IpID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGVyci5jb2RlLCBncnBjLnN0YXR1cy5BQk9SVEVEKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV2ZXJ0My50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3QvcmV2ZXJ0My50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUFzQztBQUN0Qyw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMscUJBQXFCLEVBQUU7SUFBQSxpQkFpQy9CO0lBaENDLElBQUksUUFBYSxDQUFDO0lBRWxCLE1BQU0sQ0FBQzs7Ozs7b0JBQ0MsTUFBTSxHQUFHLDZVQWNkLENBQUM7b0JBRVMscUJBQU0saUJBQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQU0sQ0FBQyxFQUFBOztvQkFBcEQsUUFBUSxHQUFHLFNBQXlDLENBQUM7Ozs7U0FDdEQsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLDRDQUE0QyxFQUFFOztZQUMvQyxzQkFBTyxRQUFRO3FCQUNaLFNBQVMsQ0FBQyxDQUFDLENBQUM7cUJBQ1osSUFBSSxDQUFDLFVBQUMsR0FBUTtvQkFDYixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0JBQ2hELENBQUMsQ0FBQyxDQUNELE9BQUssQ0FBQSxDQUFDLFVBQUMsR0FBc0I7b0JBQzVCLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNwRCxDQUFDLENBQUMsRUFBQzs7U0FDTixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGdycGMgZnJvbSAnQGdycGMvZ3JwYy1qcyc7XG5pbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IGNvbXBpbGUgfSBmcm9tICcuLi9jb250cmFjdHMvY29tcGlsZSc7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL3Rlc3QnO1xuXG5kZXNjcmliZSgnUkVWRVJUIG5vbi1jb25zdGFudCcsIGZ1bmN0aW9uICgpIHtcbiAgbGV0IGluc3RhbmNlOiBhbnk7XG5cbiAgYmVmb3JlKGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IGMge1xuICAgICAgICBzdHJpbmcgcyA9IFwic2VjcmV0XCI7XG4gICAgICAgIHVpbnQgbiA9IDA7XG4gICAgICAgIGZ1bmN0aW9uIGdldFN0cmluZyh1aW50IGtleSkgcHVibGljIHJldHVybnMgKHN0cmluZyBtZW1vcnkpe1xuICAgICAgICAgIGlmIChrZXkgIT0gNDIpe1xuICAgICAgICAgICAgcmV2ZXJ0KCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG4gPSBuICsgMTtcbiAgICAgICAgICAgIHJldHVybiBzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIGA7XG5cbiAgICBpbnN0YW5jZSA9IGF3YWl0IGNvbXBpbGUoc291cmNlLCAnYycpLmRlcGxveShjbGllbnQpO1xuICB9KTtcblxuICBpdCgnSXQgY2F0Y2hlcyBhIHJldmVydCB3aXRoIHRoZSByZXZlcnQgc3RyaW5nJywgYXN5bmMgKCkgPT4ge1xuICAgIHJldHVybiBpbnN0YW5jZVxuICAgICAgLmdldFN0cmluZygxKVxuICAgICAgLnRoZW4oKHN0cjogYW55KSA9PiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRGlkIG5vdCBjYXRjaCByZXZlcnQgZXJyb3InKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycjogZ3JwYy5TZXJ2aWNlRXJyb3IpID0+IHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGVyci5jb2RlLCBncnBjLnN0YXR1cy5BQk9SVEVEKTtcbiAgICAgIH0pO1xuICB9KTtcbn0pO1xuIl19

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

return [2 /*return*/, contract
.deploy(test_1.burrow)
.deploy(test_1.client)
.then(function (instance) { return instance.set(42).then(function () { return instance.get(); }); })

@@ -83,2 +83,2 @@ .then(function (value) {

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLXN0b3JhZ2UudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3NpbXBsZS1zdG9yYWdlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUU7SUFBQSxpQkF3QjFCO0lBdkJDLEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRTs7O1lBQ3BDLE1BQU0sR0FBRyxtVEFhZCxDQUFDO1lBQ0ksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQ2xELHNCQUFPLFFBQVE7cUJBQ1osTUFBTSxDQUFDLGFBQU0sQ0FBQztxQkFDZCxJQUFJLENBQUMsVUFBQyxRQUFhLElBQUssT0FBQSxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFNLE9BQUEsUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFkLENBQWMsQ0FBQyxFQUEzQyxDQUEyQyxDQUFDO3FCQUNwRSxJQUFJLENBQUMsVUFBQyxLQUFLO29CQUNWLE1BQU0sQ0FBQyxlQUFlLG1CQUFLLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ1NpbXBsZSBzdG9yYWdlJywgZnVuY3Rpb24gKCkge1xuICBpdCgnc2V0cyBhbmQgZ2V0cyBhIHZhbHVlIGZyb20gYSBjb250cmFjdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFNpbXBsZVN0b3JhZ2Uge1xuICAgICAgICAgIHVpbnQgc3RvcmVkRGF0YTtcblxuICAgICAgICAgIGZ1bmN0aW9uIHNldCh1aW50IHgpIHB1YmxpYyB7XG4gICAgICAgICAgICAgIHN0b3JlZERhdGEgPSB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldCgpIHZpZXcgcHVibGljIHJldHVybnMgKHVpbnQgcmV0VmFsKSB7XG4gICAgICAgICAgICAgIHJldHVybiBzdG9yZWREYXRhO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdTaW1wbGVTdG9yYWdlJyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0XG4gICAgICAuZGVwbG95KGJ1cnJvdylcbiAgICAgIC50aGVuKChpbnN0YW5jZTogYW55KSA9PiBpbnN0YW5jZS5zZXQoNDIpLnRoZW4oKCkgPT4gaW5zdGFuY2UuZ2V0KCkpKVxuICAgICAgLnRoZW4oKHZhbHVlKSA9PiB7XG4gICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnZhbHVlXSwgWzQyXSk7XG4gICAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLXN0b3JhZ2UudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3NpbXBsZS1zdG9yYWdlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2Q0FBaUM7QUFDakMsZ0RBQStDO0FBQy9DLCtCQUFnQztBQUVoQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUU7SUFBQSxpQkF3QjFCO0lBdkJDLEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRTs7O1lBQ3BDLE1BQU0sR0FBRyxtVEFhZCxDQUFDO1lBQ0ksUUFBUSxHQUFHLGlCQUFPLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQ2xELHNCQUFPLFFBQVE7cUJBQ1osTUFBTSxDQUFDLGFBQU0sQ0FBQztxQkFDZCxJQUFJLENBQUMsVUFBQyxRQUFhLElBQUssT0FBQSxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFNLE9BQUEsUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFkLENBQWMsQ0FBQyxFQUEzQyxDQUEyQyxDQUFDO3FCQUNwRSxJQUFJLENBQUMsVUFBQyxLQUFLO29CQUNWLE1BQU0sQ0FBQyxlQUFlLG1CQUFLLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLENBQUMsQ0FBQyxFQUFDOztTQUNOLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBjb21waWxlIH0gZnJvbSAnLi4vY29udHJhY3RzL2NvbXBpbGUnO1xuaW1wb3J0IHsgY2xpZW50IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ1NpbXBsZSBzdG9yYWdlJywgZnVuY3Rpb24gKCkge1xuICBpdCgnc2V0cyBhbmQgZ2V0cyBhIHZhbHVlIGZyb20gYSBjb250cmFjdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSBgXG4gICAgICBwcmFnbWEgc29saWRpdHkgPj0wLjAuMDtcbiAgICAgIGNvbnRyYWN0IFNpbXBsZVN0b3JhZ2Uge1xuICAgICAgICAgIHVpbnQgc3RvcmVkRGF0YTtcblxuICAgICAgICAgIGZ1bmN0aW9uIHNldCh1aW50IHgpIHB1YmxpYyB7XG4gICAgICAgICAgICAgIHN0b3JlZERhdGEgPSB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGZ1bmN0aW9uIGdldCgpIHZpZXcgcHVibGljIHJldHVybnMgKHVpbnQgcmV0VmFsKSB7XG4gICAgICAgICAgICAgIHJldHVybiBzdG9yZWREYXRhO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICBgO1xuICAgIGNvbnN0IGNvbnRyYWN0ID0gY29tcGlsZShzb3VyY2UsICdTaW1wbGVTdG9yYWdlJyk7XG4gICAgcmV0dXJuIGNvbnRyYWN0XG4gICAgICAuZGVwbG95KGNsaWVudClcbiAgICAgIC50aGVuKChpbnN0YW5jZTogYW55KSA9PiBpbnN0YW5jZS5zZXQoNDIpLnRoZW4oKCkgPT4gaW5zdGFuY2UuZ2V0KCkpKVxuICAgICAgLnRoZW4oKHZhbHVlKSA9PiB7XG4gICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoWy4uLnZhbHVlXSwgWzQyXSk7XG4gICAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==

@@ -62,14 +62,21 @@ "use strict";

var Eventer_abi_1 = require("../solts/sol/Eventer.abi");
var NegationLib_abi_1 = require("../solts/sol/NegationLib.abi");
var test_1 = require("./test");
describe('solts', function () {
it('can deploy and call from codegen', function () { return __awaiter(void 0, void 0, void 0, function () {
var adder, sum;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, Addition_abi_1.Addition.deployContract(test_1.burrow, true)];
var libraries, adder, sum;
var _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
_a = {};
return [4 /*yield*/, NegationLib_abi_1.NegationLib.deploy({ client: test_1.client })];
case 1:
adder = _a.sent();
libraries = (_a.NegationLib = _b.sent(), _a);
return [4 /*yield*/, Addition_abi_1.Addition.deployContract({ client: test_1.client, libraries: libraries, withContractMeta: true })];
case 2:
adder = _b.sent();
return [4 /*yield*/, adder.functions.add(2342, 23432)];
case 2:
sum = (_a.sent()).sum;
case 3:
sum = (_b.sent()).sum;
assert.strictEqual(sum, 25774);

@@ -84,3 +91,3 @@ return [2 /*return*/];

switch (_a.label) {
case 0: return [4 /*yield*/, Eventer_abi_1.Eventer.deployContract(test_1.burrow, true)];
case 0: return [4 /*yield*/, Eventer_abi_1.Eventer.deployContract({ client: test_1.client, withContractMeta: true })];
case 1:

@@ -112,3 +119,3 @@ eventer = _a.sent();

switch (_a.label) {
case 0: return [4 /*yield*/, Eventer_abi_1.Eventer.deployContract(test_1.burrow, true)];
case 0: return [4 /*yield*/, Eventer_abi_1.Eventer.deployContract({ client: test_1.client, withContractMeta: true })];
case 1:

@@ -142,2 +149,2 @@ eventer = _a.sent();

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sdHMudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3NvbHRzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLG9DQUF1QztBQUN2QywwREFBcUQ7QUFDckQsd0RBQW1EO0FBQ25ELCtCQUFnQztBQUVoQyxRQUFRLENBQUMsT0FBTyxFQUFFO0lBQ2hCLEVBQUUsQ0FBQyxrQ0FBa0MsRUFBRTs7Ozt3QkFDdkIscUJBQU0sdUJBQVEsQ0FBQyxjQUFjLENBQUMsYUFBTSxFQUFFLElBQUksQ0FBQyxFQUFBOztvQkFBbkQsS0FBSyxHQUFHLFNBQTJDO29CQUN6QyxxQkFBTSxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUE7O29CQUE5QyxHQUFHLEdBQUssQ0FBQSxTQUFzQyxDQUFBLElBQTNDO29CQUNYLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDOzs7O1NBQ2hDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxvQkFBb0IsRUFBRTs7Ozt3QkFDUCxxQkFBTSxxQkFBTyxDQUFDLGNBQWMsQ0FBQyxhQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUE7O29CQUFwRCxPQUFPLEdBQUcsU0FBMEM7b0JBQzFELHFCQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUE7O29CQUFsQyxTQUFrQyxDQUFDO29CQUNuQyxxQkFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxFQUFBOztvQkFBbEMsU0FBa0MsQ0FBQztvQkFDbkMscUJBQU0sT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsRUFBQTs7b0JBQWxDLFNBQWtDLENBQUM7b0JBQ3BCLHFCQUFNLG1CQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBQTs7b0JBQWpELE1BQU0sR0FBRyxTQUF3QztvQkFDdkQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUMvQixLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN4QixNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsMENBQTBDLENBQUMsQ0FBQztvQkFDakYsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLHlCQUF5QixDQUFDLENBQUM7Ozs7U0FDL0QsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLCtCQUErQixFQUFFOzs7O3dCQUNsQixxQkFBTSxxQkFBTyxDQUFDLGNBQWMsQ0FBQyxhQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUE7O29CQUFwRCxPQUFPLEdBQUcsU0FBMEM7b0JBQzFELHFCQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUE7O29CQUFsQyxTQUFrQyxDQUFDO29CQUNuQyxxQkFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxFQUFBOztvQkFBbEMsU0FBa0MsQ0FBQztvQkFDN0IsUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztvQkFDL0MscUJBQU0sbUJBQVUsQ0FBQyxRQUFRLENBQUMsRUFBQTs7b0JBQW5DLE1BQU0sR0FBRyxTQUEwQjtvQkFDekMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUNyQywyQkFBMkI7b0JBQzNCLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBQyxLQUFLO3dCQUNmLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUU7NEJBQ3pCLElBQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0VBQWtFLEVBQUUsS0FBSyxDQUFDLENBQUM7NEJBQ3ZHLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7eUJBQ3hEOzZCQUFNLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxhQUFhLEVBQUU7NEJBQ3ZDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7eUJBQ2xEO29CQUNILENBQUMsQ0FBQyxDQUFDOzs7O1NBQ0osQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IHJlYWRFdmVudHMgfSBmcm9tICcuLi9ldmVudHMnO1xuaW1wb3J0IHsgQWRkaXRpb24gfSBmcm9tICcuLi9zb2x0cy9zb2wvQWRkaXRpb24uYWJpJztcbmltcG9ydCB7IEV2ZW50ZXIgfSBmcm9tICcuLi9zb2x0cy9zb2wvRXZlbnRlci5hYmknO1xuaW1wb3J0IHsgYnVycm93IH0gZnJvbSAnLi90ZXN0JztcblxuZGVzY3JpYmUoJ3NvbHRzJywgKCkgPT4ge1xuICBpdCgnY2FuIGRlcGxveSBhbmQgY2FsbCBmcm9tIGNvZGVnZW4nLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgYWRkZXIgPSBhd2FpdCBBZGRpdGlvbi5kZXBsb3lDb250cmFjdChidXJyb3csIHRydWUpO1xuICAgIGNvbnN0IHsgc3VtIH0gPSBhd2FpdCBhZGRlci5mdW5jdGlvbnMuYWRkKDIzNDIsIDIzNDMyKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoc3VtLCAyNTc3NCk7XG4gIH0pO1xuXG4gIGl0KCdjYW4gcmVjZWl2ZSBldmVudHMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgZXZlbnRlciA9IGF3YWl0IEV2ZW50ZXIuZGVwbG95Q29udHJhY3QoYnVycm93LCB0cnVlKTtcbiAgICBhd2FpdCBldmVudGVyLmZ1bmN0aW9ucy5hbm5vdW5jZSgpO1xuICAgIGF3YWl0IGV2ZW50ZXIuZnVuY3Rpb25zLmFubm91bmNlKCk7XG4gICAgYXdhaXQgZXZlbnRlci5mdW5jdGlvbnMuYW5ub3VuY2UoKTtcbiAgICBjb25zdCBldmVudHMgPSBhd2FpdCByZWFkRXZlbnRzKGV2ZW50ZXIubGlzdGVuZXJzLkluaXQpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChldmVudHMubGVuZ3RoLCAzKTtcbiAgICBjb25zdCBldmVudCA9IGV2ZW50c1swXTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZXZlbnQuY29udHJvbGxlciwgJ0M5RjIzOTU5MUM1OTNDQjhFRTE5MkIwMDA5QzZBMEYyQzlGOEQ3NjgnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZXZlbnQubWV0YWRhdGEsICdiYWNvbixiZWFucyxlZ2dzLHRvbWF0bycpO1xuICB9KTtcblxuICBpdCgnY2FuIGxpc3RlbiB0byBtdWx0aXBsZSBldmVudHMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgZXZlbnRlciA9IGF3YWl0IEV2ZW50ZXIuZGVwbG95Q29udHJhY3QoYnVycm93LCB0cnVlKTtcbiAgICBhd2FpdCBldmVudGVyLmZ1bmN0aW9ucy5hbm5vdW5jZSgpO1xuICAgIGF3YWl0IGV2ZW50ZXIuZnVuY3Rpb25zLmFubm91bmNlKCk7XG4gICAgY29uc3QgbGlzdGVuZXIgPSBldmVudGVyLmxpc3RlbmVyRm9yKFsnTW9ub1JhbXBhZ2UnLCAnSW5pdCddKTtcbiAgICBjb25zdCBldmVudHMgPSBhd2FpdCByZWFkRXZlbnRzKGxpc3RlbmVyKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZXZlbnRzLmxlbmd0aCwgNCk7XG4gICAgLy8gTG9vayBtYSwgdHlwZSBuYXJyb3dpbmchXG4gICAgZXZlbnRzLm1hcCgoZXZlbnQpID0+IHtcbiAgICAgIGlmIChldmVudC5uYW1lID09PSAnSW5pdCcpIHtcbiAgICAgICAgY29uc3QgZXZlbnRJZCA9IEJ1ZmZlci5mcm9tKCc2NTc2NjU2RTc0MzEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJywgJ2hleCcpO1xuICAgICAgICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGV2ZW50LnBheWxvYWQuZXZlbnRJZCwgZXZlbnRJZCk7XG4gICAgICB9IGVsc2UgaWYgKGV2ZW50Lm5hbWUgPT09ICdNb25vUmFtcGFnZScpIHtcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGV2ZW50LnBheWxvYWQudGltZXN0YW1wLCAxMjMpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sdHMudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3NvbHRzLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkNBQWlDO0FBQ2pDLG9DQUF1QztBQUN2QywwREFBcUQ7QUFDckQsd0RBQW1EO0FBQ25ELGdFQUEyRDtBQUMzRCwrQkFBZ0M7QUFFaEMsUUFBUSxDQUFDLE9BQU8sRUFBRTtJQUNoQixFQUFFLENBQUMsa0NBQWtDLEVBQUU7Ozs7Ozs7b0JBQ0oscUJBQU0sNkJBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLGVBQUEsRUFBRSxDQUFDLEVBQUE7O29CQUEvRCxTQUFTLElBQUssY0FBVyxHQUFFLFNBQW9DLEtBQUU7b0JBQ3pELHFCQUFNLHVCQUFRLENBQUMsY0FBYyxDQUFDLEVBQUUsTUFBTSxlQUFBLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFBOztvQkFBL0YsS0FBSyxHQUFHLFNBQXVGO29CQUNyRixxQkFBTSxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUE7O29CQUE5QyxHQUFHLEdBQUssQ0FBQSxTQUFzQyxDQUFBLElBQTNDO29CQUNYLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDOzs7O1NBQ2hDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxvQkFBb0IsRUFBRTs7Ozt3QkFDUCxxQkFBTSxxQkFBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLE1BQU0sZUFBQSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLEVBQUE7O29CQUExRSxPQUFPLEdBQUcsU0FBZ0U7b0JBQ2hGLHFCQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUE7O29CQUFsQyxTQUFrQyxDQUFDO29CQUNuQyxxQkFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxFQUFBOztvQkFBbEMsU0FBa0MsQ0FBQztvQkFDbkMscUJBQU0sT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsRUFBQTs7b0JBQWxDLFNBQWtDLENBQUM7b0JBQ3BCLHFCQUFNLG1CQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBQTs7b0JBQWpELE1BQU0sR0FBRyxTQUF3QztvQkFDdkQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUMvQixLQUFLLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUN4QixNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsMENBQTBDLENBQUMsQ0FBQztvQkFDakYsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLHlCQUF5QixDQUFDLENBQUM7Ozs7U0FDL0QsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLCtCQUErQixFQUFFOzs7O3dCQUNsQixxQkFBTSxxQkFBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLE1BQU0sZUFBQSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLEVBQUE7O29CQUExRSxPQUFPLEdBQUcsU0FBZ0U7b0JBQ2hGLHFCQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUE7O29CQUFsQyxTQUFrQyxDQUFDO29CQUNuQyxxQkFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxFQUFBOztvQkFBbEMsU0FBa0MsQ0FBQztvQkFDN0IsUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztvQkFDL0MscUJBQU0sbUJBQVUsQ0FBQyxRQUFRLENBQUMsRUFBQTs7b0JBQW5DLE1BQU0sR0FBRyxTQUEwQjtvQkFDekMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUNyQywyQkFBMkI7b0JBQzNCLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBQyxLQUFLO3dCQUNmLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUU7NEJBQ3pCLElBQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0VBQWtFLEVBQUUsS0FBSyxDQUFDLENBQUM7NEJBQ3ZHLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7eUJBQ3hEOzZCQUFNLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxhQUFhLEVBQUU7NEJBQ3ZDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUM7eUJBQ2xEO29CQUNILENBQUMsQ0FBQyxDQUFDOzs7O1NBQ0osQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IHJlYWRFdmVudHMgfSBmcm9tICcuLi9ldmVudHMnO1xuaW1wb3J0IHsgQWRkaXRpb24gfSBmcm9tICcuLi9zb2x0cy9zb2wvQWRkaXRpb24uYWJpJztcbmltcG9ydCB7IEV2ZW50ZXIgfSBmcm9tICcuLi9zb2x0cy9zb2wvRXZlbnRlci5hYmknO1xuaW1wb3J0IHsgTmVnYXRpb25MaWIgfSBmcm9tICcuLi9zb2x0cy9zb2wvTmVnYXRpb25MaWIuYWJpJztcbmltcG9ydCB7IGNsaWVudCB9IGZyb20gJy4vdGVzdCc7XG5cbmRlc2NyaWJlKCdzb2x0cycsICgpID0+IHtcbiAgaXQoJ2NhbiBkZXBsb3kgYW5kIGNhbGwgZnJvbSBjb2RlZ2VuJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGxpYnJhcmllcyA9IHsgTmVnYXRpb25MaWI6IGF3YWl0IE5lZ2F0aW9uTGliLmRlcGxveSh7IGNsaWVudCB9KSB9O1xuICAgIGNvbnN0IGFkZGVyID0gYXdhaXQgQWRkaXRpb24uZGVwbG95Q29udHJhY3QoeyBjbGllbnQsIGxpYnJhcmllczogbGlicmFyaWVzLCB3aXRoQ29udHJhY3RNZXRhOiB0cnVlIH0pO1xuICAgIGNvbnN0IHsgc3VtIH0gPSBhd2FpdCBhZGRlci5mdW5jdGlvbnMuYWRkKDIzNDIsIDIzNDMyKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoc3VtLCAyNTc3NCk7XG4gIH0pO1xuXG4gIGl0KCdjYW4gcmVjZWl2ZSBldmVudHMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgZXZlbnRlciA9IGF3YWl0IEV2ZW50ZXIuZGVwbG95Q29udHJhY3QoeyBjbGllbnQsIHdpdGhDb250cmFjdE1ldGE6IHRydWUgfSk7XG4gICAgYXdhaXQgZXZlbnRlci5mdW5jdGlvbnMuYW5ub3VuY2UoKTtcbiAgICBhd2FpdCBldmVudGVyLmZ1bmN0aW9ucy5hbm5vdW5jZSgpO1xuICAgIGF3YWl0IGV2ZW50ZXIuZnVuY3Rpb25zLmFubm91bmNlKCk7XG4gICAgY29uc3QgZXZlbnRzID0gYXdhaXQgcmVhZEV2ZW50cyhldmVudGVyLmxpc3RlbmVycy5Jbml0KTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZXZlbnRzLmxlbmd0aCwgMyk7XG4gICAgY29uc3QgZXZlbnQgPSBldmVudHNbMF07XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGV2ZW50LmNvbnRyb2xsZXIsICdDOUYyMzk1OTFDNTkzQ0I4RUUxOTJCMDAwOUM2QTBGMkM5RjhENzY4Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKGV2ZW50Lm1ldGFkYXRhLCAnYmFjb24sYmVhbnMsZWdncyx0b21hdG8nKTtcbiAgfSk7XG5cbiAgaXQoJ2NhbiBsaXN0ZW4gdG8gbXVsdGlwbGUgZXZlbnRzJywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGV2ZW50ZXIgPSBhd2FpdCBFdmVudGVyLmRlcGxveUNvbnRyYWN0KHsgY2xpZW50LCB3aXRoQ29udHJhY3RNZXRhOiB0cnVlIH0pO1xuICAgIGF3YWl0IGV2ZW50ZXIuZnVuY3Rpb25zLmFubm91bmNlKCk7XG4gICAgYXdhaXQgZXZlbnRlci5mdW5jdGlvbnMuYW5ub3VuY2UoKTtcbiAgICBjb25zdCBsaXN0ZW5lciA9IGV2ZW50ZXIubGlzdGVuZXJGb3IoWydNb25vUmFtcGFnZScsICdJbml0J10pO1xuICAgIGNvbnN0IGV2ZW50cyA9IGF3YWl0IHJlYWRFdmVudHMobGlzdGVuZXIpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChldmVudHMubGVuZ3RoLCA0KTtcbiAgICAvLyBMb29rIG1hLCB0eXBlIG5hcnJvd2luZyFcbiAgICBldmVudHMubWFwKChldmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50Lm5hbWUgPT09ICdJbml0Jykge1xuICAgICAgICBjb25zdCBldmVudElkID0gQnVmZmVyLmZyb20oJzY1NzY2NTZFNzQzMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLCAnaGV4Jyk7XG4gICAgICAgIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoZXZlbnQucGF5bG9hZC5ldmVudElkLCBldmVudElkKTtcbiAgICAgIH0gZWxzZSBpZiAoZXZlbnQubmFtZSA9PT0gJ01vbm9SYW1wYWdlJykge1xuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZXZlbnQucGF5bG9hZC50aW1lc3RhbXAsIDEyMyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
import { Client } from '../index';
export declare const burrow: Client;
export declare const client: Client;
"use strict";
exports.__esModule = true;
exports.burrow = void 0;
exports.client = void 0;
var index_1 = require("../index");
var url = process.env.BURROW_URL || 'localhost:20123';
var addr = process.env.SIGNING_ADDRESS || 'C9F239591C593CB8EE192B0009C6A0F2C9F8D768';
exports.burrow = new index_1.Client(url, addr);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0NBQWtDO0FBRWxDLElBQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLGlCQUFpQixDQUFDO0FBQ3hELElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxJQUFJLDBDQUEwQyxDQUFDO0FBQzFFLFFBQUEsTUFBTSxHQUFHLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaWVudCB9IGZyb20gJy4uL2luZGV4JztcblxuY29uc3QgdXJsID0gcHJvY2Vzcy5lbnYuQlVSUk9XX1VSTCB8fCAnbG9jYWxob3N0OjIwMTIzJztcbmNvbnN0IGFkZHIgPSBwcm9jZXNzLmVudi5TSUdOSU5HX0FERFJFU1MgfHwgJ0M5RjIzOTU5MUM1OTNDQjhFRTE5MkIwMDA5QzZBMEYyQzlGOEQ3NjgnO1xuZXhwb3J0IGNvbnN0IGJ1cnJvdyA9IG5ldyBDbGllbnQodXJsLCBhZGRyKTtcbiJdfQ==
exports.client = new index_1.Client(url, addr);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90ZXN0L3Rlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0NBQWtDO0FBRWxDLElBQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLGlCQUFpQixDQUFDO0FBQ3hELElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxJQUFJLDBDQUEwQyxDQUFDO0FBQzFFLFFBQUEsTUFBTSxHQUFHLElBQUksY0FBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaWVudCB9IGZyb20gJy4uL2luZGV4JztcblxuY29uc3QgdXJsID0gcHJvY2Vzcy5lbnYuQlVSUk9XX1VSTCB8fCAnbG9jYWxob3N0OjIwMTIzJztcbmNvbnN0IGFkZHIgPSBwcm9jZXNzLmVudi5TSUdOSU5HX0FERFJFU1MgfHwgJ0M5RjIzOTU5MUM1OTNDQjhFRTE5MkIwMDA5QzZBMEYyQzlGOEQ3NjgnO1xuZXhwb3J0IGNvbnN0IGNsaWVudCA9IG5ldyBDbGllbnQodXJsLCBhZGRyKTtcbiJdfQ==
{
"version": "0.34.3",
"version": "0.34.4-dev.dd1462d9",
"name": "@hyperledger/burrow",

@@ -25,2 +25,3 @@ "description": "TypeScript library that calls a Hyperledger Burrow server over GRPC.",

"@grpc/grpc-js": "^1.3.0",
"camel-case": "^4.1.2",
"google-protobuf": "^3.15.8",

@@ -27,0 +28,0 @@ "sha3": "^2.1.4",

SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc