From 581cc4ac6b7a159d6ebcd00278cc107c8a101fa0 Mon Sep 17 00:00:00 2001 From: Andreas Hauschild Date: Fri, 27 May 2022 20:18:17 +0200 Subject: [PATCH] Fixed msg state of executor. The msg object was stored on a global variable in the EthersActionExecutor, which will not wwork because a node gets only one executor instance --- lib/src/EthersActionExecutor.ts | 71 ++++++++++++--------------- nodes/ethers-read-account.js | 7 +-- nodes/lib/EthersActionExecutor.js | 68 +++++++++++-------------- nodes/lib/EthersActionExecutor.js.map | 2 +- package.json | 2 +- 5 files changed, 67 insertions(+), 83 deletions(-) diff --git a/lib/src/EthersActionExecutor.ts b/lib/src/EthersActionExecutor.ts index 6aa38e6..5f2ec7a 100644 --- a/lib/src/EthersActionExecutor.ts +++ b/lib/src/EthersActionExecutor.ts @@ -105,7 +105,7 @@ export class EthersActionExecutor { private subjects: { [key: number]: Subject } = {} private provider: ethers.providers.JsonRpcProvider; - private msg: any; + constructor(private credentials: BaseCredentials, private rpc: string, private node: any, private output?: OutputMapping) { this.provider = new ethers.providers.JsonRpcProvider(rpc); @@ -113,7 +113,6 @@ export class EthersActionExecutor { async executeRead(a: ReadAction, msg: any): Promise { this.node.status({}); - this.setMsg(msg); if (a.type === ActionType.READ_CONTRACT) { try { const action = a as ReadContractAction @@ -126,9 +125,9 @@ export class EthersActionExecutor { const result = await contract[method](...action.params) this.node.status({fill: "green", shape: "ring", text: `success`}); - this.setOutput(result); + this.setOutput(result,msg); } catch (error) { - this.node.error(error, this.msg) + this.node.error(error, msg) this.node.status({fill: "red", shape: "ring", text: `failed`}); } } else if (a.type === ActionType.READ_ACCOUNT) { @@ -143,15 +142,15 @@ export class EthersActionExecutor { shape: "ring", text: `Balance: ${ethers.utils.formatEther(result.toString())}` }); - this.setOutput(result); + this.setOutput(result,msg); } else if (action.method === 'transactionCount') { this.node.status({fill: "yellow", shape: "ring", text: "reading"}); const result = await this.provider.getTransactionCount(action.accountAddress); this.node.status({fill: "green", shape: "ring", text: `Tx Count: ${result}`}); - this.setOutput(result); + this.setOutput(result,msg); } } catch (error) { - this.node.error(error, this.msg) + this.node.error(error, msg) this.node.status({fill: "red", shape: "ring", text: `failed`}); } } else if (a.type === ActionType.READ_CONTRACT_EVENT) { @@ -204,14 +203,14 @@ export class EthersActionExecutor { this.node.status({fill: "yellow", shape: "ring", text: status}); console.log(status) if (events.length > 0) { - this.setOutput(events); + this.setOutput(events,msg); } next += range } this.node.status({fill: "green", shape: "ring", text: status}); } catch (error) { - this.node.error(error, this.msg) + this.node.error(error, msg) this.node.status({fill: "red", shape: "ring", text: `failed`}); } @@ -221,7 +220,6 @@ export class EthersActionExecutor { execute(action: ModifyAction, msg: any) { this.node.status({}); - this.setMsg(msg); if (this.credentials.type === CredentialType.MNEMONIC && action.hierarchicalDeterministicWalletIndex == null) { this.node.error(`Node use credentials of type '${CredentialType.MNEMONIC}', but the action does not provide a 'hierarchicalDeterministicWalletIndex'. Action will not be executed!`) return; @@ -235,9 +233,9 @@ export class EthersActionExecutor { const wallet = ethers.Wallet.fromMnemonic((this.credentials as MnemonicCredentials).mnemonic, path).connect(this.provider); this.wallets[action.hierarchicalDeterministicWalletIndex] = wallet; this.subjects[action.hierarchicalDeterministicWalletIndex] = new Subject(); - this.subscribeTransferHandler(this.subjects[action.hierarchicalDeterministicWalletIndex]); - this.subscribeDeployContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex]) - this.subscribeWriteContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex]) + this.subscribeTransferHandler(this.subjects[action.hierarchicalDeterministicWalletIndex],msg); + this.subscribeDeployContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex],msg) + this.subscribeWriteContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex],msg) } this.subjects[action.hierarchicalDeterministicWalletIndex].next(action); @@ -251,9 +249,9 @@ export class EthersActionExecutor { const wallet = new ethers.Wallet((this.credentials as PrivateKeyCredentials).privateKey).connect(this.provider); this.wallets[0] = wallet; this.subjects[0] = new Subject(); - this.subscribeTransferHandler(this.subjects[0]); - this.subscribeDeployContractHandler(this.subjects[0]); - this.subscribeWriteContractHandler(this.subjects[0]); + this.subscribeTransferHandler(this.subjects[0],msg); + this.subscribeDeployContractHandler(this.subjects[0],msg); + this.subscribeWriteContractHandler(this.subjects[0],msg); } this.subjects[0].next(action); } @@ -262,7 +260,7 @@ export class EthersActionExecutor { } - private subscribeDeployContractHandler(subject: Subject) { + private subscribeDeployContractHandler(subject: Subject, msg:any) { subject.pipe(filter(a => a != null && a.type === ActionType.DEPLOY_CONTRACT), concatMap(async a => { try { @@ -283,22 +281,22 @@ export class EthersActionExecutor { this.node.status({fill: "green", shape: "ring", text: `deployed ${contract.address}`}); return {txReceipt, action, contract} as any }).catch(e => { - this.node.error(e, this.msg) + this.node.error(e, msg) this.node.status({fill: "red", shape: "ring", text: `failed`}); }); } catch (e) { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({fill: "red", shape: "ring", text: `failed`}); return undefined; } }) ).subscribe(result => { this.node.log(`Deployed contract to '${result?.contract?.address}'`) - this.setOutput(result?.txReceipt); + this.setOutput(result?.txReceipt,msg); }) } - private subscribeWriteContractHandler(subject: Subject) { + private subscribeWriteContractHandler(subject: Subject, msg:any) { subject.pipe(filter(a => a != null && a.type === ActionType.WRITE_CONTRACT), concatMap(async a => { @@ -325,11 +323,11 @@ export class EthersActionExecutor { this.node.status({fill: "green", shape: "ring", text: `success`}); return {txReceipt, action, contract} }).catch(e => { - this.node.error(e, this.msg) + this.node.error(e, msg) this.node.status({fill: "red", shape: "ring", text: `failed`}); }); } catch (e) { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({fill: "red", shape: "ring", text: `failed`}); return undefined; } @@ -337,12 +335,12 @@ export class EthersActionExecutor { ).subscribe(result => { if (result) { this.node.log(`executed method '${result?.action.method}' with params '${result?.action.params}' on contract '${result?.contract.address} with tx: ${result?.txReceipt?.transactionHash}'`) - this.setOutput(result?.txReceipt); + this.setOutput(result?.txReceipt,msg); } }) } - private subscribeTransferHandler(subject: Subject) { + private subscribeTransferHandler(subject: Subject,msg:any) { subject.pipe(filter(a => a != null && a.type === ActionType.TRANSFER), concatMap(async a => { try { @@ -361,11 +359,11 @@ export class EthersActionExecutor { return this.provider.waitForTransaction(tx.hash).then(txReceipt => { return {txReceipt, action} }).catch(e => { - this.node.error(e, this.msg) + this.node.error(e, msg) this.node.status({fill: "red", shape: "ring", text: `failed`}); }); } catch (e) { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({fill: "red", shape: "ring", text: `failed`}); return undefined; } @@ -375,40 +373,33 @@ export class EthersActionExecutor { const log = `Transferred '${result?.action?.amount}' from: '${result?.txReceipt?.from}' to '${result?.txReceipt?.to}'`; this.node.log(log) this.node.status({fill: "green", shape: "ring", text: log}); - this.setOutput(result?.txReceipt); + this.setOutput(result?.txReceipt,msg); } }); } - private setOutput(result: any): void { + private setOutput(result: any,msg:any): void { if (this.output) { switch (this.output.context) { case "msg": { - this.msg[this.output!?.key] = result; - this.node.send(this.msg); + msg[this.output!?.key] = result; + this.node.send(msg); break; } case "flow": { this.node.context().flow.set(this.output.key, result); - this.node.send(this.msg); + this.node.send(msg); break; } case "global": { this.node.context().global.set(this.output.key, result); - this.node.send(this.msg); + this.node.send(msg); break; } } } } - private setMsg(msg: any): void { - this.msg = msg; - if (!this.msg) { - throw Error("can not execute Read. Message need to be provided") - } - } - private fn(num: string | number) { return num.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.') } diff --git a/nodes/ethers-read-account.js b/nodes/ethers-read-account.js index eabbec6..7db87cb 100644 --- a/nodes/ethers-read-account.js +++ b/nodes/ethers-read-account.js @@ -14,15 +14,16 @@ module.exports = function (RED) { context: this.outputType, key: this.output }); - node.on('input', function (msg) { + node.on('input', async function (msg) { const accountAddress = RED.util.evaluateNodeProperty(config.accountAddress, config.accountAddressType || "str", node, msg) const method = config.method const action = { - type:ActionType.READ_ACCOUNT, + type: ActionType.READ_ACCOUNT, accountAddress, method } - ethersActionExecutor.executeRead(action,msg); + + await ethersActionExecutor.executeRead(action, msg); }); } diff --git a/nodes/lib/EthersActionExecutor.js b/nodes/lib/EthersActionExecutor.js index fea9361..302b01f 100644 --- a/nodes/lib/EthersActionExecutor.js +++ b/nodes/lib/EthersActionExecutor.js @@ -60,7 +60,6 @@ class EthersActionExecutor { } async executeRead(a, msg) { this.node.status({}); - this.setMsg(msg); if (a.type === ActionType.READ_CONTRACT) { try { const action = a; @@ -70,10 +69,10 @@ class EthersActionExecutor { method = method.replace(/\s/g, ''); const result = await contract[method](...action.params); this.node.status({ fill: "green", shape: "ring", text: `success` }); - this.setOutput(result); + this.setOutput(result, msg); } catch (error) { - this.node.error(error, this.msg); + this.node.error(error, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); } } @@ -88,17 +87,17 @@ class EthersActionExecutor { shape: "ring", text: `Balance: ${ethers.utils.formatEther(result.toString())}` }); - this.setOutput(result); + this.setOutput(result, msg); } else if (action.method === 'transactionCount') { this.node.status({ fill: "yellow", shape: "ring", text: "reading" }); const result = await this.provider.getTransactionCount(action.accountAddress); this.node.status({ fill: "green", shape: "ring", text: `Tx Count: ${result}` }); - this.setOutput(result); + this.setOutput(result, msg); } } catch (error) { - this.node.error(error, this.msg); + this.node.error(error, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); } } @@ -150,21 +149,20 @@ class EthersActionExecutor { this.node.status({ fill: "yellow", shape: "ring", text: status }); console.log(status); if (events.length > 0) { - this.setOutput(events); + this.setOutput(events, msg); } next += range; } this.node.status({ fill: "green", shape: "ring", text: status }); } catch (error) { - this.node.error(error, this.msg); + this.node.error(error, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); } } } execute(action, msg) { this.node.status({}); - this.setMsg(msg); if (this.credentials.type === CredentialType.MNEMONIC && action.hierarchicalDeterministicWalletIndex == null) { this.node.error(`Node use credentials of type '${CredentialType.MNEMONIC}', but the action does not provide a 'hierarchicalDeterministicWalletIndex'. Action will not be executed!`); return; @@ -178,9 +176,9 @@ class EthersActionExecutor { const wallet = ethers.Wallet.fromMnemonic(this.credentials.mnemonic, path).connect(this.provider); this.wallets[action.hierarchicalDeterministicWalletIndex] = wallet; this.subjects[action.hierarchicalDeterministicWalletIndex] = new rxjs_1.Subject(); - this.subscribeTransferHandler(this.subjects[action.hierarchicalDeterministicWalletIndex]); - this.subscribeDeployContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex]); - this.subscribeWriteContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex]); + this.subscribeTransferHandler(this.subjects[action.hierarchicalDeterministicWalletIndex], msg); + this.subscribeDeployContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex], msg); + this.subscribeWriteContractHandler(this.subjects[action.hierarchicalDeterministicWalletIndex], msg); } this.subjects[action.hierarchicalDeterministicWalletIndex].next(action); } @@ -194,15 +192,15 @@ class EthersActionExecutor { const wallet = new ethers.Wallet(this.credentials.privateKey).connect(this.provider); this.wallets[0] = wallet; this.subjects[0] = new rxjs_1.Subject(); - this.subscribeTransferHandler(this.subjects[0]); - this.subscribeDeployContractHandler(this.subjects[0]); - this.subscribeWriteContractHandler(this.subjects[0]); + this.subscribeTransferHandler(this.subjects[0], msg); + this.subscribeDeployContractHandler(this.subjects[0], msg); + this.subscribeWriteContractHandler(this.subjects[0], msg); } this.subjects[0].next(action); } } } - subscribeDeployContractHandler(subject) { + subscribeDeployContractHandler(subject, msg) { subject.pipe((0, rxjs_1.filter)(a => a != null && a.type === ActionType.DEPLOY_CONTRACT), (0, rxjs_1.concatMap)(async (a) => { try { let walletIndex = !a.hierarchicalDeterministicWalletIndex ? 0 : a.hierarchicalDeterministicWalletIndex; @@ -217,22 +215,22 @@ class EthersActionExecutor { this.node.status({ fill: "green", shape: "ring", text: `deployed ${contract.address}` }); return { txReceipt, action, contract }; }).catch(e => { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); }); } catch (e) { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); return undefined; } })).subscribe(result => { var _a; this.node.log(`Deployed contract to '${(_a = result === null || result === void 0 ? void 0 : result.contract) === null || _a === void 0 ? void 0 : _a.address}'`); - this.setOutput(result === null || result === void 0 ? void 0 : result.txReceipt); + this.setOutput(result === null || result === void 0 ? void 0 : result.txReceipt, msg); }); } - subscribeWriteContractHandler(subject) { + subscribeWriteContractHandler(subject, msg) { subject.pipe((0, rxjs_1.filter)(a => a != null && a.type === ActionType.WRITE_CONTRACT), (0, rxjs_1.concatMap)(async (a) => { try { let walletIndex = !a.hierarchicalDeterministicWalletIndex ? 0 : a.hierarchicalDeterministicWalletIndex; @@ -254,12 +252,12 @@ class EthersActionExecutor { this.node.status({ fill: "green", shape: "ring", text: `success` }); return { txReceipt, action, contract }; }).catch(e => { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); }); } catch (e) { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); return undefined; } @@ -267,11 +265,11 @@ class EthersActionExecutor { var _a; if (result) { this.node.log(`executed method '${result === null || result === void 0 ? void 0 : result.action.method}' with params '${result === null || result === void 0 ? void 0 : result.action.params}' on contract '${result === null || result === void 0 ? void 0 : result.contract.address} with tx: ${(_a = result === null || result === void 0 ? void 0 : result.txReceipt) === null || _a === void 0 ? void 0 : _a.transactionHash}'`); - this.setOutput(result === null || result === void 0 ? void 0 : result.txReceipt); + this.setOutput(result === null || result === void 0 ? void 0 : result.txReceipt, msg); } }); } - subscribeTransferHandler(subject) { + subscribeTransferHandler(subject, msg) { subject.pipe((0, rxjs_1.filter)(a => a != null && a.type === ActionType.TRANSFER), (0, rxjs_1.concatMap)(async (a) => { try { let walletIndex = !a.hierarchicalDeterministicWalletIndex ? 0 : a.hierarchicalDeterministicWalletIndex; @@ -288,12 +286,12 @@ class EthersActionExecutor { return this.provider.waitForTransaction(tx.hash).then(txReceipt => { return { txReceipt, action }; }).catch(e => { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); }); } catch (e) { - this.node.error(e, this.msg); + this.node.error(e, msg); this.node.status({ fill: "red", shape: "ring", text: `failed` }); return undefined; } @@ -303,38 +301,32 @@ class EthersActionExecutor { const log = `Transferred '${(_a = result === null || result === void 0 ? void 0 : result.action) === null || _a === void 0 ? void 0 : _a.amount}' from: '${(_b = result === null || result === void 0 ? void 0 : result.txReceipt) === null || _b === void 0 ? void 0 : _b.from}' to '${(_c = result === null || result === void 0 ? void 0 : result.txReceipt) === null || _c === void 0 ? void 0 : _c.to}'`; this.node.log(log); this.node.status({ fill: "green", shape: "ring", text: log }); - this.setOutput(result === null || result === void 0 ? void 0 : result.txReceipt); + this.setOutput(result === null || result === void 0 ? void 0 : result.txReceipt, msg); } }); } - setOutput(result) { + setOutput(result, msg) { var _a; if (this.output) { switch (this.output.context) { case "msg": { - this.msg[(_a = this.output) === null || _a === void 0 ? void 0 : _a.key] = result; - this.node.send(this.msg); + msg[(_a = this.output) === null || _a === void 0 ? void 0 : _a.key] = result; + this.node.send(msg); break; } case "flow": { this.node.context().flow.set(this.output.key, result); - this.node.send(this.msg); + this.node.send(msg); break; } case "global": { this.node.context().global.set(this.output.key, result); - this.node.send(this.msg); + this.node.send(msg); break; } } } } - setMsg(msg) { - this.msg = msg; - if (!this.msg) { - throw Error("can not execute Read. Message need to be provided"); - } - } fn(num) { return num.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.'); } diff --git a/nodes/lib/EthersActionExecutor.js.map b/nodes/lib/EthersActionExecutor.js.map index b0fa47e..2aac5a7 100644 --- a/nodes/lib/EthersActionExecutor.js.map +++ b/nodes/lib/EthersActionExecutor.js.map @@ -1 +1 @@ -{"version":3,"file":"EthersActionExecutor.js","sourceRoot":"","sources":["../../lib/src/EthersActionExecutor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAgD;AAChD,+CAAiC;AAIjC,SAAgB,wBAAwB,CAAC,QAAgB,EAAE,OAAe;IACtE,OAAO,EAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAC,CAAC;AAC9D,CAAC;AAFD,4DAEC;AAED,SAAgB,0BAA0B,CAAC,UAAkB,EAAE,OAAe;IAC1E,OAAO,EAAC,IAAI,EAAE,cAAc,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,EAAC,CAAC;AACnE,CAAC;AAFD,gEAEC;AAgBD,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,uCAAqB,CAAA;IACrB,6CAA2B,CAAA;AAC/B,CAAC,EAHW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAGzB;AAED,IAAY,UAOX;AAPD,WAAY,UAAU;IAClB,mCAAqB,CAAA;IACrB,iDAAmC,CAAA;IACnC,+CAAiC,CAAA;IACjC,6CAA+B,CAAA;IAC/B,yDAA2C,CAAA;IAC3C,2CAA6B,CAAA;AACjC,CAAC,EAPW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAOrB;AA+DD,MAAa,oBAAoB;IAO7B,YAAoB,WAA4B,EAAU,GAAW,EAAU,IAAS,EAAU,MAAsB;QAApG,gBAAW,GAAX,WAAW,CAAiB;QAAU,QAAG,GAAH,GAAG,CAAQ;QAAU,SAAI,GAAJ,IAAI,CAAK;QAAU,WAAM,GAAN,MAAM,CAAgB;QANhH,YAAO,GAA4C,EAAE,CAAA;QACrD,aAAQ,GAA6C,EAAE,CAAA;QAM3D,IAAI,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,CAAa,EAAE,GAAQ;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,aAAa,EAAE;YACrC,IAAI;gBACA,MAAM,MAAM,GAAG,CAAuB,CAAA;gBACtC,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAExF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;gBAEnE,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;gBAC1B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAEnC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;gBACvD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;gBAClE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;aAC1B;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;gBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;aAClE;SACJ;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,YAAY,EAAE;YAC3C,IAAI;gBACA,MAAM,MAAM,GAAG,CAAsB,CAAC;gBAEtC,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE;oBAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;oBACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;oBACrE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,MAAM;wBACb,IAAI,EAAE,YAAY,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE;qBAClE,CAAC,CAAC;oBACH,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;iBAC1B;qBAAM,IAAI,MAAM,CAAC,MAAM,KAAK,kBAAkB,EAAE;oBAC7C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;oBACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;oBAC9E,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,MAAM,EAAE,EAAC,CAAC,CAAC;oBAC9E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;iBAC1B;aACJ;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;gBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;aAClE;SACJ;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,mBAAmB,EAAE;YAClD,IAAI;gBACA,MAAM,MAAM,GAAG,CAAsB,CAAA;gBACrC,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACxF,IAAI,EAAE,CAAC;gBACP,IAAG,MAAM,CAAC,kBAAkB,EAAC;oBACzB,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;oBAC1E,IAAI,CAAC,EAAE,EAAE;wBACL,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAA;qBACrF;iBACJ;gBAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;gBACnE,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;gBACxB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAEjC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;gBAEvC,IAAI,MAAM,GAAG,EAAE,CAAA;gBACf,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,EAAE;oBACf,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAiB,CAAA,CAAC,gDAAgD;iBAC3G;gBACD,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACrC,IAAI,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACnD,IAAG,MAAM,CAAC,SAAS,EAAC;oBAChB,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC;iBAC3B;qBAAM,IAAG,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,WAAW,EAAC;oBACtB,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC;iBACzB;gBAED,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC/D,IAAI,KAAK,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC1D,IAAI,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;gBACvB,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,KAAK,YAAY,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACtI,IAAI,IAAI,GAAG,IAAI,CAAC;gBAChB,IAAI,MAAW,CAAC;gBAChB,IAAI,MAAM,GAAW,EAAE,CAAC;gBACxB,IAAI,KAAK,GAAG,CAAC,CAAC;gBACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC7B,IAAI,kBAAkB,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE;wBACrC,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,CAAC,CAAC;qBACnE;yBAAM;wBACH,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,CAAC,CAAC;qBACnE;oBACD,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC;oBACvB,MAAM,GAAG,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,aAAa,KAAK,GAAG,CAAC;oBAC3F,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC;oBAChE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;oBACnB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;wBACnB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;qBAC1B;oBACD,IAAI,IAAI,KAAK,CAAA;iBAChB;gBAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC;aAClE;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;gBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;aAClE;SAEJ;IACL,CAAC;IAGD,OAAO,CAAC,MAAoB,EAAE,GAAQ;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,cAAc,CAAC,QAAQ,IAAI,MAAM,CAAC,oCAAoC,IAAI,IAAI,EAAE;YAC1G,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,iCAAiC,cAAc,CAAC,QAAQ,2GAA2G,CAAC,CAAA;YACpL,OAAO;SACV;QAED,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;YAC3B,KAAK,cAAc,CAAC,QAAQ;gBAAG;oBAC3B,IAAI,MAAM,CAAC,oCAAoC,IAAI,IAAI,IAAI,MAAM,CAAC,oCAAoC,IAAI,CAAC,EAAE;wBACzG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,oCAAoC,CAAC,EAAE;4BAC5D,MAAM,IAAI,GAAG,kBAAkB,MAAM,CAAC,oCAAoC,EAAE,CAAA;4BAC5E,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAE,IAAI,CAAC,WAAmC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BAC3H,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,oCAAoC,CAAC,GAAG,MAAM,CAAC;4BACnE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oCAAoC,CAAC,GAAG,IAAI,cAAO,EAAgB,CAAC;4BACzF,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;4BAC1F,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAA;4BAC/F,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAA;yBACjG;wBACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAE3E;yBAAM;wBACH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,qCAAqC,MAAM,CAAC,IAAI,uDAAuD,CAAC,CAAA;qBAC3H;iBACJ;gBACG,MAAM;YACV,KAAK,cAAc,CAAC,WAAW,CAAC,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBAClB,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAE,IAAI,CAAC,WAAqC,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAChH,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;oBACzB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,cAAO,EAAgB,CAAC;oBAC/C,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBAChD,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtD,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;iBACxD;gBACD,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACjC;SACJ;IAGL,CAAC;IAEO,8BAA8B,CAAC,OAA8B;QACjE,OAAO,CAAC,IAAI,CAAC,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,eAAe,CAAC,EACxE,IAAA,gBAAS,EAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YAChB,IAAI;gBACA,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oCAAoC,CAAC;gBACvG,MAAM,MAAM,GAAG,CAAoC,CAAC;gBACpD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAEzC,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAEhF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAC,CAAC,CAAC;gBAErE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;gBAEtE,MAAM,EAAE,GAAG,QAAQ,CAAC,iBAAiB,CAAA;gBACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAuB,QAAQ,CAAC,OAAO,iBAAiB,EAAE,CAAC,IAAI,gBAAgB,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;gBAE7J,OAAO,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;oBACtD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,QAAQ,CAAC,OAAO,EAAE,EAAC,CAAC,CAAC;oBACvF,OAAO,EAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAQ,CAAA;gBAC/C,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;gBACnE,CAAC,CAAC,CAAC;aACN;YAAC,OAAO,CAAC,EAAE;gBACR,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC/D,OAAO,SAAS,CAAC;aACpB;QACL,CAAC,CAAC,CACL,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;;YACjB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,yBAAyB,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,0CAAE,OAAO,GAAG,CAAC,CAAA;YACpE,IAAI,CAAC,SAAS,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAC,CAAC;QACtC,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,6BAA6B,CAAC,OAA8B;QAEhE,OAAO,CAAC,IAAI,CAAC,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,cAAc,CAAC,EACvE,IAAA,gBAAS,EAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YAChB,IAAI;gBACA,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oCAAoC,CAAC;gBACvG,MAAM,MAAM,GAAG,CAAmC,CAAC;gBACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAEzC,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAEjF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,MAAM,CAAC,MAAM,kBAAkB,MAAM,CAAC,MAAM,kBAAkB,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAA;gBACnH,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;gBACnE,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;gBAC1B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAEnC,IAAI,IAA0C,CAAC;gBAC/C,IAAI,MAAM,CAAC,OAAO,EAAE;oBAChB,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAC,CAAC,CAAC;iBACrG;qBAAM;oBACH,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;iBACnD;gBAED,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;oBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;oBAClE,OAAO,EAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAC,CAAA;gBACxC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;gBACnE,CAAC,CAAC,CAAC;aACN;YAAC,OAAO,CAAC,EAAE;gBACR,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC/D,OAAO,SAAS,CAAC;aACpB;QACL,CAAC,CAAC,CACL,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;;YACjB,IAAI,MAAM,EAAE;gBACR,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,MAAM,kBAAkB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,MAAM,kBAAkB,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC,OAAO,aAAa,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,0CAAE,eAAe,GAAG,CAAC,CAAA;gBAC3L,IAAI,CAAC,SAAS,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAC,CAAC;aACrC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,wBAAwB,CAAC,OAA8B;QAC3D,OAAO,CAAC,IAAI,CAAC,IAAA,aAAM,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,QAAQ,CAAC,EACjE,IAAA,gBAAS,EAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YAChB,IAAI;gBACA,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oCAAoC,CAAC;gBACvG,MAAM,MAAM,GAAG,CAA8B,CAAC;gBAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAEzC,MAAM,GAAG,GAAG,aAAa,MAAM,CAAC,MAAM,YAAY,MAAM,CAAC,OAAO,SAAS,MAAM,CAAC,EAAE,GAAG,CAAA;gBACrF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAClB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAC,CAAC,CAAC;gBAC7D,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC;oBACpC,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,IAAI,EAAE,MAAM,CAAC,OAAO;oBACpB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;iBAChD,CAAC,CAAA;gBACF,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;oBAC9D,OAAO,EAAC,SAAS,EAAE,MAAM,EAAC,CAAA;gBAC9B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;oBAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;gBACnE,CAAC,CAAC,CAAC;aACN;YAAC,OAAO,CAAC,EAAE;gBACR,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAC,CAAC,CAAC;gBAC/D,OAAO,SAAS,CAAC;aACpB;QACL,CAAC,CAAC,CACL,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;;YACjB,IAAI,MAAM,EAAE;gBACR,MAAM,GAAG,GAAG,gBAAgB,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,MAAM,YAAY,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,0CAAE,IAAI,SAAS,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,0CAAE,EAAE,GAAG,CAAC;gBACvH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAClB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAC,CAAC,CAAC;gBAC5D,IAAI,CAAC,SAAS,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,CAAC,CAAC;aACrC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,SAAS,CAAC,MAAW;;QACzB,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,QAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;gBACzB,KAAK,KAAK,CAAC,CAAC;oBACR,IAAI,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,MAAO,0CAAE,GAAG,CAAC,GAAG,MAAM,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM;iBACT;gBACD,KAAK,MAAM,CAAC,CAAC;oBACT,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBACtD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM;iBACT;gBACD,KAAK,QAAQ,CAAC,CAAC;oBACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBACxD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM;iBACT;aACJ;SACJ;IACL,CAAC;IAEO,MAAM,CAAC,GAAQ;QACnB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,MAAM,KAAK,CAAC,mDAAmD,CAAC,CAAA;SACnE;IACL,CAAC;IAEO,EAAE,CAAC,GAAoB;QAC3B,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;IACnE,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,MAAc,EAAE,EAAU,EAAE,oCAA6C;QAClG,OAAO;YACH,IAAI,EAAE,UAAU,CAAC,QAAQ;YACzB,MAAM;YACN,EAAE;YACF,oCAAoC;SACvC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAC,GAAQ,EAAE,QAAa,EAAE,oBAA0B,EAAE,oCAA6C;QACjI,OAAO;YACH,IAAI,EAAE,UAAU,CAAC,eAAe;YAChC,GAAG;YACH,QAAQ;YACR,oBAAoB;YACpB,oCAAoC;SACvC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,mBAAmB,CAAC,GAAQ,EAAE,QAAgB,EAAE,eAAuB,EAAE,MAAc,EAAE,OAAe,EAAE,MAAY,EAAE,oCAA6C;QAC/K,OAAO;YACH,IAAI,EAAE,UAAU,CAAC,cAAc;YAC/B,GAAG;YACH,QAAQ;YACR,eAAe;YACf,MAAM;YACN,OAAO;YACP,MAAM;YACN,oCAAoC;SACvC,CAAA;IACL,CAAC;IAEM,MAAM,CAAC,kBAAkB,CAAC,GAAQ,EAAE,QAAgB,EAAE,eAAuB,EAAE,MAAc,EAAE,MAAY;QAC9G,OAAO;YACH,IAAI,EAAE,UAAU,CAAC,aAAa;YAC9B,GAAG;YACH,QAAQ;YACR,eAAe;YACf,MAAM;YACN,MAAM;SACT,CAAA;IACL,CAAC;CAEJ;AApWD,oDAoWC"} \ No newline at end of file +{"version":3,"file":"EthersActionExecutor.js","sourceRoot":"","sources":["../../lib/src/EthersActionExecutor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index da0d872..c9a38f4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@andreashauschild/node-red-contrib-ethers-node", - "version": "0.0.27", + "version": "0.0.28", "description": "Node-Red noded for wrapping ethers functions.", "main": "index.js", "keywords": [