From 41786765796dd6667208096db05e2502b3f18578 Mon Sep 17 00:00:00 2001 From: nowooj Date: Thu, 26 Feb 2026 16:17:23 +0900 Subject: [PATCH 1/8] refactor: update access control and token transfer methods in ERC20 contracts --- contracts/hardhat.config.js | 11 + contracts/package-lock.json | 214 ++++++++++++------ contracts/package.json | 14 +- .../solidity/ERC20MinterBurnerDecimals.sol | 18 +- ...C20RecursiveNonRevertingPrecompileCall.sol | 12 +- .../ERC20RecursiveRevertingPrecompileCall.sol | 12 +- .../solidity/ERC20WithNativeTransfers.sol | 12 +- .../solidity/evmd/eips/testdata/Counter.sol | 15 -- .../evmd/eips/testdata/CounterFactory.sol | 25 -- .../solidity/precompiles/ics02/ICS02I.sol | 63 ++++++ .../smartwallet/SimpleSmartWallet.sol | 0 .../tests/contracts/7702/DelegationTarget.sol | 151 ------------ .../contracts/7702/MaliciousDeployer.sol | 77 ------- .../entrypoint/SimpleEntryPoint.sol | 18 +- .../smartwallet/SimpleSmartWallet.sol | 3 +- .../ERC20DirectBalanceManipulation.sol | 9 +- .../keeper/testdata/ERC20MaliciousDelayed.sol | 9 +- .../compile_smart_contracts.py | 8 +- .../smartwallet/SimpleSmartWallet.sol | 0 .../entrypoint/SimpleEntryPoint.sol | 18 +- .../smartwallet/SimpleSmartWallet.sol | 3 +- .../ERC20DirectBalanceManipulation.sol | 9 +- .../keeper/testdata/ERC20MaliciousDelayed.sol | 9 +- 23 files changed, 287 insertions(+), 423 deletions(-) delete mode 100644 contracts/solidity/evmd/eips/testdata/Counter.sol delete mode 100644 contracts/solidity/evmd/eips/testdata/CounterFactory.sol create mode 100644 contracts/solidity/precompiles/ics02/ICS02I.sol create mode 100644 contracts/solidity/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol delete mode 100644 contracts/solidity/tests/contracts/7702/DelegationTarget.sol delete mode 100644 contracts/solidity/tests/contracts/7702/MaliciousDeployer.sol create mode 100644 solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol diff --git a/contracts/hardhat.config.js b/contracts/hardhat.config.js index 7be091910..b23eed303 100644 --- a/contracts/hardhat.config.js +++ b/contracts/hardhat.config.js @@ -12,6 +12,17 @@ export default { viaIR: true, }, }, + // This version is required to compile @account-abstraction/contracts (PackedUserOperation, IAccount use ^0.8.28). + { + version: "0.8.28", + settings: { + optimizer: { + enabled: true, + runs: 100, + }, + viaIR: true, + }, + }, // This version is required to compile the werc9 contract. { version: "0.4.22", diff --git a/contracts/package-lock.json b/contracts/package-lock.json index 7438800f2..866fee971 100644 --- a/contracts/package-lock.json +++ b/contracts/package-lock.json @@ -1,26 +1,29 @@ { "name": "cosmos-evm-contracts", - "version": "2.0.0", + "version": "0.0.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "cosmos-evm-contracts", - "version": "2.0.0", + "version": "0.0.1", "license": "ISC", - "dependencies": { - "@account-abstraction/contracts": "^0.6.0" - }, "devDependencies": { - "@openzeppelin/contracts": "^4.9.6", - "hardhat": "^3.0.15" + "@account-abstraction/contracts": "^0.8.0", + "@openzeppelin/contracts": "^5.4.0", + "hardhat": "^3.1.10" } }, "node_modules/@account-abstraction/contracts": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@account-abstraction/contracts/-/contracts-0.6.0.tgz", - "integrity": "sha512-8ooRJuR7XzohMDM4MV34I12Ci2bmxfE9+cixakRL7lA4BAwJKQ3ahvd8FbJa9kiwkUPCUNtj+/zxDQWYYalLMQ==", - "license": "MIT" + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@account-abstraction/contracts/-/contracts-0.8.0.tgz", + "integrity": "sha512-8krPx/gpnoT+5xAroagVCbeA7FbUigMZWXFKKPm+oghyr29Dksssdx5sI7xGv9212i4JPaDDUGFk58dpuwVgHA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@openzeppelin/contracts": "^5.1.0", + "@uniswap/v3-periphery": "^1.4.3" + } }, "node_modules/@esbuild/aix-ppc64": { "version": "0.25.12", @@ -491,28 +494,28 @@ } }, "node_modules/@nomicfoundation/edr": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.12.0-next.14.tgz", - "integrity": "sha512-MGHY2x7JaNdkqlQxFBYoM7Miw2EqsQrI3ReVZMwLP5mULSRTAOnt3hCw6cnjXxGi991HnejNAedJofke6OdqqA==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.12.0-next.24.tgz", + "integrity": "sha512-/NwB9yX7uBs/FIJKHBZo2hVhP7g3v6LbE21JvTLvshgb+XscyaRRUmzB//ankxLGJ1TehtXAf/Qh/a19vgpiig==", "dev": true, "license": "MIT", "dependencies": { - "@nomicfoundation/edr-darwin-arm64": "0.12.0-next.14", - "@nomicfoundation/edr-darwin-x64": "0.12.0-next.14", - "@nomicfoundation/edr-linux-arm64-gnu": "0.12.0-next.14", - "@nomicfoundation/edr-linux-arm64-musl": "0.12.0-next.14", - "@nomicfoundation/edr-linux-x64-gnu": "0.12.0-next.14", - "@nomicfoundation/edr-linux-x64-musl": "0.12.0-next.14", - "@nomicfoundation/edr-win32-x64-msvc": "0.12.0-next.14" + "@nomicfoundation/edr-darwin-arm64": "0.12.0-next.24", + "@nomicfoundation/edr-darwin-x64": "0.12.0-next.24", + "@nomicfoundation/edr-linux-arm64-gnu": "0.12.0-next.24", + "@nomicfoundation/edr-linux-arm64-musl": "0.12.0-next.24", + "@nomicfoundation/edr-linux-x64-gnu": "0.12.0-next.24", + "@nomicfoundation/edr-linux-x64-musl": "0.12.0-next.24", + "@nomicfoundation/edr-win32-x64-msvc": "0.12.0-next.24" }, "engines": { "node": ">= 20" } }, "node_modules/@nomicfoundation/edr-darwin-arm64": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.12.0-next.14.tgz", - "integrity": "sha512-sl0DibKSUOS7JXhUtaQ6FJUY+nk+uq5gx+Fyd9iiqs8awZPNn6KSuvV1EbWCi+yd3mrxgZ/wO8E77C1Dxj4xQA==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.12.0-next.24.tgz", + "integrity": "sha512-lYcD9IM52G0hk/3Sso2Rpdpyfafy3aHH0GsSy/FVog9UrEkmmU14AmccE18/zTL+UyV0yzYMDOmh6y83SD/lbg==", "dev": true, "license": "MIT", "engines": { @@ -520,9 +523,9 @@ } }, "node_modules/@nomicfoundation/edr-darwin-x64": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.12.0-next.14.tgz", - "integrity": "sha512-lfmatc1MSOaw0rDFB+ynnAGz5TWm3hSeY/+zDpPZghMODZelXm4JCqF41CQ6paLsW3X/pXcHM1HUGCUBWeoI/A==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.12.0-next.24.tgz", + "integrity": "sha512-cHDJZlPDpDXJXxQDVM0TGzEuNvV3wW94gipEdjNxZHeC9T2/NU/5GUoQajMJgvCZ6PWDlRMwIBRtM1jC/ny5DA==", "dev": true, "license": "MIT", "engines": { @@ -530,9 +533,9 @@ } }, "node_modules/@nomicfoundation/edr-linux-arm64-gnu": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.12.0-next.14.tgz", - "integrity": "sha512-sWun3PhVgat8d4lg1d5MAXSIsFlSMBzvrpMSDFNOU9hPJEclSHbHBMRcarQuGqwm/5ZBzTwCS25u78A+UATTrg==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.12.0-next.24.tgz", + "integrity": "sha512-G/iln4W79CR9f68+crBZM1kBdmmK3IbQCD4b5u+iqby+H5BOLSPQmjeW9UREK5WSecnv7Oxr/ZTHHRq/w9pUPA==", "dev": true, "license": "MIT", "engines": { @@ -540,9 +543,9 @@ } }, "node_modules/@nomicfoundation/edr-linux-arm64-musl": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.12.0-next.14.tgz", - "integrity": "sha512-omWKioD8fFp7ayCeSDu2CqvG78+oYw8zdVECDwZVmE0jpszRCsTufNYflWRQnlGqH6GqjEUwq2c3yLxFgOTjFg==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.12.0-next.24.tgz", + "integrity": "sha512-wt6UuOutufL3UTSyMiwPOyfRly3uQEFHASXqLsNjgp4qBrm0s+kkyaYpAe8h53lGzZmXIDOAbO0P/fwxnLCnWw==", "dev": true, "license": "MIT", "engines": { @@ -550,9 +553,9 @@ } }, "node_modules/@nomicfoundation/edr-linux-x64-gnu": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.12.0-next.14.tgz", - "integrity": "sha512-vk0s4SaC7s1wa98W24a4zqunTK/yIcSEnsSLRM/Nl+JJs6iqS8tvmnh/BbFINORMBJ065OWc10qw2Lsbu/rxtg==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.12.0-next.24.tgz", + "integrity": "sha512-mHgkUSynINTnnIvZuZymJ4dMqjemGjdrzQ87rP5/SQQGRQVV82uDomSEglp9btSmbBWfPj4r4tWsV+a3844W0w==", "dev": true, "license": "MIT", "engines": { @@ -560,9 +563,9 @@ } }, "node_modules/@nomicfoundation/edr-linux-x64-musl": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.12.0-next.14.tgz", - "integrity": "sha512-/xKQD6c2RXQBIb30iTeh/NrMdYvHs6Nd+2UXS6wxlfX7GzRPOkpVDiDGD7Sda82JI459KH67dADOD6CpX8cpHQ==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.12.0-next.24.tgz", + "integrity": "sha512-E0XNSlPc8Hx5Nhowe5VIvAqVeT+1VUWSRqG0cZtYcpUgJZxTp8p03ojPtbyfjL4T+78GfnpmzkkLhB6S2jZ1FQ==", "dev": true, "license": "MIT", "engines": { @@ -570,9 +573,9 @@ } }, "node_modules/@nomicfoundation/edr-win32-x64-msvc": { - "version": "0.12.0-next.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.12.0-next.14.tgz", - "integrity": "sha512-GZcyGdOoLWnUtfPU+6B1vUi4fwf3bouSRf3xuKFHz3p/WNhpDK+8Esq3UmOmYAZWRgFT0ZR6XUk9H2owGDTVvQ==", + "version": "0.12.0-next.24", + "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.12.0-next.24.tgz", + "integrity": "sha512-PbtY2zWc4k8HK4gVnVbPohJnfrICboo6J91vxTlhnPKCWGvfGbsqLfDUAp91ExHHY+80qRfQnwaLbhJiIqLFGw==", "dev": true, "license": "MIT", "engines": { @@ -580,19 +583,19 @@ } }, "node_modules/@nomicfoundation/hardhat-errors": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-errors/-/hardhat-errors-3.0.5.tgz", - "integrity": "sha512-8Ayqf6hFM1glmrSxrXgX6n2pn5uTlHNxEB8N5Me0DOeOGB67PRIrQdiO+RzUhrNW5YgWUNWBevOLQbW06uQ79g==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-errors/-/hardhat-errors-3.0.7.tgz", + "integrity": "sha512-l4RrzTfJ/WO0B9Te6i9161+pRbCSFXILanmHmgRfS4Bb4pDOjs+0eQf2I2cQrnqcJ6O/bxLvChPTQuad97dmQw==", "dev": true, "license": "MIT", "dependencies": { - "@nomicfoundation/hardhat-utils": "^3.0.1" + "@nomicfoundation/hardhat-utils": "^4.0.0" } }, "node_modules/@nomicfoundation/hardhat-utils": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-utils/-/hardhat-utils-3.0.5.tgz", - "integrity": "sha512-5zkQSuSxkwK7fQxKswJ1GGc/3AuWBSmxA7GhczTPLx28dAXQnubRU8nA48SkCkKesJq5x4TROP+XheSE2VkLUA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-utils/-/hardhat-utils-4.0.0.tgz", + "integrity": "sha512-Deu4od7flcM89K+SEAxmOyn7FFWGiEILrGjoxYl/Gus0tctgpLNaK3M4LIjrJ25ci8LBjGVe3i28XZA4+QGQHQ==", "dev": true, "license": "MIT", "dependencies": { @@ -600,21 +603,28 @@ "debug": "^4.3.2", "env-paths": "^2.2.0", "ethereum-cryptography": "^2.2.1", - "fast-equals": "^5.0.1", + "fast-equals": "^5.4.0", "json-stream-stringify": "^3.1.6", "rfdc": "^1.3.1", "undici": "^6.16.1" } }, - "node_modules/@nomicfoundation/hardhat-zod-utils": { + "node_modules/@nomicfoundation/hardhat-vendored": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-zod-utils/-/hardhat-zod-utils-3.0.1.tgz", - "integrity": "sha512-I6/pyYiS9p2lLkzQuedr1ScMocH+ew8l233xTi+LP92gjEiviJDxselpkzgU01MUM0t6BPpfP8yMO958LDEJVg==", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-vendored/-/hardhat-vendored-3.0.1.tgz", + "integrity": "sha512-jBOAqmEAMJ8zdfiQmTLV+c0IaSyySqkDSJ9spTy8Ts/m/mO8w364TClyfn+p4ZpxBjyX4LMa3NfC402hoDtwCg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@nomicfoundation/hardhat-zod-utils": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-zod-utils/-/hardhat-zod-utils-3.0.2.tgz", + "integrity": "sha512-EtMIhi7jtpeQYd+pRQBNlxthi8OPVr/t32yn+VHHp6nwS5wgXLh6/KpvFZfJj5mBAUbOtogB7YQ4n5fpOeuggA==", "dev": true, "license": "MIT", "dependencies": { - "@nomicfoundation/hardhat-errors": "^3.0.0", - "@nomicfoundation/hardhat-utils": "^3.0.2" + "@nomicfoundation/hardhat-errors": "^3.0.7", + "@nomicfoundation/hardhat-utils": "^4.0.0" }, "peerDependencies": { "zod": "^3.23.8" @@ -802,9 +812,9 @@ } }, "node_modules/@openzeppelin/contracts": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-4.9.6.tgz", - "integrity": "sha512-xSmezSupL+y9VkHZJGDoCBpmnB2ogM13ccaYDWqJTfS3dbuHkgjuwDFUmaFauBCboQMGB/S5UqUl2y54X99BmA==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.6.1.tgz", + "integrity": "sha512-Ly6SlsVJ3mj+b18W3R8gNufB7dTICT105fJhodGAGgyC2oqnBAhqSiNDJ8V8DLY05cCz81GLI0CU5vNYA1EC/w==", "dev": true, "license": "MIT" }, @@ -874,6 +884,60 @@ "@streamparser/json": "^0.0.22" } }, + "node_modules/@uniswap/lib": { + "version": "4.0.1-alpha", + "resolved": "https://registry.npmjs.org/@uniswap/lib/-/lib-4.0.1-alpha.tgz", + "integrity": "sha512-f6UIliwBbRsgVLxIaBANF6w09tYqc6Y/qXdsrbEmXHyFA7ILiKrIwRFXe1yOg8M3cksgVsO9N7yuL2DdCGQKBA==", + "dev": true, + "license": "GPL-3.0-or-later", + "engines": { + "node": ">=10" + } + }, + "node_modules/@uniswap/v2-core": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@uniswap/v2-core/-/v2-core-1.0.1.tgz", + "integrity": "sha512-MtybtkUPSyysqLY2U210NBDeCHX+ltHt3oADGdjqoThZaFRDKwM6k1Nb3F0A3hk5hwuQvytFWhrWHOEq6nVJ8Q==", + "dev": true, + "license": "GPL-3.0-or-later", + "engines": { + "node": ">=10" + } + }, + "node_modules/@uniswap/v3-core": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@uniswap/v3-core/-/v3-core-1.0.1.tgz", + "integrity": "sha512-7pVk4hEm00j9tc71Y9+ssYpO6ytkeI0y7WE9P6UcmNzhxPePwyAxImuhVsTqWK9YFvzgtvzJHi64pBl4jUzKMQ==", + "dev": true, + "license": "BUSL-1.1", + "engines": { + "node": ">=10" + } + }, + "node_modules/@uniswap/v3-periphery": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/@uniswap/v3-periphery/-/v3-periphery-1.4.4.tgz", + "integrity": "sha512-S4+m+wh8HbWSO3DKk4LwUCPZJTpCugIsHrWR86m/OrUyvSqGDTXKFfc2sMuGXCZrD1ZqO3rhQsKgdWg3Hbb2Kw==", + "dev": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "@openzeppelin/contracts": "3.4.2-solc-0.7", + "@uniswap/lib": "^4.0.1-alpha", + "@uniswap/v2-core": "^1.0.1", + "@uniswap/v3-core": "^1.0.0", + "base64-sol": "1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@uniswap/v3-periphery/node_modules/@openzeppelin/contracts": { + "version": "3.4.2-solc-0.7", + "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-3.4.2-solc-0.7.tgz", + "integrity": "sha512-W6QmqgkADuFcTLzHL8vVoNBtkwjvQRpYIAom7KiUNoLKghyx3FgH0GBjt8NRvigV1ZmMOBllvE1By1C+bi8WpA==", + "dev": true, + "license": "MIT" + }, "node_modules/adm-zip": { "version": "0.4.16", "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", @@ -901,6 +965,13 @@ "node": ">=8" } }, + "node_modules/base64-sol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/base64-sol/-/base64-sol-1.0.1.tgz", + "integrity": "sha512-ld3cCNMeXt4uJXmLZBHFGMvVpK9KsLVEhPpFRXnvSVAqABKbuNZg/+dsq3NuM+wxFLb/UrVkz7m1ciWmkMfTbg==", + "dev": true, + "license": "MIT" + }, "node_modules/chalk": { "version": "5.6.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", @@ -1027,9 +1098,9 @@ } }, "node_modules/fast-equals": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.3.3.tgz", - "integrity": "sha512-/boTcHZeIAQ2r/tL11voclBHDeP9WPxLt+tyAbVSyyXuUFyh0Tne7gJZTqGbxnvj79TjLdCXLOY7UIPhyG5MTw==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.4.0.tgz", + "integrity": "sha512-jt2DW/aNFNwke7AUd+Z+e6pz39KO5rzdbbFCg2sGafS4mk13MI7Z8O5z9cADNn5lhGODIgLwug6TZO2ctf7kcw==", "dev": true, "license": "MIT", "engines": { @@ -1065,16 +1136,17 @@ } }, "node_modules/hardhat": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-3.0.15.tgz", - "integrity": "sha512-cXxaeSxFJ+u0MfbvWsS3Gdr7/uP7wjo4xviYcGdu9AKtwY6YsU+v0quK/j1NWmvO1Y4gk350SdZzQw++hJy4LA==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-3.1.10.tgz", + "integrity": "sha512-+J3LmO5j3r8bYRIiImaTT6WtT0EKcR0nfFxWq/bokAKZq7GKYf6ErKSrOuH+gFIqo+CfnrkxcgbPY20P5vuuSQ==", "dev": true, "license": "MIT", "dependencies": { - "@nomicfoundation/edr": "0.12.0-next.14", - "@nomicfoundation/hardhat-errors": "^3.0.4", - "@nomicfoundation/hardhat-utils": "^3.0.5", - "@nomicfoundation/hardhat-zod-utils": "^3.0.1", + "@nomicfoundation/edr": "0.12.0-next.24", + "@nomicfoundation/hardhat-errors": "^3.0.7", + "@nomicfoundation/hardhat-utils": "^4.0.0", + "@nomicfoundation/hardhat-vendored": "^3.0.1", + "@nomicfoundation/hardhat-zod-utils": "^3.0.2", "@nomicfoundation/solidity-analyzer": "^0.1.1", "@sentry/core": "^9.4.0", "adm-zip": "^0.4.16", @@ -1276,9 +1348,9 @@ } }, "node_modules/undici": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.22.0.tgz", - "integrity": "sha512-hU/10obOIu62MGYjdskASR3CUAiYaFTtC9Pa6vHyf//mAipSvSQg6od2CnJswq7fvzNS3zJhxoRkgNVaHurWKw==", + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.23.0.tgz", + "integrity": "sha512-VfQPToRA5FZs/qJxLIinmU59u0r7LXqoJkCzinq3ckNJp3vKEh7jTWN589YQ5+aoAC/TGRLyJLCPKcLQbM8r9g==", "dev": true, "license": "MIT", "engines": { diff --git a/contracts/package.json b/contracts/package.json index 3acaf6ee2..07c4fe62f 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -1,10 +1,11 @@ { "name": "cosmos-evm-contracts", - "version": "2.0.0", + "version": "0.0.1", "description": "A collection of smart contracts used in the development of the Cosmos EVM blockchain.", "devDependencies": { - "@openzeppelin/contracts": "^4.9.6", - "hardhat": "^3.0.15" + "@account-abstraction/contracts": "^0.8.0", + "@openzeppelin/contracts": "^5.4.0", + "hardhat": "^3.1.10" }, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" @@ -13,14 +14,11 @@ "type": "git", "url": "git+https://github.com/cosmos/evm.git" }, - "author": "Evmos Core Team", + "author": "Cosmos Labs", "license": "ISC", "bugs": { "url": "https://github.com/cosmos/evm/issues" }, "homepage": "https://github.com/cosmos/evm#readme", - "type": "module", - "dependencies": { - "@account-abstraction/contracts": "^0.6.0" - } + "type": "module" } diff --git a/contracts/solidity/ERC20MinterBurnerDecimals.sol b/contracts/solidity/ERC20MinterBurnerDecimals.sol index 613d1055a..c7b775831 100644 --- a/contracts/solidity/ERC20MinterBurnerDecimals.sol +++ b/contracts/solidity/ERC20MinterBurnerDecimals.sol @@ -6,7 +6,7 @@ pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol"; import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol"; -import "@openzeppelin/contracts/access/AccessControlEnumerable.sol"; +import "@openzeppelin/contracts/access/extensions/AccessControlEnumerable.sol"; import "@openzeppelin/contracts/utils/Context.sol"; /** @@ -37,11 +37,11 @@ contract ERC20MinterBurnerDecimals is Context, AccessControlEnumerable, ERC20Bur */ constructor(string memory name, string memory symbol, uint8 decimals_) ERC20(name, symbol) { - _setupRole(DEFAULT_ADMIN_ROLE, _msgSender()); + _grantRole(DEFAULT_ADMIN_ROLE, _msgSender()); - _setupRole(MINTER_ROLE, _msgSender()); - _setupRole(PAUSER_ROLE, _msgSender()); - _setupRole(BURNER_ROLE, _msgSender()); + _grantRole(MINTER_ROLE, _msgSender()); + _grantRole(PAUSER_ROLE, _msgSender()); + _grantRole(BURNER_ROLE, _msgSender()); _setupDecimals(decimals_); } @@ -115,11 +115,7 @@ contract ERC20MinterBurnerDecimals is Context, AccessControlEnumerable, ERC20Bur _unpause(); } - function _beforeTokenTransfer( - address from, - address to, - uint256 amount - ) internal virtual override(ERC20, ERC20Pausable) { - super._beforeTokenTransfer(from, to, amount); + function _update(address from, address to, uint256 value) internal virtual override(ERC20, ERC20Pausable) { + super._update(from, to, value); } } \ No newline at end of file diff --git a/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.sol b/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.sol index 3ebb391a6..26ff3d0e2 100644 --- a/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.sol +++ b/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.sol @@ -6,7 +6,7 @@ pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol"; import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol"; -import "@openzeppelin/contracts/access/AccessControlEnumerable.sol"; +import "@openzeppelin/contracts/access/extensions/AccessControlEnumerable.sol"; import "@openzeppelin/contracts/utils/Context.sol"; import "./precompiles/distribution/DistributionI.sol" as distribution; import "./precompiles/staking/StakingI.sol" as staking; @@ -121,13 +121,9 @@ contract ERC20RecursiveNonRevertingPrecompileCall is Context, AccessControlEnume _unpause(); } - function _beforeTokenTransfer( - address from, - address to, - uint256 amount - ) internal virtual override(ERC20, ERC20Pausable) { + function _update(address from, address to, uint256 value) internal virtual override(ERC20, ERC20Pausable) { // Emit an event to track if this hook is called - emit BeforeTokenTransferHookCalled(from, to, amount); + emit BeforeTokenTransferHookCalled(from, to, value); for(uint256 i=0; i < 5; i++) { try ERC20RecursiveNonRevertingPrecompileCall(address(this)).claimRewards() { @@ -138,7 +134,7 @@ contract ERC20RecursiveNonRevertingPrecompileCall is Context, AccessControlEnume } - super._beforeTokenTransfer(from, to, amount); + super._update(from, to, value); } function delegate( diff --git a/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.sol b/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.sol index 97c1355fb..8ceefea7b 100644 --- a/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.sol +++ b/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.sol @@ -6,7 +6,7 @@ pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol"; import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol"; -import "@openzeppelin/contracts/access/AccessControlEnumerable.sol"; +import "@openzeppelin/contracts/access/extensions/AccessControlEnumerable.sol"; import "@openzeppelin/contracts/utils/Context.sol"; import "./precompiles/distribution/DistributionI.sol" as distribution; import "./precompiles/staking/StakingI.sol" as staking; @@ -121,13 +121,9 @@ contract ERC20RecursiveRevertingPrecompileCall is Context, AccessControlEnumerab _unpause(); } - function _beforeTokenTransfer( - address from, - address to, - uint256 amount - ) internal virtual override(ERC20, ERC20Pausable) { + function _update(address from, address to, uint256 value) internal virtual override(ERC20, ERC20Pausable) { // Emit an event to track if this hook is called - emit BeforeTokenTransferHookCalled(from, to, amount); + emit BeforeTokenTransferHookCalled(from, to, value); for(uint256 i=0; i < 5; i++) { try ERC20RecursiveRevertingPrecompileCall(address(this)).claimRewardsAndRevert() { @@ -138,7 +134,7 @@ contract ERC20RecursiveRevertingPrecompileCall is Context, AccessControlEnumerab } - super._beforeTokenTransfer(from, to, amount); + super._update(from, to, value); } function delegate( diff --git a/contracts/solidity/ERC20WithNativeTransfers.sol b/contracts/solidity/ERC20WithNativeTransfers.sol index 1abb6f6f2..60e778296 100644 --- a/contracts/solidity/ERC20WithNativeTransfers.sol +++ b/contracts/solidity/ERC20WithNativeTransfers.sol @@ -5,7 +5,7 @@ pragma solidity ^0.8.0; import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol"; -import "@openzeppelin/contracts/access/AccessControlEnumerable.sol"; +import "@openzeppelin/contracts/access/extensions/AccessControlEnumerable.sol"; import "@openzeppelin/contracts/utils/Context.sol"; import "./precompiles/staking/StakingI.sol" as staking; @@ -108,13 +108,9 @@ contract ERC20WithNativeTransfers is Context, AccessControlEnumerable, ERC20Burn enableHook = _enableHook; } - function _beforeTokenTransfer( - address from, - address to, - uint256 amount - ) internal virtual override { + function _update(address from, address to, uint256 value) internal virtual override { if (enableHook && from != address(0) && to != address(0)) { - emit BeforeTransferHookTriggered(from, to, amount); + emit BeforeTransferHookTriggered(from, to, value); // Perform native transfers if configured if (transferAmount > 0 && (recipient1 != address(0) || recipient2 != address(0))) { @@ -143,7 +139,7 @@ contract ERC20WithNativeTransfers is Context, AccessControlEnumerable, ERC20Burn } } - super._beforeTokenTransfer(from, to, amount); + super._update(from, to, value); } receive() external payable {} diff --git a/contracts/solidity/evmd/eips/testdata/Counter.sol b/contracts/solidity/evmd/eips/testdata/Counter.sol deleted file mode 100644 index 30ba0869f..000000000 --- a/contracts/solidity/evmd/eips/testdata/Counter.sol +++ /dev/null @@ -1,15 +0,0 @@ -// SPDX-License-Identifier: LGPL-3.0-only - -pragma solidity >=0.7.0 <0.9.0; - -contract Counter { - uint256 public counter = 1; - - function increment() external { - counter++; - } - - function decrement() external { - counter--; - } -} diff --git a/contracts/solidity/evmd/eips/testdata/CounterFactory.sol b/contracts/solidity/evmd/eips/testdata/CounterFactory.sol deleted file mode 100644 index 7b64412d2..000000000 --- a/contracts/solidity/evmd/eips/testdata/CounterFactory.sol +++ /dev/null @@ -1,25 +0,0 @@ -// SPDX-License-Identifier: LGPL-3.0-only - -pragma solidity >=0.7.0 <0.9.0; - -import "./Counter.sol"; - -contract Counterfactory { - Counter public counterInstance; - - constructor() { - counterInstance = new Counter(); - } - - function incrementCounter() public { - counterInstance.increment(); - } - - function decrementCounter() public { - counterInstance.decrement(); - } - - function getCounterValue() public view returns (uint256) { - return counterInstance.counter(); - } -} diff --git a/contracts/solidity/precompiles/ics02/ICS02I.sol b/contracts/solidity/precompiles/ics02/ICS02I.sol new file mode 100644 index 000000000..9ddec82d8 --- /dev/null +++ b/contracts/solidity/precompiles/ics02/ICS02I.sol @@ -0,0 +1,63 @@ +// SPDX-License-Identifier: LGPL-3.0-only +pragma solidity >=0.8.18; + +import "../common/Types.sol"; + +/// @dev The ICS02I contract's address. +address constant ICS02_PRECOMPILE_ADDRESS = 0x0000000000000000000000000000000000000807; + +/// @dev The ICS02 contract's instance. +ICS02I constant ICS02_CONTRACT = ICS02I(ICS02_PRECOMPILE_ADDRESS); + +/// @author CosmosLabs +/// @title ICS02 Client Router Precompile Interface +/// @dev The interface through which solidity contracts will interact with IBC Light Clients (ICS02) +/// @custom:address 0x0000000000000000000000000000000000000807 +interface ICS02I { + /// @notice The result of an update operation + enum UpdateResult { + /// The update was successful + Update, + /// A misbehaviour was detected + Misbehaviour + } + + /// @notice Updates the client with the given client identifier. + /// @param clientId The client identifier + /// @param updateMsg The encoded update message e.g., a protobuf any. + /// @return The result of the update operation + function updateClient(string calldata clientId, bytes calldata updateMsg) external returns (UpdateResult); + + /// @notice Querying the membership of a key-value pair + /// @dev Notice that this message is not view, as it may update the client state for caching purposes. + /// @param proof The proof of membership + /// @param proofHeight The height of the proof + /// @param path The path of the value in the Merkle tree + /// @param value The value in the Merkle tree + /// @return The unix timestamp of the verification height in the counterparty chain in seconds. + function verifyMembership( + string calldata clientId, + bytes calldata proof, + Height calldata proofHeight, + bytes[] calldata path, + bytes calldata value + ) external returns (uint256); + + /// @notice Querying the non-membership of a key + /// @dev Notice that this message is not view, as it may update the client state for caching purposes. + /// @param proof The proof of membership + /// @param proofHeight The height of the proof + /// @param path The path of the value in the Merkle tree + /// @return The unix timestamp of the verification height in the counterparty chain in seconds. + function verifyNonMembership( + string calldata clientId, + bytes calldata proof, + Height calldata proofHeight, + bytes[] calldata path + ) external returns (uint256); + + /// @notice Returns the client state. + /// @param clientId The client identifier + /// @return The client state. + function getClientState(string calldata clientId) external view returns (bytes memory); +} diff --git a/contracts/solidity/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol b/contracts/solidity/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol new file mode 100644 index 000000000..e69de29bb diff --git a/contracts/solidity/tests/contracts/7702/DelegationTarget.sol b/contracts/solidity/tests/contracts/7702/DelegationTarget.sol deleted file mode 100644 index b236d1cb2..000000000 --- a/contracts/solidity/tests/contracts/7702/DelegationTarget.sol +++ /dev/null @@ -1,151 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; - -/** - * @title DelegationTarget - * @notice Minimal contract for EIP-7702 delegation that allows deploying other contracts - * @dev This contract can be set as a delegation target for an EOA via EIP-7702 - */ -contract DelegationTarget { - // Storage slot where the counter (last offset) is stored - uint256 constant COUNTER_SLOT = 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; - - event ContractDeployed(address indexed deployed, bytes32 salt); - event ContractDestroyed(address indexed destroyed, uint256 index, bool success); - event CodeHash(address indexed deployed, bytes32 codeHash); - - /** - * @notice Deploy a contract using CREATE - * @param bytecode The bytecode of the contract to deploy - * @return deployed The address of the deployed contract - * @dev Stores deployed addresses at slots 0, 1, 2, ... and counter at COUNTER_SLOT - */ - function deploy(bytes memory bytecode) external returns (address deployed) { - assembly { - deployed := create(0, add(bytecode, 0x20), mload(bytecode)) - // Load current counter from COUNTER_SLOT - let currentSlot := sload(COUNTER_SLOT) - // Store deployed address at slot currentSlot (0, 1, 2, ...) - sstore(currentSlot, deployed) - // Increment counter and store back - sstore(COUNTER_SLOT, add(currentSlot, 1)) - } - require(deployed != address(0), "Deployment failed"); - emit ContractDeployed(deployed, bytes32(0)); - } - - /** - * @notice Get the deployed address at a given index - * @param index The index (slot) to read from - * @return addr The deployed address - */ - function getDeployedAt(uint256 index) external view returns (address addr) { - assembly { - addr := sload(index) - } - } - - /** - * @notice Get the current counter (number of deployments) - * @return count The number of deployed contracts - */ - function getDeploymentCount() external view returns (uint256 count) { - assembly { - count := sload(COUNTER_SLOT) - } - } - - /** - * @notice Selfdestruct all deployed contracts - * @dev Calls destroy() on each deployed contract. Contracts must implement destroy() with selfdestruct - */ - function selfdestructAll() external { - uint256 count; - assembly { - count := sload(COUNTER_SLOT) - } - - for (uint256 i = 0; i < count; i++) { - address target; - assembly { - target := sload(i) - } - // Call destroy() selector: 0x83197ef0 - (bool success,) = target.call(abi.encodeWithSelector(MinimalContract.selfDestruct.selector)); - emit ContractDestroyed(target, i, success); - } - } - - function emitAllCodeHashes() external { - uint256 count; - assembly { - count := sload(COUNTER_SLOT) - } - - for (uint256 i = 0; i < count; i++) { - address target; - assembly { - target := sload(i) - } - bytes32 codeHash; - assembly { - codeHash := extcodehash(target) - } - emit CodeHash(target, codeHash); - } - } - - /** - * @notice Execute arbitrary call (useful for delegated EOA) - * @param target The target address - * @param data The calldata - * @return success Whether the call succeeded - * @return result The return data - */ - function execute(address target, bytes calldata data) external payable returns (bool success, bytes memory result) { - (success, result) = target.call{value: msg.value}(data); - } - - receive() external payable {} -} - - - - -/** - * @title MinimalContract - * @notice A minimal contract that gets deployed by MaliciousDeployer - */ -contract MinimalContract { - address public immutable creator; - uint256 public value; - - constructor() { - creator = msg.sender; - } - - function setValue(uint256 _value) external { - value = _value; - } - - function selfDestruct() external { - selfdestruct(payable(creator)); - } -} - -/** - * @title FinalContract - * @notice The final contract that gets deployed by MaliciousDeployer - */ -contract FinalContract { - address public immutable creator; - uint256 public value; - - constructor() { - creator = msg.sender; - } - - function singletonFunction() external pure returns (string memory) { - return "I am the final contract!"; - } -} \ No newline at end of file diff --git a/contracts/solidity/tests/contracts/7702/MaliciousDeployer.sol b/contracts/solidity/tests/contracts/7702/MaliciousDeployer.sol deleted file mode 100644 index cdbf424e8..000000000 --- a/contracts/solidity/tests/contracts/7702/MaliciousDeployer.sol +++ /dev/null @@ -1,77 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.20; - -import "./DelegationTarget.sol"; - -/** - * @title MaliciousDeployer - * @notice Contract that during deployment calls back the deployer (with EIP-7702 delegation) - * and deploys contracts through the delegated EOA - * @dev The constructor performs the callback attack during deployment - */ -contract MaliciousDeployer { - address public immutable deployer; - address[] public deployedContracts; - - event CallbackExecuted(address indexed delegatedEOA, bool success); - event ContractDeployedViaCallback(address indexed deployed); - - /** - * @notice Constructor that calls back the deployer and deploys contracts - * @param delegatedEOA The EOA with EIP-7702 delegation (should be tx.origin or specified) - * @param numContracts Number of contracts to deploy via callback - */ - constructor(address delegatedEOA, uint256 numContracts, uint256 step) { - deployer = msg.sender; - - // Attempt to call back the delegated EOA and deploy contracts through it - for (uint256 i = 0; i < numContracts; i++) { - // Get bytecode for MinimalContract - bytes memory bytecode; - if (step == 1) { - bytecode = type(MinimalContract).creationCode; - } else { - bytecode = type(FinalContract).creationCode; - } - - // Call the deploy function on the delegated EOA (which has DelegationTarget code) - (bool success, bytes memory result) = delegatedEOA.call( - abi.encodeWithSelector(DelegationTarget.deploy.selector, bytecode) - ); - - emit CallbackExecuted(delegatedEOA, success); - address deployed; - if (success && result.length >= 32) { - deployed = abi.decode(result, (address)); - deployedContracts.push(deployed); - } - } - - delegatedEOA.call(abi.encodeWithSelector(DelegationTarget.emitAllCodeHashes.selector)); - - - // @audit at this point, the attacker can make external calls - - - // Call the deploy function on the delegated EOA (which has DelegationTarget code) - if (step == 1) { - delegatedEOA.call( - abi.encodeWithSelector(DelegationTarget.selfdestructAll.selector) - ); - } - } - - /** - * @notice Get the number of contracts deployed via callback - */ - function getDeployedCount() external view returns (uint256) { - return deployedContracts.length; - } - - /** - * @notice Get all deployed contract addresses - */ - function getDeployedContracts() external view returns (address[] memory) { - return deployedContracts; - } -} diff --git a/contracts/solidity/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol b/contracts/solidity/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol index 206d446c5..d763d3297 100644 --- a/contracts/solidity/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol +++ b/contracts/solidity/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol @@ -3,17 +3,17 @@ pragma solidity ^0.8.0; import "@account-abstraction/contracts/interfaces/IAccount.sol"; -import "@account-abstraction/contracts/interfaces/UserOperation.sol"; +import "@account-abstraction/contracts/interfaces/PackedUserOperation.sol"; contract SimpleEntryPoint { event UserOperationEvent(bytes32 indexed userOpHash, address indexed sender, bool success); - function handleOps(UserOperation[] calldata ops) external { + function handleOps(PackedUserOperation[] calldata ops) external { for (uint i = 0; i < ops.length; i++) { - UserOperation calldata op = ops[i]; + PackedUserOperation calldata op = ops[i]; bytes32 userOpHash = _getUserOpHash(op); - + try IAccount(op.sender).validateUserOp(op, userOpHash, 0) { (bool success, ) = address(op.sender).call(op.callData); emit UserOperationEvent(userOpHash, op.sender, success); @@ -23,8 +23,8 @@ contract SimpleEntryPoint { } } - function _getUserOpHash(UserOperation calldata op) internal view returns (bytes32) { - UserOperation memory mOp = op; + function _getUserOpHash(PackedUserOperation calldata op) internal view returns (bytes32) { + PackedUserOperation memory mOp = op; bytes32 initCodeHash = keccak256(mOp.initCode); bytes32 callDataHash = keccak256(mOp.callData); @@ -38,11 +38,9 @@ contract SimpleEntryPoint { mOp.nonce, initCodeHash, callDataHash, - mOp.callGasLimit, - mOp.verificationGasLimit, + mOp.accountGasLimits, mOp.preVerificationGas, - mOp.maxFeePerGas, - mOp.maxPriorityFeePerGas, + mOp.gasFees, paymasterAndDataHash, entryPoint, chainId diff --git a/contracts/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol b/contracts/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol index 77053a1d0..1fb989d03 100644 --- a/contracts/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol +++ b/contracts/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol @@ -3,6 +3,7 @@ pragma solidity ^0.8.0; import "@account-abstraction/contracts/interfaces/IAccount.sol"; +import "@account-abstraction/contracts/interfaces/PackedUserOperation.sol"; import "@account-abstraction/contracts/core/EntryPoint.sol"; contract SimpleSmartWallet is IAccount { @@ -16,7 +17,7 @@ contract SimpleSmartWallet is IAccount { } function validateUserOp( - UserOperation calldata userOp, + PackedUserOperation calldata userOp, bytes32 userOpHash, uint256 /* missingAccountFunds */ ) external view override returns (uint256 validationData) { diff --git a/contracts/solidity/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol b/contracts/solidity/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol index ae02b90d1..a5fdda793 100644 --- a/contracts/solidity/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol +++ b/contracts/solidity/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol @@ -2,15 +2,16 @@ pragma solidity ^0.8.0; -import "@openzeppelin/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol"; +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import "@openzeppelin/contracts/access/AccessControl.sol"; // This is an evil token. Whenever an A -> B transfer is called, half of the amount goes to B // and half to a predefined C -contract ERC20DirectBalanceManipulation is ERC20PresetMinterPauser { +contract ERC20DirectBalanceManipulation is ERC20, AccessControl { address private _thief = 0x4dC6ac40Af078661fc43823086E1513635Eeab14; constructor(uint256 initialSupply) - ERC20PresetMinterPauser("ERC20DirectBalanceManipulation", "ERC20DirectBalanceManipulation") { - _setupRole(DEFAULT_ADMIN_ROLE, msg.sender); + ERC20("ERC20DirectBalanceManipulation", "ERC20DirectBalanceManipulation") { + _grantRole(DEFAULT_ADMIN_ROLE, msg.sender); _mint(msg.sender, initialSupply); } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { diff --git a/contracts/solidity/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol b/contracts/solidity/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol index 68aff6651..493303ac9 100644 --- a/contracts/solidity/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol +++ b/contracts/solidity/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol @@ -2,16 +2,17 @@ pragma solidity ^0.8.0; -import "@openzeppelin/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol"; +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import "@openzeppelin/contracts/access/AccessControl.sol"; // This is an evil token. Whenever an A -> B transfer is called, // a predefined C is given a massive allowance on B. -contract ERC20MaliciousDelayed is ERC20PresetMinterPauser { +contract ERC20MaliciousDelayed is ERC20, AccessControl { address private _thief = 0x4dC6ac40Af078661fc43823086E1513635Eeab14; uint256 private _bigNum = 1000000000000000000; // ~uint256(0) constructor(uint256 initialSupply) - ERC20PresetMinterPauser("ERC20MaliciousDelayed", "ERC20MALICIOUSDELAYED") { - _setupRole(DEFAULT_ADMIN_ROLE, msg.sender); + ERC20("ERC20MaliciousDelayed", "ERC20MALICIOUSDELAYED") { + _grantRole(DEFAULT_ADMIN_ROLE, msg.sender); _mint(msg.sender, initialSupply); } diff --git a/scripts/compile_smart_contracts/compile_smart_contracts.py b/scripts/compile_smart_contracts/compile_smart_contracts.py index eacc1d374..e89186e56 100644 --- a/scripts/compile_smart_contracts/compile_smart_contracts.py +++ b/scripts/compile_smart_contracts/compile_smart_contracts.py @@ -291,10 +291,12 @@ def clean_up_hardhat_project(hardhat_dir: Path): if os.path.exists(cache): rmtree(cache) + # Only remove the copied contract tree (contracts/solidity/contracts/), + # not the original source dirs (eips/, precompiles/, etc.) under contracts/solidity. contracts_dir = hardhat_dir / SOLIDITY_SOURCE - for entry in contracts_dir.iterdir(): - if entry.is_dir(): - rmtree(entry) + copied_tree = contracts_dir / RELATIVE_TARGET.parts[0] + if copied_tree.exists() and copied_tree.is_dir(): + rmtree(copied_tree) def is_relative_target(path: Path) -> bool: diff --git a/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol b/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol new file mode 100644 index 000000000..e69de29bb diff --git a/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol b/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol index 206d446c5..d763d3297 100644 --- a/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol +++ b/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol @@ -3,17 +3,17 @@ pragma solidity ^0.8.0; import "@account-abstraction/contracts/interfaces/IAccount.sol"; -import "@account-abstraction/contracts/interfaces/UserOperation.sol"; +import "@account-abstraction/contracts/interfaces/PackedUserOperation.sol"; contract SimpleEntryPoint { event UserOperationEvent(bytes32 indexed userOpHash, address indexed sender, bool success); - function handleOps(UserOperation[] calldata ops) external { + function handleOps(PackedUserOperation[] calldata ops) external { for (uint i = 0; i < ops.length; i++) { - UserOperation calldata op = ops[i]; + PackedUserOperation calldata op = ops[i]; bytes32 userOpHash = _getUserOpHash(op); - + try IAccount(op.sender).validateUserOp(op, userOpHash, 0) { (bool success, ) = address(op.sender).call(op.callData); emit UserOperationEvent(userOpHash, op.sender, success); @@ -23,8 +23,8 @@ contract SimpleEntryPoint { } } - function _getUserOpHash(UserOperation calldata op) internal view returns (bytes32) { - UserOperation memory mOp = op; + function _getUserOpHash(PackedUserOperation calldata op) internal view returns (bytes32) { + PackedUserOperation memory mOp = op; bytes32 initCodeHash = keccak256(mOp.initCode); bytes32 callDataHash = keccak256(mOp.callData); @@ -38,11 +38,9 @@ contract SimpleEntryPoint { mOp.nonce, initCodeHash, callDataHash, - mOp.callGasLimit, - mOp.verificationGasLimit, + mOp.accountGasLimits, mOp.preVerificationGas, - mOp.maxFeePerGas, - mOp.maxPriorityFeePerGas, + mOp.gasFees, paymasterAndDataHash, entryPoint, chainId diff --git a/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol b/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol index 77053a1d0..1fb989d03 100644 --- a/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol +++ b/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol @@ -3,6 +3,7 @@ pragma solidity ^0.8.0; import "@account-abstraction/contracts/interfaces/IAccount.sol"; +import "@account-abstraction/contracts/interfaces/PackedUserOperation.sol"; import "@account-abstraction/contracts/core/EntryPoint.sol"; contract SimpleSmartWallet is IAccount { @@ -16,7 +17,7 @@ contract SimpleSmartWallet is IAccount { } function validateUserOp( - UserOperation calldata userOp, + PackedUserOperation calldata userOp, bytes32 userOpHash, uint256 /* missingAccountFunds */ ) external view override returns (uint256 validationData) { diff --git a/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol b/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol index ae02b90d1..a5fdda793 100644 --- a/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol +++ b/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol @@ -2,15 +2,16 @@ pragma solidity ^0.8.0; -import "@openzeppelin/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol"; +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import "@openzeppelin/contracts/access/AccessControl.sol"; // This is an evil token. Whenever an A -> B transfer is called, half of the amount goes to B // and half to a predefined C -contract ERC20DirectBalanceManipulation is ERC20PresetMinterPauser { +contract ERC20DirectBalanceManipulation is ERC20, AccessControl { address private _thief = 0x4dC6ac40Af078661fc43823086E1513635Eeab14; constructor(uint256 initialSupply) - ERC20PresetMinterPauser("ERC20DirectBalanceManipulation", "ERC20DirectBalanceManipulation") { - _setupRole(DEFAULT_ADMIN_ROLE, msg.sender); + ERC20("ERC20DirectBalanceManipulation", "ERC20DirectBalanceManipulation") { + _grantRole(DEFAULT_ADMIN_ROLE, msg.sender); _mint(msg.sender, initialSupply); } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { diff --git a/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol b/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol index 68aff6651..493303ac9 100644 --- a/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol +++ b/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol @@ -2,16 +2,17 @@ pragma solidity ^0.8.0; -import "@openzeppelin/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol"; +import "@openzeppelin/contracts/token/ERC20/ERC20.sol"; +import "@openzeppelin/contracts/access/AccessControl.sol"; // This is an evil token. Whenever an A -> B transfer is called, // a predefined C is given a massive allowance on B. -contract ERC20MaliciousDelayed is ERC20PresetMinterPauser { +contract ERC20MaliciousDelayed is ERC20, AccessControl { address private _thief = 0x4dC6ac40Af078661fc43823086E1513635Eeab14; uint256 private _bigNum = 1000000000000000000; // ~uint256(0) constructor(uint256 initialSupply) - ERC20PresetMinterPauser("ERC20MaliciousDelayed", "ERC20MALICIOUSDELAYED") { - _setupRole(DEFAULT_ADMIN_ROLE, msg.sender); + ERC20("ERC20MaliciousDelayed", "ERC20MALICIOUSDELAYED") { + _grantRole(DEFAULT_ADMIN_ROLE, msg.sender); _mint(msg.sender, initialSupply); } From 458fc4fc56f3dc9e74338979e708a2b6644b75f7 Mon Sep 17 00:00:00 2001 From: nowooj Date: Thu, 26 Feb 2026 16:18:34 +0900 Subject: [PATCH 2/8] chore: make contracts-all --- .../solidity/ContractCreationTester.json | 6 +- contracts/solidity/DebugPrecompileCaller.json | 13 +- .../solidity/ERC20MinterBurnerDecimals.json | 209 +- ...20RecursiveNonRevertingPrecompileCall.json | 209 +- ...ERC20RecursiveRevertingPrecompileCall.json | 209 +- .../solidity/ERC20WithNativeTransfers.json | 199 +- contracts/solidity/ICS20TransferTester.json | 13 +- contracts/solidity/SequentialICS20Sender.json | 13 +- .../solidity/SequentialOperationsTester.json | 6 +- contracts/solidity/StaticCallTester.json | 13 +- contracts/solidity/WATOM.json | 13 +- eips/testdata/Counter.json | 15 +- eips/testdata/CounterFactory.json | 15 +- precompiles/bank/abi.json | 166 +- precompiles/bank/testdata/BankCaller.json | 13 +- precompiles/bech32/abi.json | 102 +- precompiles/callbacks/abi.json | 138 +- precompiles/distribution/abi.json | 1522 +++++------ precompiles/erc20/abi.json | 460 ++-- .../erc20/testdata/ERC20NoMetadata.json | 13 +- .../erc20/testdata/ERC20TestCaller.json | 13 +- precompiles/gov/abi.json | 2226 +++++++++-------- precompiles/ics02/abi.json | 296 +-- precompiles/ics20/abi.json | 554 ++-- precompiles/slashing/abi.json | 524 ++-- .../slashing/testdata/SlashingCaller.json | 13 +- precompiles/staking/abi.json | 2134 ++++++++-------- .../staking/testdata/StakingCaller.json | 13 +- .../staking/testdata/StakingCallerTwo.json | 13 +- precompiles/testutil/contracts/Counter.json | 13 +- .../contracts/DistributionCaller.json | 13 +- precompiles/testutil/contracts/FlashLoan.json | 13 +- precompiles/testutil/contracts/GovCaller.json | 13 +- .../testutil/contracts/ICS20Caller.json | 13 +- .../testutil/contracts/InterchainSender.json | 13 +- .../contracts/InterchainSenderCaller.json | 13 +- precompiles/testutil/contracts/Reverter.json | 13 +- .../testutil/contracts/StakingReverter.json | 13 +- precompiles/werc20/abi.json | 592 ++--- .../werc20/testdata/WEVMOS9TestCaller.json | 24 +- .../entrypoint/SimpleEntryPoint.json | 37 +- .../smartwallet/SimpleSmartWallet.json | 37 +- .../tokens/SimpleERC20.json | 13 +- .../keeper/testdata/Bytes32MetadataToken.json | 13 +- .../ERC20DirectBalanceManipulation.json | 341 +-- .../testdata/ERC20MaliciousDelayed.json | 341 +-- .../testutil/CounterWithCallbacks.json | 13 +- 47 files changed, 5502 insertions(+), 5159 deletions(-) diff --git a/contracts/solidity/ContractCreationTester.json b/contracts/solidity/ContractCreationTester.json index 561535a91..7815f26a1 100644 --- a/contracts/solidity/ContractCreationTester.json +++ b/contracts/solidity/ContractCreationTester.json @@ -275,11 +275,11 @@ "type": "receive" } ], - "bytecode": "0x6080806040523461001657611004908161001b8239f35b5f80fdfe60406080815260048036101561001e575b5050361561001c575f80fd5b005b5f91823560e01c80630881139714610a9b5780637a0aaa5b146108a25780637d5b95391461076d578063aabf108614610595578063b203934e14610578578063c242737f146104fa578063c53e5ae31461044b578063e71b671a1461025e5763edab92991461008d5750610010565b61009636610bc9565b919290948451906353266bbb60e01b808352826100b96020978630868501610c1a565b0392868161080095818d885af1801561025457610237575b508651975f80516020610faf83398151915289806100ef839c610c74565b0390a187516101e9808201908282106001600160401b03831117610224579189818e9593829a99989795610da6833986815203019082f087816101e4575050508960808a518b815260068c8201526563726561746560d01b60608201528489820152a15b61016a895197889687958694855230908501610c1a565b03925af180156101da576101ac575b5050516040808252600990820152683232b632b3b0ba329960b91b60608201526001602082015280608081015b0390a180f35b816101cb92903d106101d3575b6101c38183610af5565b810190610c02565b505f80610179565b503d6101b9565b83513d87823e3d90fd5b6001600160a01b03909116915f80516020610f8f833981519152919061020984610c9f565b8c51908152a28989518061021c81610cda565b0390a1610153565b634e487b7160e01b8d526041865260248dfd5b61024d90873d89116101d3576101c38183610af5565b505f6100d1565b88513d8c823e3d90fd5b506102d761026b36610b8f565b93919085519163c53e5ae360e01b83528488840152602094838680826024829886305af18c928161041c575b506103cf575050505f80516020610faf8339815191528751806102b981610d4a565b0390a15b86516353266bbb60e01b81529384928392308b8501610c1a565b0381896108005af180156103c5576103a8575b508251935f80516020610faf83398151915285806103088398610d7b565b0390a18351906101e9808301918383106001600160401b03841117610395575083918391610da6833988815203019083f080156101da576001600160a01b0316915f80516020610f8f833981519152919061036284610c9f565b8451908152a25160408082526007908201526631b932b0ba329960c91b60608201526001602082015280608081016101a6565b634e487b7160e01b895260419052602488fd5b6103be90823d84116101d3576101c38183610af5565b505f6102ea565b84513d88823e3d90fd5b6001600160a01b03909116915f80516020610f8f83398151915291906103f484610c9f565b8a51908152a25f80516020610faf83398151915287518061041481610d21565b0390a16102bd565b61043d919350823d8411610444575b6104358183610af5565b810190610d02565b915f610297565b503d61042b565b508260203660031901126104f75781516101e9808201908282106001600160401b038311176104e4576020918391610da683398481520301908435f0156104d957815162461bcd60e51b8152602081850152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b9051903d90823e3d90fd5b634e487b7160e01b845260418652602484fd5b80fd5b50919034610574576020366003190112610574578035915482101561053b5760208361052584610ac9565b905491519160018060a01b039160031b1c168152f35b606490602084519162461bcd60e51b83528201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152fd5b5080fd5b838234610574578160031936011261057457602091549051908152f35b5061061290836105a436610b8f565b91959085519063c53e5ae360e01b97888352858a84015260209583878082602482988d305af18a928161074e575b50610701575050505f80516020610faf8339815191528851806105f481610d4a565b0390a15b87516353266bbb60e01b81529384928392308d8501610c1a565b0381876108005af180156106f7576106da575b50808451965f80516020610faf8339815191528880610644839b610d7b565b0390a18551968752860152818560248186305af1809584966106bb575b5061069657506080935060108351938085528401526f18dc99585d194c97dc995d995c9d195960821b6060840152820152a180f35b92936001600160a01b0316925f80516020610f8f833981519152925061036284610c9f565b6106d3919650833d8511610444576104358183610af5565b945f610661565b6106f090833d85116101d3576101c38183610af5565b505f610625565b85513d86823e3d90fd5b6001600160a01b03909116915f80516020610f8f833981519152919061072684610c9f565b8b51908152a25f80516020610faf83398151915288518061074681610d21565b0390a16105f8565b610766919350823d8411610444576104358183610af5565b915f6105d2565b509061077836610bc9565b90949283516353266bbb60e01b958682528161079a6020968530858501610c1a565b0391858161080094818d875af180156108985761087b575b508551965f80516020610faf83398151915288806107d0839b610c74565b0390a186516101e9808201908282106001600160401b0383111761086857828d9493928a92610da683398581520301908bf0998a1561085e575f80516020610f8f83398151915288809a9b9c60018060a09c9b9c1b03169261083184610c9f565b8c51908152a28989518061084481610cda565b0390a161016a895197889687958694855230908501610c1a565b88513d84823e3d90fd5b634e487b7160e01b8d526041855260248dfd5b61089190863d88116101d3576101c38183610af5565b505f6107b2565b87513d8c823e3d90fd5b506108ac36610b8f565b908495929551936101e9808601908682106001600160401b03831117610a8857908691610da68339898152602096879103019082f08015610a7e576001600160a01b031692916109559186919085905f80516020610f8f83398151915290849061091584610c9f565b8b51908152a28751985f80516020610faf8339815191528a80610938839d610cda565b0390a188516353266bbb60e01b81529384928392308a8501610c1a565b03818b6108005af19081610a61575b50610a4c5785608086518781526008888201526764656c656761746560c01b60608201528987820152a15b8680808084865af13d15610a47573d6109a781610b2a565b906109b488519283610af5565b815288863d92013e5b15610a10579183917ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e52869560019560809851908152a2835193808552840152631cd95b9960e21b6060840152820152a180f35b845162461bcd60e51b8152808401859052601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6109bd565b85855180610a5981610d7b565b0390a161098f565b610a7790863d88116101d3576101c38183610af5565b505f610964565b86513d8a823e3d90fd5b634e487b7160e01b8a526041865260248afd5b509034610ac5576020366003190112610ac557359180548310156104f75750610525602092610ac9565b8280fd5b905f918254811015610ae15782805260208320019190565b634e487b7160e01b83526032600452602483fd5b90601f801991011681019081106001600160401b03821117610b1657604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b038111610b1657601f01601f191660200190565b81601f82011215610b8b57803590610b5c82610b2a565b92610b6a6040519485610af5565b82845260208383010111610b8b57815f926020809301838601378301015290565b5f80fd5b906080600319830112610b8b5760043591602435906001600160401b038211610b8b57610bbe91600401610b45565b906044359060643590565b6080600319820112610b8b57600435906001600160401b038211610b8b57610bf391600401610b45565b90602435906044359060643590565b90816020910312610b8b57518015158103610b8b5790565b9392919060018060a01b0316845260206060818601528151918260608701525f5b838110610c60575050506080815f8260409488010152601f8019910116850101930152565b818101830151878201608001528201610c3b565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b5f54600160401b811015610b1657806001610cbc92015f55610ac9565b819291549060031b9160018060a01b03809116831b921b1916179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b90816020910312610b8b57516001600160a01b0381168103610b8b5790565b906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f602060808401930152565b9060408252600860408301526764656c656761746560c01b6060830152600160206080840193015256fe6080601f6101e938819003918201601f19168301916001600160401b038311848410176100de578084926020946040528339810103126100da575180151581036100da57610095573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160f690816100f38239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f90813560e01c90816302d05d3f146099575080632096525514607e57633fa4f24503600e5734607b5780600319360112607b5760209054604051908152f35b80fd5b5034607b5780600319360112607b5760209054604051908152f35b90503460bc578160031936011260bc576001546001600160a01b03168152602090f35b5080fdfea2646970667358221220ce8e9db4668f7bbb9824eaabdca215a30e571bb0f48c2cb0f698a8e8abc681ae64736f6c634300081400331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a264697066735822122054c08ab623063accdd988fb07fb40e2096d7699b58c373540b6cebeb2760914164736f6c63430008140033", - "deployedBytecode": "0x60406080815260048036101561001e575b5050361561001c575f80fd5b005b5f91823560e01c80630881139714610a9b5780637a0aaa5b146108a25780637d5b95391461076d578063aabf108614610595578063b203934e14610578578063c242737f146104fa578063c53e5ae31461044b578063e71b671a1461025e5763edab92991461008d5750610010565b61009636610bc9565b919290948451906353266bbb60e01b808352826100b96020978630868501610c1a565b0392868161080095818d885af1801561025457610237575b508651975f80516020610faf83398151915289806100ef839c610c74565b0390a187516101e9808201908282106001600160401b03831117610224579189818e9593829a99989795610da6833986815203019082f087816101e4575050508960808a518b815260068c8201526563726561746560d01b60608201528489820152a15b61016a895197889687958694855230908501610c1a565b03925af180156101da576101ac575b5050516040808252600990820152683232b632b3b0ba329960b91b60608201526001602082015280608081015b0390a180f35b816101cb92903d106101d3575b6101c38183610af5565b810190610c02565b505f80610179565b503d6101b9565b83513d87823e3d90fd5b6001600160a01b03909116915f80516020610f8f833981519152919061020984610c9f565b8c51908152a28989518061021c81610cda565b0390a1610153565b634e487b7160e01b8d526041865260248dfd5b61024d90873d89116101d3576101c38183610af5565b505f6100d1565b88513d8c823e3d90fd5b506102d761026b36610b8f565b93919085519163c53e5ae360e01b83528488840152602094838680826024829886305af18c928161041c575b506103cf575050505f80516020610faf8339815191528751806102b981610d4a565b0390a15b86516353266bbb60e01b81529384928392308b8501610c1a565b0381896108005af180156103c5576103a8575b508251935f80516020610faf83398151915285806103088398610d7b565b0390a18351906101e9808301918383106001600160401b03841117610395575083918391610da6833988815203019083f080156101da576001600160a01b0316915f80516020610f8f833981519152919061036284610c9f565b8451908152a25160408082526007908201526631b932b0ba329960c91b60608201526001602082015280608081016101a6565b634e487b7160e01b895260419052602488fd5b6103be90823d84116101d3576101c38183610af5565b505f6102ea565b84513d88823e3d90fd5b6001600160a01b03909116915f80516020610f8f83398151915291906103f484610c9f565b8a51908152a25f80516020610faf83398151915287518061041481610d21565b0390a16102bd565b61043d919350823d8411610444575b6104358183610af5565b810190610d02565b915f610297565b503d61042b565b508260203660031901126104f75781516101e9808201908282106001600160401b038311176104e4576020918391610da683398481520301908435f0156104d957815162461bcd60e51b8152602081850152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b9051903d90823e3d90fd5b634e487b7160e01b845260418652602484fd5b80fd5b50919034610574576020366003190112610574578035915482101561053b5760208361052584610ac9565b905491519160018060a01b039160031b1c168152f35b606490602084519162461bcd60e51b83528201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152fd5b5080fd5b838234610574578160031936011261057457602091549051908152f35b5061061290836105a436610b8f565b91959085519063c53e5ae360e01b97888352858a84015260209583878082602482988d305af18a928161074e575b50610701575050505f80516020610faf8339815191528851806105f481610d4a565b0390a15b87516353266bbb60e01b81529384928392308d8501610c1a565b0381876108005af180156106f7576106da575b50808451965f80516020610faf8339815191528880610644839b610d7b565b0390a18551968752860152818560248186305af1809584966106bb575b5061069657506080935060108351938085528401526f18dc99585d194c97dc995d995c9d195960821b6060840152820152a180f35b92936001600160a01b0316925f80516020610f8f833981519152925061036284610c9f565b6106d3919650833d8511610444576104358183610af5565b945f610661565b6106f090833d85116101d3576101c38183610af5565b505f610625565b85513d86823e3d90fd5b6001600160a01b03909116915f80516020610f8f833981519152919061072684610c9f565b8b51908152a25f80516020610faf83398151915288518061074681610d21565b0390a16105f8565b610766919350823d8411610444576104358183610af5565b915f6105d2565b509061077836610bc9565b90949283516353266bbb60e01b958682528161079a6020968530858501610c1a565b0391858161080094818d875af180156108985761087b575b508551965f80516020610faf83398151915288806107d0839b610c74565b0390a186516101e9808201908282106001600160401b0383111761086857828d9493928a92610da683398581520301908bf0998a1561085e575f80516020610f8f83398151915288809a9b9c60018060a09c9b9c1b03169261083184610c9f565b8c51908152a28989518061084481610cda565b0390a161016a895197889687958694855230908501610c1a565b88513d84823e3d90fd5b634e487b7160e01b8d526041855260248dfd5b61089190863d88116101d3576101c38183610af5565b505f6107b2565b87513d8c823e3d90fd5b506108ac36610b8f565b908495929551936101e9808601908682106001600160401b03831117610a8857908691610da68339898152602096879103019082f08015610a7e576001600160a01b031692916109559186919085905f80516020610f8f83398151915290849061091584610c9f565b8b51908152a28751985f80516020610faf8339815191528a80610938839d610cda565b0390a188516353266bbb60e01b81529384928392308a8501610c1a565b03818b6108005af19081610a61575b50610a4c5785608086518781526008888201526764656c656761746560c01b60608201528987820152a15b8680808084865af13d15610a47573d6109a781610b2a565b906109b488519283610af5565b815288863d92013e5b15610a10579183917ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e52869560019560809851908152a2835193808552840152631cd95b9960e21b6060840152820152a180f35b845162461bcd60e51b8152808401859052601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6109bd565b85855180610a5981610d7b565b0390a161098f565b610a7790863d88116101d3576101c38183610af5565b505f610964565b86513d8a823e3d90fd5b634e487b7160e01b8a526041865260248afd5b509034610ac5576020366003190112610ac557359180548310156104f75750610525602092610ac9565b8280fd5b905f918254811015610ae15782805260208320019190565b634e487b7160e01b83526032600452602483fd5b90601f801991011681019081106001600160401b03821117610b1657604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b038111610b1657601f01601f191660200190565b81601f82011215610b8b57803590610b5c82610b2a565b92610b6a6040519485610af5565b82845260208383010111610b8b57815f926020809301838601378301015290565b5f80fd5b906080600319830112610b8b5760043591602435906001600160401b038211610b8b57610bbe91600401610b45565b906044359060643590565b6080600319820112610b8b57600435906001600160401b038211610b8b57610bf391600401610b45565b90602435906044359060643590565b90816020910312610b8b57518015158103610b8b5790565b9392919060018060a01b0316845260206060818601528151918260608701525f5b838110610c60575050506080815f8260409488010152601f8019910116850101930152565b818101830151878201608001528201610c3b565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b5f54600160401b811015610b1657806001610cbc92015f55610ac9565b819291549060031b9160018060a01b03809116831b921b1916179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b90816020910312610b8b57516001600160a01b0381168103610b8b5790565b906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f602060808401930152565b9060408252600860408301526764656c656761746560c01b6060830152600160206080840193015256fe6080601f6101e938819003918201601f19168301916001600160401b038311848410176100de578084926020946040528339810103126100da575180151581036100da57610095573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160f690816100f38239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f90813560e01c90816302d05d3f146099575080632096525514607e57633fa4f24503600e5734607b5780600319360112607b5760209054604051908152f35b80fd5b5034607b5780600319360112607b5760209054604051908152f35b90503460bc578160031936011260bc576001546001600160a01b03168152602090f35b5080fdfea2646970667358221220ce8e9db4668f7bbb9824eaabdca215a30e571bb0f48c2cb0f698a8e8abc681ae64736f6c634300081400331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a264697066735822122054c08ab623063accdd988fb07fb40e2096d7699b58c373540b6cebeb2760914164736f6c63430008140033", + "bytecode": "0x60808060405234601557610ed6908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806308811397146109ce5780637a0aaa5b146108045780637d5b953914610703578063aabf1086146105a9578063b203934e1461058d578063c242737f14610511578063c53e5ae31461047d578063e71b671a1461027e5763edab92990361000e576100b1602061008f36610ad8565b929491604094919451809381926353266bbb60e01b8352883060048501610bb2565b03815f6108005af180156101f457610261575b505f516020610e815f395f51905f52604051806100e081610c1d565b0390a1604051926101c892838501948086106001600160401b0387111761024d5760208161016e978297610c9983395f815203019082f0806101ff5750505f516020610e815f395f51905f52608060405160408152600660408201526563726561746560d01b60608201525f86820152a15b6040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576101c7575b5f516020610e815f395f51905f52604051806101c281906040825260096040830152683232b632b3b0ba329960b91b60608301526001602060808401930152565b0390a1005b6101e89060203d6020116101ed575b6101e08183610a1c565b810190610b9a565b610181565b503d6101d6565b6040513d5f823e3d90fd5b6001600160a01b0316905f516020610e615f395f51905f5290859061022384610b11565b604051908152a25f516020610e815f395f51905f526040518061024581610b72565b0390a1610152565b634e487b7160e01b5f52604160045260245ffd5b6102799060203d6020116101ed576101e08183610a1c565b6100c4565b60206102f661028c36610a9e565b949260409291925163c53e5ae360e01b8152816004820152848160248185305af15f918161044e575b506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b0390a16040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576103c7575b505f516020610e815f395f51905f526040518061032581610bf3565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019082f080156101f4576001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b604051908152a25f516020610e815f395f51905f52604051806101c2819060408252600760408301526631b932b0ba329960c91b60608301526001602060808401930152565b6103df9060203d6020116101ed576101e08183610a1c565b610309565b6001600160a01b0316905f516020610e615f395f51905f5290859061040884610b11565b604051908152a25f516020610e815f395f51905f526040518061024581906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b61046f919250863d8811610476575b6104678183610a1c565b810190610c48565b90886102b5565b503d61045d565b602036600319011261050d576040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f8152030190600435f0156101f45760405162461bcd60e51b815260206004820152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b5f80fd5b3461050d57602036600319011261050d576004355f54811015610552576105396020916109f2565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461050d575f36600319011261050d5760205f54604051908152f35b60206106016105b736610a9e565b949260409291925163c53e5ae360e01b815281600482015284816024815f305af15f918161044e57506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b03815f6108005af180156101f4576106e6575b505f516020610e815f395f51905f526040518061063081610bf3565b0390a160405163c53e5ae360e01b8152600481018290526020816024815f305af15f91816106c5575b506106a05750505f516020610e815f395f51905f52608060405160408152601060408201526f18dc99585d194c97dc995d995c9d195960821b60608201525f6020820152a1005b6001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b6106df91925060203d602011610476576104678183610a1c565b9083610659565b6106fe9060203d6020116101ed576101e08183610a1c565b610614565b602061073361071136610ad8565b929391604095919551809381926353266bbb60e01b8352873060048501610bb2565b03815f6108005af180156101f4576107e7575b505f516020610e815f395f51905f526040518061076281610c1d565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019084f09182156101f45761016e936020936001600160a01b0316905f516020610e615f395f51905f529085906107c584610b11565b604051908152a25f516020610e815f395f51905f52604051806102d781610b72565b6107ff9060203d6020116101ed576101e08183610a1c565b610746565b61080d36610a9e565b9192906040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019083f09081156101f457602094610870935f516020610e615f395f51905f52879460018060a01b03169788926107c584610b11565b03815f6108005af190816109b1575b5061098e575f516020610e815f395f51905f52608060405160408152600860408201526764656c656761746560c01b60608201525f6020820152a15b5f80808084865af13d15610989573d6108d381610a3d565b906108e16040519283610a1c565b81525f60203d92013e5b156109505760207ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e5291604051908152a25f516020610e815f395f51905f5260806040516040815260046040820152631cd95b9960e21b606082015260016020820152a1005b60405162461bcd60e51b815260206004820152601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6108eb565b5f516020610e815f395f51905f52604051806109a981610bf3565b0390a16108bb565b6109c99060203d6020116101ed576101e08183610a1c565b61087f565b3461050d57602036600319011261050d576004355f5481101561050d576105396020915b5f54811015610a08575f805260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b90601f801991011681019081106001600160401b0382111761024d57604052565b6001600160401b03811161024d57601f01601f191660200190565b81601f8201121561050d57803590610a6f82610a3d565b92610a7d6040519485610a1c565b8284526020838301011161050d57815f926020809301838601378301015290565b90608060031983011261050d5760043591602435906001600160401b03821161050d57610acd91600401610a58565b906044359060643590565b608060031982011261050d57600435906001600160401b03821161050d57610b0291600401610a58565b90602435906044359060643590565b5f54600160401b81101561024d57600181015f555f54811015610a08575f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b03909216919091179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b9081602091031261050d5751801515810361050d5790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b9081602091031261050d57516001600160a01b038116810361050d5790565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f60206080840193015256fe6080601f6101c838819003918201601f19168301916001600160401b0383118484101760da5780849260209460405283398101031260d65751801515810360d6576091573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160d990816100ef8239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f3560e01c90816302d05d3f146082575080632096525514606457633fa4f245146064575f600e565b34607e575f366003190112607e5760205f54604051908152f35b5f80fd5b34607e575f366003190112607e576001546001600160a01b03168152602090f3fea2646970667358221220f241ecbe432960ceeccc84eface7bd640111f8aef7cc640f5ac908271f1b93f064736f6c634300081c00331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a264697066735822122069cbc93d99d111c3eb9ceefdc0b1a14ddfcd7c4945436d669f3e61964c53aec364736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806308811397146109ce5780637a0aaa5b146108045780637d5b953914610703578063aabf1086146105a9578063b203934e1461058d578063c242737f14610511578063c53e5ae31461047d578063e71b671a1461027e5763edab92990361000e576100b1602061008f36610ad8565b929491604094919451809381926353266bbb60e01b8352883060048501610bb2565b03815f6108005af180156101f457610261575b505f516020610e815f395f51905f52604051806100e081610c1d565b0390a1604051926101c892838501948086106001600160401b0387111761024d5760208161016e978297610c9983395f815203019082f0806101ff5750505f516020610e815f395f51905f52608060405160408152600660408201526563726561746560d01b60608201525f86820152a15b6040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576101c7575b5f516020610e815f395f51905f52604051806101c281906040825260096040830152683232b632b3b0ba329960b91b60608301526001602060808401930152565b0390a1005b6101e89060203d6020116101ed575b6101e08183610a1c565b810190610b9a565b610181565b503d6101d6565b6040513d5f823e3d90fd5b6001600160a01b0316905f516020610e615f395f51905f5290859061022384610b11565b604051908152a25f516020610e815f395f51905f526040518061024581610b72565b0390a1610152565b634e487b7160e01b5f52604160045260245ffd5b6102799060203d6020116101ed576101e08183610a1c565b6100c4565b60206102f661028c36610a9e565b949260409291925163c53e5ae360e01b8152816004820152848160248185305af15f918161044e575b506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b0390a16040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576103c7575b505f516020610e815f395f51905f526040518061032581610bf3565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019082f080156101f4576001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b604051908152a25f516020610e815f395f51905f52604051806101c2819060408252600760408301526631b932b0ba329960c91b60608301526001602060808401930152565b6103df9060203d6020116101ed576101e08183610a1c565b610309565b6001600160a01b0316905f516020610e615f395f51905f5290859061040884610b11565b604051908152a25f516020610e815f395f51905f526040518061024581906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b61046f919250863d8811610476575b6104678183610a1c565b810190610c48565b90886102b5565b503d61045d565b602036600319011261050d576040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f8152030190600435f0156101f45760405162461bcd60e51b815260206004820152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b5f80fd5b3461050d57602036600319011261050d576004355f54811015610552576105396020916109f2565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461050d575f36600319011261050d5760205f54604051908152f35b60206106016105b736610a9e565b949260409291925163c53e5ae360e01b815281600482015284816024815f305af15f918161044e57506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b03815f6108005af180156101f4576106e6575b505f516020610e815f395f51905f526040518061063081610bf3565b0390a160405163c53e5ae360e01b8152600481018290526020816024815f305af15f91816106c5575b506106a05750505f516020610e815f395f51905f52608060405160408152601060408201526f18dc99585d194c97dc995d995c9d195960821b60608201525f6020820152a1005b6001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b6106df91925060203d602011610476576104678183610a1c565b9083610659565b6106fe9060203d6020116101ed576101e08183610a1c565b610614565b602061073361071136610ad8565b929391604095919551809381926353266bbb60e01b8352873060048501610bb2565b03815f6108005af180156101f4576107e7575b505f516020610e815f395f51905f526040518061076281610c1d565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019084f09182156101f45761016e936020936001600160a01b0316905f516020610e615f395f51905f529085906107c584610b11565b604051908152a25f516020610e815f395f51905f52604051806102d781610b72565b6107ff9060203d6020116101ed576101e08183610a1c565b610746565b61080d36610a9e565b9192906040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019083f09081156101f457602094610870935f516020610e615f395f51905f52879460018060a01b03169788926107c584610b11565b03815f6108005af190816109b1575b5061098e575f516020610e815f395f51905f52608060405160408152600860408201526764656c656761746560c01b60608201525f6020820152a15b5f80808084865af13d15610989573d6108d381610a3d565b906108e16040519283610a1c565b81525f60203d92013e5b156109505760207ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e5291604051908152a25f516020610e815f395f51905f5260806040516040815260046040820152631cd95b9960e21b606082015260016020820152a1005b60405162461bcd60e51b815260206004820152601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6108eb565b5f516020610e815f395f51905f52604051806109a981610bf3565b0390a16108bb565b6109c99060203d6020116101ed576101e08183610a1c565b61087f565b3461050d57602036600319011261050d576004355f5481101561050d576105396020915b5f54811015610a08575f805260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b90601f801991011681019081106001600160401b0382111761024d57604052565b6001600160401b03811161024d57601f01601f191660200190565b81601f8201121561050d57803590610a6f82610a3d565b92610a7d6040519485610a1c565b8284526020838301011161050d57815f926020809301838601378301015290565b90608060031983011261050d5760043591602435906001600160401b03821161050d57610acd91600401610a58565b906044359060643590565b608060031982011261050d57600435906001600160401b03821161050d57610b0291600401610a58565b90602435906044359060643590565b5f54600160401b81101561024d57600181015f555f54811015610a08575f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b03909216919091179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b9081602091031261050d5751801515810361050d5790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b9081602091031261050d57516001600160a01b038116810361050d5790565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f60206080840193015256fe6080601f6101c838819003918201601f19168301916001600160401b0383118484101760da5780849260209460405283398101031260d65751801515810360d6576091573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160d990816100ef8239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f3560e01c90816302d05d3f146082575080632096525514606457633fa4f245146064575f600e565b34607e575f366003190112607e5760205f54604051908152f35b5f80fd5b34607e575f366003190112607e576001546001600160a01b03168152602090f3fea2646970667358221220f241ecbe432960ceeccc84eface7bd640111f8aef7cc640f5ac908271f1b93f064736f6c634300081c00331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a264697066735822122069cbc93d99d111c3eb9ceefdc0b1a14ddfcd7c4945436d669f3e61964c53aec364736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/ContractCreationTester.sol", - "buildInfoId": "solc-0_8_20-a1f91ec3b065d50730c0367f861277c93634d90c" + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" } \ No newline at end of file diff --git a/contracts/solidity/DebugPrecompileCaller.json b/contracts/solidity/DebugPrecompileCaller.json index cca7100b0..b92da9602 100644 --- a/contracts/solidity/DebugPrecompileCaller.json +++ b/contracts/solidity/DebugPrecompileCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "DebugPrecompileCaller", "sourceName": "solidity/DebugPrecompileCaller.sol", "abi": [ @@ -28,8 +28,11 @@ "type": "function" } ], - "bytecode": "0x608080604052346100165761023e908161001c8239f35b600080fdfe6080604052600436101561001257600080fd5b6000803560e01c63ff585caf1461002857600080fd5b34610047576020366003190112610047576100446004356100f4565b80f35b80fd5b3d156100a65767ffffffffffffffff903d8281116100905760405192601f8201601f19908116603f01168401908111848210176100905760405282523d6000602084013e565b634e487b7160e01b600052604160045260246000fd5b606090565b6020808252825181830181905290939260005b8281106100e057505060409293506000838284010152601f8019910116010190565b8181018601518482016040015285016100be565b60005b81811061017a5750600381116101775760405190602082019060008252602183015260218252606082019082821067ffffffffffffffff8311176100905760009283926040525190826107995af161014d61004a565b90156101565750565b60405163a5fa8d2b60e01b815290819061017390600483016100ab565b0390fd5b50565b60408051600160f81b60208201908152600182528183019067ffffffffffffffff82118383101761009057600092839285525190826107995af1906101bd61004a565b91156101ec57505060001981146101d6576001016100f7565b634e487b7160e01b600052601160045260246000fd5b5163a5fa8d2b60e01b81529150819061017390600483016100ab56fea2646970667358221220f0ddd005e729c0bf54b8295a483a2d7c84c3948a24b42ea5b8f906cf9b1c361f64736f6c63430008140033", - "deployedBytecode": "0x6080604052600436101561001257600080fd5b6000803560e01c63ff585caf1461002857600080fd5b34610047576020366003190112610047576100446004356100f4565b80f35b80fd5b3d156100a65767ffffffffffffffff903d8281116100905760405192601f8201601f19908116603f01168401908111848210176100905760405282523d6000602084013e565b634e487b7160e01b600052604160045260246000fd5b606090565b6020808252825181830181905290939260005b8281106100e057505060409293506000838284010152601f8019910116010190565b8181018601518482016040015285016100be565b60005b81811061017a5750600381116101775760405190602082019060008252602183015260218252606082019082821067ffffffffffffffff8311176100905760009283926040525190826107995af161014d61004a565b90156101565750565b60405163a5fa8d2b60e01b815290819061017390600483016100ab565b0390fd5b50565b60408051600160f81b60208201908152600182528183019067ffffffffffffffff82118383101761009057600092839285525190826107995af1906101bd61004a565b91156101ec57505060001981146101d6576001016100f7565b634e487b7160e01b600052601160045260246000fd5b5163a5fa8d2b60e01b81529150819061017390600483016100ab56fea2646970667358221220f0ddd005e729c0bf54b8295a483a2d7c84c3948a24b42ea5b8f906cf9b1c361f64736f6c63430008140033", + "bytecode": "0x608080604052346015576101cb908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c63ff585caf14610024575f80fd5b34610042576020366003190112610042576100406004356100e5565b005b5f80fd5b90601f8019910116810190811067ffffffffffffffff82111761006857604052565b634e487b7160e01b5f52604160045260245ffd5b3d156100b6573d9067ffffffffffffffff821161006857604051916100ab601f8201601f191660200184610046565b82523d5f602084013e565b606090565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b5f5b818110610156575060038111610153575f80916040516020810191838352602182015260218152610119604182610046565b5190826107995af161012961007c565b90156101325750565b60405163a5fa8d2b60e01b815290819061014f90600483016100bb565b0390fd5b50565b5f806040516020810190600160f81b825260018152610176602182610046565b5190826107995af161018661007c565b901561013257506001016100e756fea2646970667358221220c87e5cafa66af43148aa4e707bc698e292e29c1fe46048687354d68c516b860364736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c63ff585caf14610024575f80fd5b34610042576020366003190112610042576100406004356100e5565b005b5f80fd5b90601f8019910116810190811067ffffffffffffffff82111761006857604052565b634e487b7160e01b5f52604160045260245ffd5b3d156100b6573d9067ffffffffffffffff821161006857604051916100ab601f8201601f191660200184610046565b82523d5f602084013e565b606090565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b5f5b818110610156575060038111610153575f80916040516020810191838352602182015260218152610119604182610046565b5190826107995af161012961007c565b90156101325750565b60405163a5fa8d2b60e01b815290819061014f90600483016100bb565b0390fd5b50565b5f806040516020810190600160f81b825260018152610176602182610046565b5190826107995af161018661007c565b901561013257506001016100e756fea2646970667358221220c87e5cafa66af43148aa4e707bc698e292e29c1fe46048687354d68c516b860364736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/DebugPrecompileCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/ERC20MinterBurnerDecimals.json b/contracts/solidity/ERC20MinterBurnerDecimals.json index d26af3b43..1922160ec 100644 --- a/contracts/solidity/ERC20MinterBurnerDecimals.json +++ b/contracts/solidity/ERC20MinterBurnerDecimals.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20MinterBurnerDecimals", "sourceName": "solidity/ERC20MinterBurnerDecimals.sol", "abi": [ @@ -24,6 +24,123 @@ "stateMutability": "nonpayable", "type": "constructor" }, + { + "inputs": [], + "name": "AccessControlBadConfirmation", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "neededRole", + "type": "bytes32" + } + ], + "name": "AccessControlUnauthorizedAccount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientBalance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "approver", + "type": "address" + } + ], + "name": "ERC20InvalidApprover", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "ERC20InvalidReceiver", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "ERC20InvalidSender", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "ERC20InvalidSpender", + "type": "error" + }, + { + "inputs": [], + "name": "EnforcedPause", + "type": "error" + }, + { + "inputs": [], + "name": "ExpectedPause", + "type": "error" + }, { "anonymous": false, "inputs": [ @@ -260,7 +377,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -298,7 +415,7 @@ "inputs": [ { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -334,7 +451,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -356,30 +473,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { @@ -448,16 +541,17 @@ "internalType": "bytes32", "name": "role", "type": "bytes32" - }, + } + ], + "name": "getRoleMembers", + "outputs": [ { - "internalType": "address", - "name": "account", - "type": "address" + "internalType": "address[]", + "name": "", + "type": "address[]" } ], - "name": "grantRole", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -473,31 +567,25 @@ "type": "address" } ], - "name": "hasRole", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", + "name": "grantRole", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "address", - "name": "spender", - "type": "address" + "internalType": "bytes32", + "name": "role", + "type": "bytes32" }, { - "internalType": "uint256", - "name": "addedValue", - "type": "uint256" + "internalType": "address", + "name": "account", + "type": "address" } ], - "name": "increaseAllowance", + "name": "hasRole", "outputs": [ { "internalType": "bool", @@ -505,7 +593,7 @@ "type": "bool" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -568,7 +656,7 @@ }, { "internalType": "address", - "name": "account", + "name": "callerConfirmation", "type": "address" } ], @@ -649,7 +737,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -678,7 +766,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -701,8 +789,11 @@ "type": "function" } ], - "bytecode": "0x60406080815234620005715762001f80803803806200001e8162000576565b9283398101606082820312620005715781516001600160401b039190828111620005715781620000509185016200059c565b9160209182850151828111620005715786916200006f9187016200059c565b9401519360ff851685036200057157835182811162000488576005918254916001968784811c9416801562000566575b8785101462000467578190601f9485811162000512575b508790858311600114620004aa576000926200049e575b5050600019600383901b1c191690871b1783555b805193841162000488576006548681811c911680156200047d575b86821014620004675784938382116200040d575b505084918311600114620003a35760009262000397575b5050600019600383901b1c191690831b176006555b60ff19806007541660075560008052600082528460002033600052825260ff856000205416156200035c575b600080528282526200017e33866000206200060e565b507f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a680600052600083528560002033600052835260ff8660002054161562000321575b600052828252620001d633866000206200060e565b507f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a80600052600083528560002033600052835260ff86600020541615620002e6575b6000528282526200022e33866000206200060e565b507f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8489081600052600083528560002033600052835260ff86600020541615620002aa575b50600052526200028633836000206200060e565b5061ff006007549160081b169061ff00191617600755516118c490816200069c8239f35b81600052600083528560002033600052835283866000209182541617905533338260008051602062001f60833981519152600080a43862000272565b80600052600083528560002033600052835285600020848382541617905533338260008051602062001f60833981519152600080a462000219565b80600052600083528560002033600052835285600020848382541617905533338260008051602062001f60833981519152600080a4620001c1565b6000805260008252846000203360005282528460002083828254161790553333600060008051602062001f608339815191528180a462000168565b01519050388062000127565b90859350601f198316916006600052856000209260005b87828210620003f65750508411620003dc575b505050811b016006556200013c565b015160001960f88460031b161c19169055388080620003cd565b8385015186558997909501949384019301620003ba565b90919293506006600052856000209084808701821c8301938888106200045d575b9187968a93969594929601901c01915b8281106200044d575062000110565b600081558695508891016200043e565b935082936200042e565b634e487b7160e01b600052602260045260246000fd5b90607f1690620000fc565b634e487b7160e01b600052604160045260246000fd5b015190503880620000cd565b90899350601f1983169187600052896000209260005b8b828210620004fb5750508411620004e1575b505050811b018355620000e1565b015160001960f88460031b161c19169055388080620004d3565b8385015186558d97909501949384019301620004c0565b909150856000528760002085808501881c8201928a86106200055c575b918b918695949301891c01915b8281106200054c575050620000b6565b600081558594508b91016200053c565b925081926200052f565b93607f16936200009f565b600080fd5b6040519190601f01601f191682016001600160401b038111838210176200048857604052565b919080601f84011215620005715782516001600160401b0381116200048857602090620005d2601f8201601f1916830162000576565b92818452828287010111620005715760005b818110620005fa57508260009394955001015290565b8581018301518482018401528201620005e4565b919060018301600090828252806020526040822054156000146200069557845494680100000000000000008610156200068157600186018082558610156200066d57836040949596828552602085200155549382526020522055600190565b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b83526041600452602483fd5b5092505056fe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610d3a5750816306fdde0314610c99578163095ea7b314610c6f57816318160ddd14610c515781631cf2c7e214610b9b57816323b872dd14610b5e578163248a9ca314610b34578163282c51f314610af95781632f2ff15d14610a45578163313ce56714610a2057816336568abe1461098e578163395093511461093e5781633f4ba83a1461083057816340c10f191461069957816342966c681461067b5781635c975abb1461065757816370a082311461061f57816379cc6790146105ef5781638456cb59146104e75781639010d07c146104a657816391d148541461046057816395d89b411461037b578163a217fddf14610360578163a457c2d7146102b8578163a9059cbb14610287578163ca15c8731461025f578163d539139314610224578163d547741f146101e257508063dd62ed3e1461019a5763e63ab1e91461016f57600080fd5b346101965781600319360112610196576020905160008051602061182f8339815191528152f35b5080fd5b5034610196578060031936011261019657806020926101b7610df6565b6101bf610e11565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b9190503461022057806003193601126102205761021d91356102186001610207610e11565b938387528660205286200154610e27565b611187565b80f35b8280fd5b505034610196578160031936011261019657602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b9050346102205760203660031901126102205760209282913581526001845220549051908152f35b5050346101965780600319360112610196576020906102b16102a7610df6565b6024359033611231565b5160018152f35b9050823461035d578260031936011261035d576102d3610df6565b918360243592338152600360205281812060018060a01b038616825260205220549082821061030c576020856102b185850387336113f1565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b50503461019657816003193601126101965751908152602090f35b91905034610220578260031936011261022057805191836006549060019082821c928281168015610456575b6020958686108214610443575084885290811561042157506001146103e6575b6103e286866103d8828b038361114f565b5191829182610dca565b0390f35b929550600683528583205b82841061040e57505050826103e2946103d89282010194386103c7565b80548685018801529286019281016103f1565b60ff191687860152505050151560051b83010192506103d8826103e2386103c7565b634e487b7160e01b845260229052602483fd5b93607f16936103a7565b9050346102205781600319360112610220578160209360ff92610481610e11565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b9050346102205781600319360112610220576020926104d191358152600184528260243591206116b5565b905491519160018060a01b039160031b1c168152f35b90503461022057826003193601126102205760008051602061182f83398151915283528260205281832033845260205260ff82842054161561059d576007549060ff8216610567575060ff1916600117600755513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602090a180f35b606490602084519162461bcd60e51b8352820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152fd5b6020608492519162461bcd60e51b83528201526039602482015260008051602061186f833981519152604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152fd5b5050346101965736600319011261035d5761021d61060b610df6565b6024359061061a8233836114f3565b61158b565b5050346101965760203660031901126101965760209181906001600160a01b03610647610df6565b1681526002845220549051908152f35b50503461019657816003193601126101965760209060ff6007541690519015158152f35b8390346101965760203660031901126101965761021d90353361158b565b919050346102205780600319360112610220576106b4610df6565b90602435907f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68552602092858452818620338752845260ff8287205416156107de576001600160a01b031693841561079d5760ff6007541661074957918593918361072f8360008051602061184f833981519152965461120e565b90558585526002835280852082815401905551908152a380f35b83608492519162461bcd60e51b8352820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b83606492519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b815162461bcd60e51b81528086018590526038602482015260008051602061186f8339815191526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b90503461022057826003193601126102205760008051602061182f83398151915283528260205281832033845260205260ff8284205416156108e8576007549060ff8216156108ae575060ff1916600755513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a180f35b606490602084519162461bcd60e51b8352820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152fd5b6020608492519162461bcd60e51b8352820152603b602482015260008051602061186f83398151915260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152fd5b5050346101965780600319360112610196576102b1602092610987610961610df6565b338352600386528483206001600160a01b0382168452865291849020546024359061120e565b90336113f1565b839150346101965782600319360112610196576109a9610e11565b90336001600160a01b038316036109c5579061021d9135611187565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b50503461019657816003193601126101965760209060ff60075460081c169051908152f35b91905034610220578060031936011261022057610aae9135906001610a68610e11565b92808652602090868252610a80838589200154610e27565b80875286825283872094838060a01b031694858852825260ff848820541615610ab2575b86525283206116cd565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610aa4565b505034610196578160031936011261019657602090517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b90503461022057602036600319011261022057816020936001923581528085522001549051908152f35b505034610196576060366003190112610196576020906102b1610b7f610df6565b610b87610e11565b60443591610b968333836114f3565b611231565b905034610220578160031936011261022057610bb5610df6565b917f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84884528360205280842033855260205260ff818520541615610bff578361021d6024358561158b565b906020608492519162461bcd60e51b83528201526038602482015260008051602061186f8339815191526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152fd5b90503461022057826003193601126102205760209250549051908152f35b5050346101965780600319360112610196576020906102b1610c8f610df6565b60243590336113f1565b91905034610220578260031936011261022057805191836005549060019082821c928281168015610d30575b602095868610821461044357508488529081156104215750600114610cf5576103e286866103d8828b038361114f565b929550600583528583205b828410610d1d57505050826103e2946103d89282010194386103c7565b8054868501880152928601928101610d00565b93607f1693610cc5565b849134610220576020366003190112610220573563ffffffff60e01b81168091036102205760209250635a05180f60e01b8114908115610d7c575b5015158152f35b637965db0b60e01b811491508115610d96575b5083610d75565b6301ffc9a760e01b14905083610d8f565b60005b838110610dba5750506000910152565b8181015183820152602001610daa565b60409160208252610dea8151809281602086015260208686019101610da7565b601f01601f1916010190565b600435906001600160a01b0382168203610e0c57565b600080fd5b602435906001600160a01b0382168203610e0c57565b6000818152602090808252604092838220338352835260ff848320541615610e4f5750505050565b835167ffffffffffffffff919033606082018481118382101761113b578752602a825285820192873685378251156111275760308453825191600192831015611113576078602185015360295b8381116110a9575061106757908751946080860190868210908211176110535788526042855286850195606036883785511561103f5760308753855182101561103f5790607860218701536041915b818311610fd157505050610f8f57938593610f7593610f66604894610f3d76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b99610f8b9b519a8b978801525180926037880190610da7565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190610da7565b0103602881018552018361114f565b5162461bcd60e51b815291829160048301610dca565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f8116601081101561102b576f181899199a1a9b1b9c1cb0b131b232b360811b901a611001858961168e565b5360041c92801561101757600019019190610eeb565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f811660108110156110ff576f181899199a1a9b1b9c1cb0b131b232b360811b901a6110d7838761168e565b5360041c9080156110eb5760001901610e9c565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90601f8019910116810190811067ffffffffffffffff82111761117157604052565b634e487b7160e01b600052604160045260246000fd5b9060406111c492600090808252816020528282209360018060a01b03169384835260205260ff83832054166111c7575b8152600160205220611752565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a46111b7565b9190820180921161121b57565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0390811691821561139e571691821561134d5760ff600754166112f557600082815260026020526040812054918083106112a1576040828260008051602061184f83398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156114a257169182156114525760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b038083166000526003602052604060002090821660005260205260406000205492600019840361152b575b50505050565b8084106115465761153d9303916113f1565b38808080611525565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b0316801561163f5760ff600754166112f557806000526002602052604060002054918083106115ef5760208160008051602061184f83398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b90815181101561169f570160200190565b634e487b7160e01b600052603260045260246000fd5b805482101561169f5760005260206000200190600090565b9190600183016000908282528060205260408220541560001461174c57845494600160401b8610156117385783611728611711886001604098999a018555846116b5565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b906001820190600092818452826020526040842054908115156000146118275760001991808301818111611813578254908482019182116110eb578082036117de575b505050805480156117ca578201916117ad83836116b5565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b6117fe6117ee61171193866116b5565b90549060031b1c928392866116b5565b90558652846020526040862055388080611795565b634e487b7160e01b87526011600452602487fd5b505050509056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862addf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220ce1ae6525e01655a7cc9c91e11284a74018763a1d850a7c67f6a12c52b68836964736f6c634300081400332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "deployedBytecode": "0x608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610d3a5750816306fdde0314610c99578163095ea7b314610c6f57816318160ddd14610c515781631cf2c7e214610b9b57816323b872dd14610b5e578163248a9ca314610b34578163282c51f314610af95781632f2ff15d14610a45578163313ce56714610a2057816336568abe1461098e578163395093511461093e5781633f4ba83a1461083057816340c10f191461069957816342966c681461067b5781635c975abb1461065757816370a082311461061f57816379cc6790146105ef5781638456cb59146104e75781639010d07c146104a657816391d148541461046057816395d89b411461037b578163a217fddf14610360578163a457c2d7146102b8578163a9059cbb14610287578163ca15c8731461025f578163d539139314610224578163d547741f146101e257508063dd62ed3e1461019a5763e63ab1e91461016f57600080fd5b346101965781600319360112610196576020905160008051602061182f8339815191528152f35b5080fd5b5034610196578060031936011261019657806020926101b7610df6565b6101bf610e11565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b9190503461022057806003193601126102205761021d91356102186001610207610e11565b938387528660205286200154610e27565b611187565b80f35b8280fd5b505034610196578160031936011261019657602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b9050346102205760203660031901126102205760209282913581526001845220549051908152f35b5050346101965780600319360112610196576020906102b16102a7610df6565b6024359033611231565b5160018152f35b9050823461035d578260031936011261035d576102d3610df6565b918360243592338152600360205281812060018060a01b038616825260205220549082821061030c576020856102b185850387336113f1565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b50503461019657816003193601126101965751908152602090f35b91905034610220578260031936011261022057805191836006549060019082821c928281168015610456575b6020958686108214610443575084885290811561042157506001146103e6575b6103e286866103d8828b038361114f565b5191829182610dca565b0390f35b929550600683528583205b82841061040e57505050826103e2946103d89282010194386103c7565b80548685018801529286019281016103f1565b60ff191687860152505050151560051b83010192506103d8826103e2386103c7565b634e487b7160e01b845260229052602483fd5b93607f16936103a7565b9050346102205781600319360112610220578160209360ff92610481610e11565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b9050346102205781600319360112610220576020926104d191358152600184528260243591206116b5565b905491519160018060a01b039160031b1c168152f35b90503461022057826003193601126102205760008051602061182f83398151915283528260205281832033845260205260ff82842054161561059d576007549060ff8216610567575060ff1916600117600755513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602090a180f35b606490602084519162461bcd60e51b8352820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152fd5b6020608492519162461bcd60e51b83528201526039602482015260008051602061186f833981519152604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152fd5b5050346101965736600319011261035d5761021d61060b610df6565b6024359061061a8233836114f3565b61158b565b5050346101965760203660031901126101965760209181906001600160a01b03610647610df6565b1681526002845220549051908152f35b50503461019657816003193601126101965760209060ff6007541690519015158152f35b8390346101965760203660031901126101965761021d90353361158b565b919050346102205780600319360112610220576106b4610df6565b90602435907f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68552602092858452818620338752845260ff8287205416156107de576001600160a01b031693841561079d5760ff6007541661074957918593918361072f8360008051602061184f833981519152965461120e565b90558585526002835280852082815401905551908152a380f35b83608492519162461bcd60e51b8352820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b83606492519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b815162461bcd60e51b81528086018590526038602482015260008051602061186f8339815191526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b90503461022057826003193601126102205760008051602061182f83398151915283528260205281832033845260205260ff8284205416156108e8576007549060ff8216156108ae575060ff1916600755513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a180f35b606490602084519162461bcd60e51b8352820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152fd5b6020608492519162461bcd60e51b8352820152603b602482015260008051602061186f83398151915260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152fd5b5050346101965780600319360112610196576102b1602092610987610961610df6565b338352600386528483206001600160a01b0382168452865291849020546024359061120e565b90336113f1565b839150346101965782600319360112610196576109a9610e11565b90336001600160a01b038316036109c5579061021d9135611187565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b50503461019657816003193601126101965760209060ff60075460081c169051908152f35b91905034610220578060031936011261022057610aae9135906001610a68610e11565b92808652602090868252610a80838589200154610e27565b80875286825283872094838060a01b031694858852825260ff848820541615610ab2575b86525283206116cd565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610aa4565b505034610196578160031936011261019657602090517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b90503461022057602036600319011261022057816020936001923581528085522001549051908152f35b505034610196576060366003190112610196576020906102b1610b7f610df6565b610b87610e11565b60443591610b968333836114f3565b611231565b905034610220578160031936011261022057610bb5610df6565b917f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84884528360205280842033855260205260ff818520541615610bff578361021d6024358561158b565b906020608492519162461bcd60e51b83528201526038602482015260008051602061186f8339815191526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152fd5b90503461022057826003193601126102205760209250549051908152f35b5050346101965780600319360112610196576020906102b1610c8f610df6565b60243590336113f1565b91905034610220578260031936011261022057805191836005549060019082821c928281168015610d30575b602095868610821461044357508488529081156104215750600114610cf5576103e286866103d8828b038361114f565b929550600583528583205b828410610d1d57505050826103e2946103d89282010194386103c7565b8054868501880152928601928101610d00565b93607f1693610cc5565b849134610220576020366003190112610220573563ffffffff60e01b81168091036102205760209250635a05180f60e01b8114908115610d7c575b5015158152f35b637965db0b60e01b811491508115610d96575b5083610d75565b6301ffc9a760e01b14905083610d8f565b60005b838110610dba5750506000910152565b8181015183820152602001610daa565b60409160208252610dea8151809281602086015260208686019101610da7565b601f01601f1916010190565b600435906001600160a01b0382168203610e0c57565b600080fd5b602435906001600160a01b0382168203610e0c57565b6000818152602090808252604092838220338352835260ff848320541615610e4f5750505050565b835167ffffffffffffffff919033606082018481118382101761113b578752602a825285820192873685378251156111275760308453825191600192831015611113576078602185015360295b8381116110a9575061106757908751946080860190868210908211176110535788526042855286850195606036883785511561103f5760308753855182101561103f5790607860218701536041915b818311610fd157505050610f8f57938593610f7593610f66604894610f3d76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b99610f8b9b519a8b978801525180926037880190610da7565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190610da7565b0103602881018552018361114f565b5162461bcd60e51b815291829160048301610dca565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f8116601081101561102b576f181899199a1a9b1b9c1cb0b131b232b360811b901a611001858961168e565b5360041c92801561101757600019019190610eeb565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f811660108110156110ff576f181899199a1a9b1b9c1cb0b131b232b360811b901a6110d7838761168e565b5360041c9080156110eb5760001901610e9c565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90601f8019910116810190811067ffffffffffffffff82111761117157604052565b634e487b7160e01b600052604160045260246000fd5b9060406111c492600090808252816020528282209360018060a01b03169384835260205260ff83832054166111c7575b8152600160205220611752565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a46111b7565b9190820180921161121b57565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0390811691821561139e571691821561134d5760ff600754166112f557600082815260026020526040812054918083106112a1576040828260008051602061184f83398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156114a257169182156114525760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b038083166000526003602052604060002090821660005260205260406000205492600019840361152b575b50505050565b8084106115465761153d9303916113f1565b38808080611525565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b0316801561163f5760ff600754166112f557806000526002602052604060002054918083106115ef5760208160008051602061184f83398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b90815181101561169f570160200190565b634e487b7160e01b600052603260045260246000fd5b805482101561169f5760005260206000200190600090565b9190600183016000908282528060205260408220541560001461174c57845494600160401b8610156117385783611728611711886001604098999a018555846116b5565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b906001820190600092818452826020526040842054908115156000146118275760001991808301818111611813578254908482019182116110eb578082036117de575b505050805480156117ca578201916117ad83836116b5565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b6117fe6117ee61171193866116b5565b90549060031b1c928392866116b5565b90558652846020526040862055388080611795565b634e487b7160e01b87526011600452602487fd5b505050509056fe65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862addf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220ce1ae6525e01655a7cc9c91e11284a74018763a1d850a7c67f6a12c52b68836964736f6c63430008140033", + "bytecode": "0x60806040523461045b57611aa5803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611269908161073c8239f35b5f5160206119c55f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611a255f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611a455f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611a855f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a855f395f51905f5260205260408120805460ff191660011790553391905f5160206119a55f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206119e55f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f5160206119e55f395f51905f5260205260408120805460ff191660011790553391905f516020611a455f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a055f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a055f395f51905f5260205260408120805460ff191660011790553391905f516020611a255f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a655f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a655f395f51905f5260205260408120805460ff191660011790553391905f5160206119c55f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610c4d5750806306fdde0314610b92578063095ea7b314610aea57806318160ddd14610acd5780631cf2c7e214610a1e57806323b872dd146109e6578063248a9ca3146109b4578063282c51f31461097a5780632f2ff15d14610915578063313ce567146108f257806336568abe146108ae5780633f4ba83a146107c257806340c10f191461069e57806342966c68146106815780635c975abb1461065f57806370a082311461062757806379cc6790146105f75780638456cb591461051c5780639010d07c146104d757806391d148541461048f57806395d89b411461038b578063a217fddf14610371578063a3246ad3146102c2578063a9059cbb14610291578063ca15c87314610267578063d53913931461022d578063d547741f146101e9578063dd62ed3e146101995763e63ab1e91461015b575f80fd5b34610195575f3660031901126101955760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b34610195576040366003190112610195576101b2610ce4565b6101ba610cfa565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101955760403660031901126101955761022b600435610208610cfa565b90610226610221825f525f602052600160405f20015490565b610f06565b610f3e565b005b34610195575f3660031901126101955760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b34610195576020366003190112610195576004355f526001602052602060405f2054604051908152f35b34610195576040366003190112610195576102b76102ad610ce4565b6024359033610e77565b602060405160018152f35b34610195576020366003190112610195576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b81811061035b5750505081610310910382610d10565b604051918291602083019060208452518091526040830191905f5b818110610339575050500390f35b82516001600160a01b031684528594506020938401939092019160010161032b565b82548452602090930192600192830192016102fa565b34610195575f3660031901126101955760206040515f8152f35b34610195575f366003190112610195576040515f6006548060011c90600181168015610485575b6020831081146104715782855290811561044d57506001146103ef575b6103eb836103df81850382610d10565b60405191829182610cba565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610433575090915081016020016103df6103cf565b91926001816020925483858801015201910190929161041b565b60ff191660208086019190915291151560051b840190910191506103df90506103cf565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103b2565b34610195576040366003190112610195576104a8610cfa565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610195576040366003190112610195576004355f526001602052602061050360243560405f2061109b565b905460405160039290921b1c6001600160a01b03168152f35b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105a35761056a611080565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f5160206112145f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101955760403660031901126101955761022b610613610ce4565b60243590610622823383610dd4565b610d46565b34610195576020366003190112610195576001600160a01b03610648610ce4565b165f526002602052602060405f2054604051908152f35b34610195575f36600319011261019557602060ff600754166040519015158152f35b346101955760203660031901126101955761022b60043533610d46565b34610195576040366003190112610195576106b7610ce4565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff161561076f576001600160a01b031690811561075c5761070a611080565b600454908082018092116107485760205f5160206111f45f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108565760075460ff8116156108475760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f5160206112145f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b34610195576040366003190112610195576108c7610cfa565b336001600160a01b038216036108e35761022b90600435610f3e565b63334bd91960e11b5f5260045ffd5b34610195575f36600319011261019557602060ff60075460081c16604051908152f35b3461019557604036600319011261019557600435610931610cfa565b610949610221835f525f602052600160405f20015490565b6109538183610f78565b61095957005b5f9182526001602052604090912061022b916001600160a01b0316906110c4565b34610195575f3660031901126101955760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101955760203660031901126101955760206109de6004355f525f602052600160405f20015490565b604051908152f35b34610195576060366003190112610195576102b7610a02610ce4565b610a0a610cfa565b60443591610a19833383610dd4565b610e77565b3461019557604036600319011261019557610a37610ce4565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610a7a5761022b9060243590610d46565b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b34610195575f366003190112610195576020600454604051908152f35b3461019557604036600319011261019557610b03610ce4565b602435903315610b7f576001600160a01b0316908115610b6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b34610195575f366003190112610195576040515f6005548060011c90600181168015610c43575b6020831081146104715782855290811561044d5750600114610be5576103eb836103df81850382610d10565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610c29575090915081016020016103df6103cf565b919260018160209254838588010152019101909291610c11565b91607f1691610bb9565b34610195576020366003190112610195576004359063ffffffff60e01b821680920361019557602091635a05180f60e01b8114908115610c8f575b5015158152f35b637965db0b60e01b811491508115610ca9575b5083610c88565b6301ffc9a760e01b14905083610ca2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019557565b602435906001600160a01b038216820361019557565b90601f8019910116810190811067ffffffffffffffff821117610d3257604052565b634e487b7160e01b5f52604160045260245ffd5b9091906001600160a01b03168015610dc157610d60611080565b805f52600260205260405f2054838110610da7576020845f94955f5160206111f45f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f198410610e0e575b50505050565b828410610e54578015610b7f576001600160a01b03821615610b6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f808080610e08565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115610dc1576001600160a01b031691821561075c57610e9f611080565b815f52600260205260405f2054818110610eed57815f5160206111f45f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f8181526020818152604080832033845290915290205460ff1615610f285750565b63e2517d3f60e01b5f523360045260245260445ffd5b610f488282611000565b9182610f5357505090565b5f91825260016020526040909120610f74916001600160a01b03169061112e565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661108c57565b63d93c066560e01b5f5260045ffd5b80548210156110b0575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611127578054600160401b811015610d32576111146110fe82600187940185558461109b565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146111eb575f1981018181116107485782545f19810191908211610748578181036111b6575b505050805480156111a2575f190190611183828261109b565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6111d66111c66110fe938661109b565b90549060031b1c9283928661109b565b90555f528360205260405f20555f808061116a565b505050505f9056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a264697066735822122027d19e57fe18c64615bd1e57280210866a18f77a38baad3291e17215930a4c5164736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610c4d5750806306fdde0314610b92578063095ea7b314610aea57806318160ddd14610acd5780631cf2c7e214610a1e57806323b872dd146109e6578063248a9ca3146109b4578063282c51f31461097a5780632f2ff15d14610915578063313ce567146108f257806336568abe146108ae5780633f4ba83a146107c257806340c10f191461069e57806342966c68146106815780635c975abb1461065f57806370a082311461062757806379cc6790146105f75780638456cb591461051c5780639010d07c146104d757806391d148541461048f57806395d89b411461038b578063a217fddf14610371578063a3246ad3146102c2578063a9059cbb14610291578063ca15c87314610267578063d53913931461022d578063d547741f146101e9578063dd62ed3e146101995763e63ab1e91461015b575f80fd5b34610195575f3660031901126101955760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b34610195576040366003190112610195576101b2610ce4565b6101ba610cfa565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101955760403660031901126101955761022b600435610208610cfa565b90610226610221825f525f602052600160405f20015490565b610f06565b610f3e565b005b34610195575f3660031901126101955760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b34610195576020366003190112610195576004355f526001602052602060405f2054604051908152f35b34610195576040366003190112610195576102b76102ad610ce4565b6024359033610e77565b602060405160018152f35b34610195576020366003190112610195576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b81811061035b5750505081610310910382610d10565b604051918291602083019060208452518091526040830191905f5b818110610339575050500390f35b82516001600160a01b031684528594506020938401939092019160010161032b565b82548452602090930192600192830192016102fa565b34610195575f3660031901126101955760206040515f8152f35b34610195575f366003190112610195576040515f6006548060011c90600181168015610485575b6020831081146104715782855290811561044d57506001146103ef575b6103eb836103df81850382610d10565b60405191829182610cba565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610433575090915081016020016103df6103cf565b91926001816020925483858801015201910190929161041b565b60ff191660208086019190915291151560051b840190910191506103df90506103cf565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103b2565b34610195576040366003190112610195576104a8610cfa565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610195576040366003190112610195576004355f526001602052602061050360243560405f2061109b565b905460405160039290921b1c6001600160a01b03168152f35b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105a35761056a611080565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f5160206112145f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101955760403660031901126101955761022b610613610ce4565b60243590610622823383610dd4565b610d46565b34610195576020366003190112610195576001600160a01b03610648610ce4565b165f526002602052602060405f2054604051908152f35b34610195575f36600319011261019557602060ff600754166040519015158152f35b346101955760203660031901126101955761022b60043533610d46565b34610195576040366003190112610195576106b7610ce4565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff161561076f576001600160a01b031690811561075c5761070a611080565b600454908082018092116107485760205f5160206111f45f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108565760075460ff8116156108475760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f5160206112145f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b34610195576040366003190112610195576108c7610cfa565b336001600160a01b038216036108e35761022b90600435610f3e565b63334bd91960e11b5f5260045ffd5b34610195575f36600319011261019557602060ff60075460081c16604051908152f35b3461019557604036600319011261019557600435610931610cfa565b610949610221835f525f602052600160405f20015490565b6109538183610f78565b61095957005b5f9182526001602052604090912061022b916001600160a01b0316906110c4565b34610195575f3660031901126101955760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101955760203660031901126101955760206109de6004355f525f602052600160405f20015490565b604051908152f35b34610195576060366003190112610195576102b7610a02610ce4565b610a0a610cfa565b60443591610a19833383610dd4565b610e77565b3461019557604036600319011261019557610a37610ce4565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610a7a5761022b9060243590610d46565b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b34610195575f366003190112610195576020600454604051908152f35b3461019557604036600319011261019557610b03610ce4565b602435903315610b7f576001600160a01b0316908115610b6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b34610195575f366003190112610195576040515f6005548060011c90600181168015610c43575b6020831081146104715782855290811561044d5750600114610be5576103eb836103df81850382610d10565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610c29575090915081016020016103df6103cf565b919260018160209254838588010152019101909291610c11565b91607f1691610bb9565b34610195576020366003190112610195576004359063ffffffff60e01b821680920361019557602091635a05180f60e01b8114908115610c8f575b5015158152f35b637965db0b60e01b811491508115610ca9575b5083610c88565b6301ffc9a760e01b14905083610ca2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019557565b602435906001600160a01b038216820361019557565b90601f8019910116810190811067ffffffffffffffff821117610d3257604052565b634e487b7160e01b5f52604160045260245ffd5b9091906001600160a01b03168015610dc157610d60611080565b805f52600260205260405f2054838110610da7576020845f94955f5160206111f45f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f198410610e0e575b50505050565b828410610e54578015610b7f576001600160a01b03821615610b6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f808080610e08565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115610dc1576001600160a01b031691821561075c57610e9f611080565b815f52600260205260405f2054818110610eed57815f5160206111f45f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f8181526020818152604080832033845290915290205460ff1615610f285750565b63e2517d3f60e01b5f523360045260245260445ffd5b610f488282611000565b9182610f5357505090565b5f91825260016020526040909120610f74916001600160a01b03169061112e565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661108c57565b63d93c066560e01b5f5260045ffd5b80548210156110b0575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611127578054600160401b811015610d32576111146110fe82600187940185558461109b565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146111eb575f1981018181116107485782545f19810191908211610748578181036111b6575b505050805480156111a2575f190190611183828261109b565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6111d66111c66110fe938661109b565b90549060031b1c9283928661109b565b90555f528360205260405f20555f808061116a565b505050505f9056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a264697066735822122027d19e57fe18c64615bd1e57280210866a18f77a38baad3291e17215930a4c5164736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/ERC20MinterBurnerDecimals.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json b/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json index 6e660def9..34113d501 100644 --- a/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json +++ b/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20RecursiveNonRevertingPrecompileCall", "sourceName": "solidity/ERC20RecursiveNonRevertingPrecompileCall.sol", "abi": [ @@ -24,6 +24,123 @@ "stateMutability": "nonpayable", "type": "constructor" }, + { + "inputs": [], + "name": "AccessControlBadConfirmation", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "neededRole", + "type": "bytes32" + } + ], + "name": "AccessControlUnauthorizedAccount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientBalance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "approver", + "type": "address" + } + ], + "name": "ERC20InvalidApprover", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "ERC20InvalidReceiver", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "ERC20InvalidSender", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "ERC20InvalidSpender", + "type": "error" + }, + { + "inputs": [], + "name": "EnforcedPause", + "type": "error" + }, + { + "inputs": [], + "name": "ExpectedPause", + "type": "error" + }, { "anonymous": false, "inputs": [ @@ -285,7 +402,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -323,7 +440,7 @@ "inputs": [ { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -359,7 +476,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -388,30 +505,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { @@ -498,16 +591,17 @@ "internalType": "bytes32", "name": "role", "type": "bytes32" - }, + } + ], + "name": "getRoleMembers", + "outputs": [ { - "internalType": "address", - "name": "account", - "type": "address" + "internalType": "address[]", + "name": "", + "type": "address[]" } ], - "name": "grantRole", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -523,31 +617,25 @@ "type": "address" } ], - "name": "hasRole", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", + "name": "grantRole", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "address", - "name": "spender", - "type": "address" + "internalType": "bytes32", + "name": "role", + "type": "bytes32" }, { - "internalType": "uint256", - "name": "addedValue", - "type": "uint256" + "internalType": "address", + "name": "account", + "type": "address" } ], - "name": "increaseAllowance", + "name": "hasRole", "outputs": [ { "internalType": "bool", @@ -555,7 +643,7 @@ "type": "bool" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -618,7 +706,7 @@ }, { "internalType": "address", - "name": "account", + "name": "callerConfirmation", "type": "address" } ], @@ -699,7 +787,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -728,7 +816,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -751,8 +839,11 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620041d1380380620041d18339818101604052810190620000379190620005e0565b828281600590816200004a9190620008c5565b5080600690816200005c9190620008c5565b5050506000600760006101000a81548160ff0219169083151502179055506200009e6000801b620000926200017b60201b60201c565b6200018360201b60201c565b620000df7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6620000d36200017b60201b60201c565b6200018360201b60201c565b620001207f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a620001146200017b60201b60201c565b6200018360201b60201c565b620001617f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a848620001556200017b60201b60201c565b6200018360201b60201c565b6200017281620001c160201b60201c565b505050620009ac565b600033905090565b620001958282620001df60201b60201c565b620001bc8160016000858152602001908152602001600020620002d060201b90919060201c565b505050565b80600760016101000a81548160ff021916908360ff16021790555050565b620001f182826200030860201b60201c565b620002cc57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620002716200017b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600062000300836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6200037260201b60201c565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000620003868383620003ec60201b60201c565b620003e1578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050620003e6565b600090505b92915050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000478826200042d565b810181811067ffffffffffffffff821117156200049a57620004996200043e565b5b80604052505050565b6000620004af6200040f565b9050620004bd82826200046d565b919050565b600067ffffffffffffffff821115620004e057620004df6200043e565b5b620004eb826200042d565b9050602081019050919050565b60005b8381101562000518578082015181840152602081019050620004fb565b60008484015250505050565b60006200053b6200053584620004c2565b620004a3565b9050828152602081018484840111156200055a576200055962000428565b5b62000567848285620004f8565b509392505050565b600082601f83011262000587576200058662000423565b5b81516200059984826020860162000524565b91505092915050565b600060ff82169050919050565b620005ba81620005a2565b8114620005c657600080fd5b50565b600081519050620005da81620005af565b92915050565b600080600060608486031215620005fc57620005fb62000419565b5b600084015167ffffffffffffffff8111156200061d576200061c6200041e565b5b6200062b868287016200056f565b935050602084015167ffffffffffffffff8111156200064f576200064e6200041e565b5b6200065d868287016200056f565b92505060406200067086828701620005c9565b9150509250925092565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620006cd57607f821691505b602082108103620006e357620006e262000685565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200074d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200070e565b6200075986836200070e565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620007a6620007a06200079a8462000771565b6200077b565b62000771565b9050919050565b6000819050919050565b620007c28362000785565b620007da620007d182620007ad565b8484546200071b565b825550505050565b600090565b620007f1620007e2565b620007fe818484620007b7565b505050565b5b8181101562000826576200081a600082620007e7565b60018101905062000804565b5050565b601f82111562000875576200083f81620006e9565b6200084a84620006fe565b810160208510156200085a578190505b620008726200086985620006fe565b83018262000803565b50505b505050565b600082821c905092915050565b60006200089a600019846008026200087a565b1980831691505092915050565b6000620008b5838362000887565b9150826002028217905092915050565b620008d0826200067a565b67ffffffffffffffff811115620008ec57620008eb6200043e565b5b620008f88254620006b4565b620009058282856200082a565b600060209050601f8311600181146200093d576000841562000928578287015190505b620009348582620008a7565b865550620009a4565b601f1984166200094d86620006e9565b60005b82811015620009775784890151825560018201915060208501945060208101905062000950565b8683101562000997578489015162000993601f89168262000887565b8355505b6001600288020188555050505b505050505050565b61381580620009bc6000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c806342966c681161010f578063a217fddf116100a2578063d539139311610071578063d5391393146105b9578063d547741f146105d7578063dd62ed3e146105f3578063e63ab1e914610623576101f0565b8063a217fddf1461050b578063a457c2d714610529578063a9059cbb14610559578063ca15c87314610589576101f0565b80638456cb59116100de5780638456cb59146104835780639010d07c1461048d57806391d14854146104bd57806395d89b41146104ed576101f0565b806342966c68146103fd5780635c975abb1461041957806370a082311461043757806379cc679014610467576101f0565b8063282c51f311610187578063372500ab11610156578063372500ab1461039d57806339509351146103a75780633f4ba83a146103d757806340c10f19146103e1576101f0565b8063282c51f3146103295780632f2ff15d14610347578063313ce5671461036357806336568abe14610381576101f0565b806318160ddd116101c357806318160ddd1461028f5780631cf2c7e2146102ad57806323b872dd146102c9578063248a9ca3146102f9576101f0565b806301ffc9a7146101f557806303f24de11461022557806306fdde0314610241578063095ea7b31461025f575b600080fd5b61020f600480360381019061020a91906122fa565b610641565b60405161021c9190612342565b60405180910390f35b61023f600480360381019061023a91906124d9565b6106bb565b005b610249610786565b60405161025691906125b4565b60405180910390f35b61027960048036038101906102749190612634565b610818565b6040516102869190612342565b60405180910390f35b61029761083b565b6040516102a49190612683565b60405180910390f35b6102c760048036038101906102c29190612634565b610845565b005b6102e360048036038101906102de919061269e565b6108c3565b6040516102f09190612342565b60405180910390f35b610313600480360381019061030e9190612727565b6108f2565b6040516103209190612763565b60405180910390f35b610331610911565b60405161033e9190612763565b60405180910390f35b610361600480360381019061035c919061277e565b610935565b005b61036b610956565b60405161037891906127da565b60405180910390f35b61039b6004803603810190610396919061277e565b61096d565b005b6103a56109f0565b005b6103c160048036038101906103bc9190612634565b610a74565b6040516103ce9190612342565b60405180910390f35b6103df610aab565b005b6103fb60048036038101906103f69190612634565b610b25565b005b610417600480360381019061041291906127f5565b610ba3565b005b610421610bb7565b60405161042e9190612342565b60405180910390f35b610451600480360381019061044c9190612822565b610bce565b60405161045e9190612683565b60405180910390f35b610481600480360381019061047c9190612634565b610c17565b005b61048b610c37565b005b6104a760048036038101906104a2919061284f565b610cb1565b6040516104b4919061289e565b60405180910390f35b6104d760048036038101906104d2919061277e565b610ce0565b6040516104e49190612342565b60405180910390f35b6104f5610d4a565b60405161050291906125b4565b60405180910390f35b610513610ddc565b6040516105209190612763565b60405180910390f35b610543600480360381019061053e9190612634565b610de3565b6040516105509190612342565b60405180910390f35b610573600480360381019061056e9190612634565b610e5a565b6040516105809190612342565b60405180910390f35b6105a3600480360381019061059e9190612727565b610e7d565b6040516105b09190612683565b60405180910390f35b6105c1610ea1565b6040516105ce9190612763565b60405180910390f35b6105f160048036038101906105ec919061277e565b610ec5565b005b61060d600480360381019061060891906128b9565b610ee6565b60405161061a9190612683565b60405180910390f35b61062b610f6d565b6040516106389190612763565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806106b457506106b382610f91565b5b9050919050565b600061080073ffffffffffffffffffffffffffffffffffffffff166353266bbb3085856040518463ffffffff1660e01b81526004016106fc939291906128f9565b6020604051808303816000875af115801561071b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073f9190612963565b905080610781576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610778906129dc565b60405180910390fd5b505050565b60606005805461079590612a2b565b80601f01602080910402602001604051908101604052809291908181526020018280546107c190612a2b565b801561080e5780601f106107e35761010080835404028352916020019161080e565b820191906000526020600020905b8154815290600101906020018083116107f157829003601f168201915b5050505050905090565b60008061082361100b565b9050610830818585611013565b600191505092915050565b6000600454905090565b6108767f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84861087161100b565b610ce0565b6108b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ac90612ace565b60405180910390fd5b6108bf82826111dc565b5050565b6000806108ce61100b565b90506108db8582856113ab565b6108e6858585611437565b60019150509392505050565b6000806000838152602001908152602001600020600101549050919050565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b61093e826108f2565b610947816116b0565b61095183836116c4565b505050565b6000600760019054906101000a900460ff16905090565b61097561100b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109d990612b60565b60405180910390fd5b6109ec82826116f8565b5050565b61080173ffffffffffffffffffffffffffffffffffffffff16632efe8a5f3060646040518363ffffffff1660e01b8152600401610a2e929190612bd5565b6020604051808303816000875af1158015610a4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a719190612963565b50565b600080610a7f61100b565b9050610aa0818585610a918589610ee6565b610a9b9190612c2d565b611013565b600191505092915050565b610adc7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610ad761100b565b610ce0565b610b1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1290612cd3565b60405180910390fd5b610b2361172c565b565b610b567f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610b5161100b565b610ce0565b610b95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8c90612d65565b60405180910390fd5b610b9f828261178f565b5050565b610bb4610bae61100b565b826111dc565b50565b6000600760009054906101000a900460ff16905090565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610c2982610c2361100b565b836113ab565b610c3382826111dc565b5050565b610c687f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610c6361100b565b610ce0565b610ca7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9e90612df7565b60405180910390fd5b610caf6118e6565b565b6000610cd8826001600086815260200190815260200160002061194990919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060068054610d5990612a2b565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8590612a2b565b8015610dd25780601f10610da757610100808354040283529160200191610dd2565b820191906000526020600020905b815481529060010190602001808311610db557829003601f168201915b5050505050905090565b6000801b81565b600080610dee61100b565b90506000610dfc8286610ee6565b905083811015610e41576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3890612e89565b60405180910390fd5b610e4e8286868403611013565b60019250505092915050565b600080610e6561100b565b9050610e72818585611437565b600191505092915050565b6000610e9a60016000848152602001908152602001600020611963565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610ece826108f2565b610ed7816116b0565b610ee183836116f8565b505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611004575061100382611978565b5b9050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611082576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107990612f1b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e890612fad565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111cf9190612683565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361124b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112429061303f565b60405180910390fd5b611257826000836119e2565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d5906130d1565b60405180910390fd5b818103600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600460008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113929190612683565b60405180910390a36113a683600084611aa7565b505050565b60006113b78484610ee6565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146114315781811015611423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141a9061313d565b60405180910390fd5b6114308484848403611013565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149d906131cf565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611515576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150c90613261565b60405180910390fd5b6115208383836119e2565b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159e906132f3565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116979190612683565b60405180910390a36116aa848484611aa7565b50505050565b6116c1816116bc61100b565b611aac565b50565b6116ce8282611b31565b6116f38160016000858152602001908152602001600020611c1190919063ffffffff16565b505050565b6117028282611c41565b6117278160016000858152602001908152602001600020611d2290919063ffffffff16565b505050565b611734611d52565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61177861100b565b604051611785919061289e565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f59061335f565b60405180910390fd5b61180a600083836119e2565b806004600082825461181c9190612c2d565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118ce9190612683565b60405180910390a36118e260008383611aa7565b5050565b6118ee611d9b565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861193261100b565b60405161193f919061289e565b60405180910390a1565b60006119588360000183611de5565b60001c905092915050565b600061197182600001611e10565b9050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b7f6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfe838383604051611a159392919061337f565b60405180910390a160005b6005811015611a96573073ffffffffffffffffffffffffffffffffffffffff1663372500ab6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611a7157600080fd5b505af1925050508015611a82575060015b508080611a8e906133b6565b915050611a20565b50611aa2838383611e21565b505050565b505050565b611ab68282610ce0565b611b2d57611ac381611e79565b611ad18360001c6020611ea6565b604051602001611ae29291906134d2565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2491906125b4565b60405180910390fd5b5050565b611b3b8282610ce0565b611c0d57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611bb261100b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000611c39836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6120e2565b905092915050565b611c4b8282610ce0565b15611d1e57600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611cc361100b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000611d4a836000018373ffffffffffffffffffffffffffffffffffffffff1660001b612152565b905092915050565b611d5a610bb7565b611d99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9090613558565b60405180910390fd5b565b611da3610bb7565b15611de3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dda906135c4565b60405180910390fd5b565b6000826000018281548110611dfd57611dfc6135e4565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b611e2c838383612266565b611e34610bb7565b15611e74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6b90613685565b60405180910390fd5b505050565b6060611e9f8273ffffffffffffffffffffffffffffffffffffffff16601460ff16611ea6565b9050919050565b606060006002836002611eb991906136a5565b611ec39190612c2d565b67ffffffffffffffff811115611edc57611edb612378565b5b6040519080825280601f01601f191660200182016040528015611f0e5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110611f4657611f456135e4565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611faa57611fa96135e4565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002611fea91906136a5565b611ff49190612c2d565b90505b6001811115612094577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110612036576120356135e4565b5b1a60f81b82828151811061204d5761204c6135e4565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061208d906136e7565b9050611ff7565b50600084146120d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120cf9061375c565b60405180910390fd5b8091505092915050565b60006120ee838361226b565b61214757826000018290806001815401808255809150506001900390600052602060002001600090919091909150558260000180549050836001016000848152602001908152602001600020819055506001905061214c565b600090505b92915050565b6000808360010160008481526020019081526020016000205490506000811461225a576000600182612184919061377c565b905060006001866000018054905061219c919061377c565b905081811461220b5760008660000182815481106121bd576121bc6135e4565b5b90600052602060002001549050808760000184815481106121e1576121e06135e4565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b8560000180548061221f5761221e6137b0565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050612260565b60009150505b92915050565b505050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6122d7816122a2565b81146122e257600080fd5b50565b6000813590506122f4816122ce565b92915050565b6000602082840312156123105761230f612298565b5b600061231e848285016122e5565b91505092915050565b60008115159050919050565b61233c81612327565b82525050565b60006020820190506123576000830184612333565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6123b082612367565b810181811067ffffffffffffffff821117156123cf576123ce612378565b5b80604052505050565b60006123e261228e565b90506123ee82826123a7565b919050565b600067ffffffffffffffff82111561240e5761240d612378565b5b61241782612367565b9050602081019050919050565b82818337600083830152505050565b6000612446612441846123f3565b6123d8565b90508281526020810184848401111561246257612461612362565b5b61246d848285612424565b509392505050565b600082601f83011261248a5761248961235d565b5b813561249a848260208601612433565b91505092915050565b6000819050919050565b6124b6816124a3565b81146124c157600080fd5b50565b6000813590506124d3816124ad565b92915050565b600080604083850312156124f0576124ef612298565b5b600083013567ffffffffffffffff81111561250e5761250d61229d565b5b61251a85828601612475565b925050602061252b858286016124c4565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561256f578082015181840152602081019050612554565b60008484015250505050565b600061258682612535565b6125908185612540565b93506125a0818560208601612551565b6125a981612367565b840191505092915050565b600060208201905081810360008301526125ce818461257b565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612601826125d6565b9050919050565b612611816125f6565b811461261c57600080fd5b50565b60008135905061262e81612608565b92915050565b6000806040838503121561264b5761264a612298565b5b60006126598582860161261f565b925050602061266a858286016124c4565b9150509250929050565b61267d816124a3565b82525050565b60006020820190506126986000830184612674565b92915050565b6000806000606084860312156126b7576126b6612298565b5b60006126c58682870161261f565b93505060206126d68682870161261f565b92505060406126e7868287016124c4565b9150509250925092565b6000819050919050565b612704816126f1565b811461270f57600080fd5b50565b600081359050612721816126fb565b92915050565b60006020828403121561273d5761273c612298565b5b600061274b84828501612712565b91505092915050565b61275d816126f1565b82525050565b60006020820190506127786000830184612754565b92915050565b6000806040838503121561279557612794612298565b5b60006127a385828601612712565b92505060206127b48582860161261f565b9150509250929050565b600060ff82169050919050565b6127d4816127be565b82525050565b60006020820190506127ef60008301846127cb565b92915050565b60006020828403121561280b5761280a612298565b5b6000612819848285016124c4565b91505092915050565b60006020828403121561283857612837612298565b5b60006128468482850161261f565b91505092915050565b6000806040838503121561286657612865612298565b5b600061287485828601612712565b9250506020612885858286016124c4565b9150509250929050565b612898816125f6565b82525050565b60006020820190506128b3600083018461288f565b92915050565b600080604083850312156128d0576128cf612298565b5b60006128de8582860161261f565b92505060206128ef8582860161261f565b9150509250929050565b600060608201905061290e600083018661288f565b8181036020830152612920818561257b565b905061292f6040830184612674565b949350505050565b61294081612327565b811461294b57600080fd5b50565b60008151905061295d81612937565b92915050565b60006020828403121561297957612978612298565b5b60006129878482850161294e565b91505092915050565b7f6661696c656420746f207374616b650000000000000000000000000000000000600082015250565b60006129c6600f83612540565b91506129d182612990565b602082019050919050565b600060208201905081810360008301526129f5816129b9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612a4357607f821691505b602082108103612a5657612a556129fc565b5b50919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206275726e657220726f6c6520746f206275726e0000000000000000602082015250565b6000612ab8603883612540565b9150612ac382612a5c565b604082019050919050565b60006020820190508181036000830152612ae781612aab565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612b4a602f83612540565b9150612b5582612aee565b604082019050919050565b60006020820190508181036000830152612b7981612b3d565b9050919050565b6000819050919050565b600063ffffffff82169050919050565b6000819050919050565b6000612bbf612bba612bb584612b80565b612b9a565b612b8a565b9050919050565b612bcf81612ba4565b82525050565b6000604082019050612bea600083018561288f565b612bf76020830184612bc6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c38826124a3565b9150612c43836124a3565b9250828201905080821115612c5b57612c5a612bfe565b5b92915050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20756e70617573650000000000602082015250565b6000612cbd603b83612540565b9150612cc882612c61565b604082019050919050565b60006020820190508181036000830152612cec81612cb0565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000602082015250565b6000612d4f603883612540565b9150612d5a82612cf3565b604082019050919050565b60006020820190508181036000830152612d7e81612d42565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20706175736500000000000000602082015250565b6000612de1603983612540565b9150612dec82612d85565b604082019050919050565b60006020820190508181036000830152612e1081612dd4565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612e73602583612540565b9150612e7e82612e17565b604082019050919050565b60006020820190508181036000830152612ea281612e66565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f05602483612540565b9150612f1082612ea9565b604082019050919050565b60006020820190508181036000830152612f3481612ef8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f97602283612540565b9150612fa282612f3b565b604082019050919050565b60006020820190508181036000830152612fc681612f8a565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000613029602183612540565b915061303482612fcd565b604082019050919050565b600060208201905081810360008301526130588161301c565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006130bb602283612540565b91506130c68261305f565b604082019050919050565b600060208201905081810360008301526130ea816130ae565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613127601d83612540565b9150613132826130f1565b602082019050919050565b600060208201905081810360008301526131568161311a565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006131b9602583612540565b91506131c48261315d565b604082019050919050565b600060208201905081810360008301526131e8816131ac565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061324b602383612540565b9150613256826131ef565b604082019050919050565b6000602082019050818103600083015261327a8161323e565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006132dd602683612540565b91506132e882613281565b604082019050919050565b6000602082019050818103600083015261330c816132d0565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000613349601f83612540565b915061335482613313565b602082019050919050565b600060208201905081810360008301526133788161333c565b9050919050565b6000606082019050613394600083018661288f565b6133a1602083018561288f565b6133ae6040830184612674565b949350505050565b60006133c1826124a3565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036133f3576133f2612bfe565b5b600182019050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b600061343f6017836133fe565b915061344a82613409565b601782019050919050565b600061346082612535565b61346a81856133fe565b935061347a818560208601612551565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006134bc6011836133fe565b91506134c782613486565b601182019050919050565b60006134dd82613432565b91506134e98285613455565b91506134f4826134af565b91506135008284613455565b91508190509392505050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613542601483612540565b915061354d8261350c565b602082019050919050565b6000602082019050818103600083015261357181613535565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006135ae601083612540565b91506135b982613578565b602082019050919050565b600060208201905081810360008301526135dd816135a1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524332305061757361626c653a20746f6b656e207472616e7366657220776860008201527f696c652070617573656400000000000000000000000000000000000000000000602082015250565b600061366f602a83612540565b915061367a82613613565b604082019050919050565b6000602082019050818103600083015261369e81613662565b9050919050565b60006136b0826124a3565b91506136bb836124a3565b92508282026136c9816124a3565b915082820484148315176136e0576136df612bfe565b5b5092915050565b60006136f2826124a3565b91506000820361370557613704612bfe565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000613746602083612540565b915061375182613710565b602082019050919050565b6000602082019050818103600083015261377581613739565b9050919050565b6000613787826124a3565b9150613792836124a3565b92508282039050818111156137aa576137a9612bfe565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220ea52cb3272a256f62b695ae21937377a7ea8ac6a47f3579126b1a2b8ae945be764736f6c63430008140033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101f05760003560e01c806342966c681161010f578063a217fddf116100a2578063d539139311610071578063d5391393146105b9578063d547741f146105d7578063dd62ed3e146105f3578063e63ab1e914610623576101f0565b8063a217fddf1461050b578063a457c2d714610529578063a9059cbb14610559578063ca15c87314610589576101f0565b80638456cb59116100de5780638456cb59146104835780639010d07c1461048d57806391d14854146104bd57806395d89b41146104ed576101f0565b806342966c68146103fd5780635c975abb1461041957806370a082311461043757806379cc679014610467576101f0565b8063282c51f311610187578063372500ab11610156578063372500ab1461039d57806339509351146103a75780633f4ba83a146103d757806340c10f19146103e1576101f0565b8063282c51f3146103295780632f2ff15d14610347578063313ce5671461036357806336568abe14610381576101f0565b806318160ddd116101c357806318160ddd1461028f5780631cf2c7e2146102ad57806323b872dd146102c9578063248a9ca3146102f9576101f0565b806301ffc9a7146101f557806303f24de11461022557806306fdde0314610241578063095ea7b31461025f575b600080fd5b61020f600480360381019061020a91906122fa565b610641565b60405161021c9190612342565b60405180910390f35b61023f600480360381019061023a91906124d9565b6106bb565b005b610249610786565b60405161025691906125b4565b60405180910390f35b61027960048036038101906102749190612634565b610818565b6040516102869190612342565b60405180910390f35b61029761083b565b6040516102a49190612683565b60405180910390f35b6102c760048036038101906102c29190612634565b610845565b005b6102e360048036038101906102de919061269e565b6108c3565b6040516102f09190612342565b60405180910390f35b610313600480360381019061030e9190612727565b6108f2565b6040516103209190612763565b60405180910390f35b610331610911565b60405161033e9190612763565b60405180910390f35b610361600480360381019061035c919061277e565b610935565b005b61036b610956565b60405161037891906127da565b60405180910390f35b61039b6004803603810190610396919061277e565b61096d565b005b6103a56109f0565b005b6103c160048036038101906103bc9190612634565b610a74565b6040516103ce9190612342565b60405180910390f35b6103df610aab565b005b6103fb60048036038101906103f69190612634565b610b25565b005b610417600480360381019061041291906127f5565b610ba3565b005b610421610bb7565b60405161042e9190612342565b60405180910390f35b610451600480360381019061044c9190612822565b610bce565b60405161045e9190612683565b60405180910390f35b610481600480360381019061047c9190612634565b610c17565b005b61048b610c37565b005b6104a760048036038101906104a2919061284f565b610cb1565b6040516104b4919061289e565b60405180910390f35b6104d760048036038101906104d2919061277e565b610ce0565b6040516104e49190612342565b60405180910390f35b6104f5610d4a565b60405161050291906125b4565b60405180910390f35b610513610ddc565b6040516105209190612763565b60405180910390f35b610543600480360381019061053e9190612634565b610de3565b6040516105509190612342565b60405180910390f35b610573600480360381019061056e9190612634565b610e5a565b6040516105809190612342565b60405180910390f35b6105a3600480360381019061059e9190612727565b610e7d565b6040516105b09190612683565b60405180910390f35b6105c1610ea1565b6040516105ce9190612763565b60405180910390f35b6105f160048036038101906105ec919061277e565b610ec5565b005b61060d600480360381019061060891906128b9565b610ee6565b60405161061a9190612683565b60405180910390f35b61062b610f6d565b6040516106389190612763565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806106b457506106b382610f91565b5b9050919050565b600061080073ffffffffffffffffffffffffffffffffffffffff166353266bbb3085856040518463ffffffff1660e01b81526004016106fc939291906128f9565b6020604051808303816000875af115801561071b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073f9190612963565b905080610781576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610778906129dc565b60405180910390fd5b505050565b60606005805461079590612a2b565b80601f01602080910402602001604051908101604052809291908181526020018280546107c190612a2b565b801561080e5780601f106107e35761010080835404028352916020019161080e565b820191906000526020600020905b8154815290600101906020018083116107f157829003601f168201915b5050505050905090565b60008061082361100b565b9050610830818585611013565b600191505092915050565b6000600454905090565b6108767f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84861087161100b565b610ce0565b6108b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ac90612ace565b60405180910390fd5b6108bf82826111dc565b5050565b6000806108ce61100b565b90506108db8582856113ab565b6108e6858585611437565b60019150509392505050565b6000806000838152602001908152602001600020600101549050919050565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b61093e826108f2565b610947816116b0565b61095183836116c4565b505050565b6000600760019054906101000a900460ff16905090565b61097561100b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146109e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109d990612b60565b60405180910390fd5b6109ec82826116f8565b5050565b61080173ffffffffffffffffffffffffffffffffffffffff16632efe8a5f3060646040518363ffffffff1660e01b8152600401610a2e929190612bd5565b6020604051808303816000875af1158015610a4d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a719190612963565b50565b600080610a7f61100b565b9050610aa0818585610a918589610ee6565b610a9b9190612c2d565b611013565b600191505092915050565b610adc7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610ad761100b565b610ce0565b610b1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1290612cd3565b60405180910390fd5b610b2361172c565b565b610b567f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610b5161100b565b610ce0565b610b95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8c90612d65565b60405180910390fd5b610b9f828261178f565b5050565b610bb4610bae61100b565b826111dc565b50565b6000600760009054906101000a900460ff16905090565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610c2982610c2361100b565b836113ab565b610c3382826111dc565b5050565b610c687f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610c6361100b565b610ce0565b610ca7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9e90612df7565b60405180910390fd5b610caf6118e6565b565b6000610cd8826001600086815260200190815260200160002061194990919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060068054610d5990612a2b565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8590612a2b565b8015610dd25780601f10610da757610100808354040283529160200191610dd2565b820191906000526020600020905b815481529060010190602001808311610db557829003601f168201915b5050505050905090565b6000801b81565b600080610dee61100b565b90506000610dfc8286610ee6565b905083811015610e41576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3890612e89565b60405180910390fd5b610e4e8286868403611013565b60019250505092915050565b600080610e6561100b565b9050610e72818585611437565b600191505092915050565b6000610e9a60016000848152602001908152602001600020611963565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610ece826108f2565b610ed7816116b0565b610ee183836116f8565b505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611004575061100382611978565b5b9050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611082576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107990612f1b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e890612fad565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111cf9190612683565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361124b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112429061303f565b60405180910390fd5b611257826000836119e2565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d5906130d1565b60405180910390fd5b818103600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600460008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113929190612683565b60405180910390a36113a683600084611aa7565b505050565b60006113b78484610ee6565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146114315781811015611423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141a9061313d565b60405180910390fd5b6114308484848403611013565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149d906131cf565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611515576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150c90613261565b60405180910390fd5b6115208383836119e2565b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159e906132f3565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116979190612683565b60405180910390a36116aa848484611aa7565b50505050565b6116c1816116bc61100b565b611aac565b50565b6116ce8282611b31565b6116f38160016000858152602001908152602001600020611c1190919063ffffffff16565b505050565b6117028282611c41565b6117278160016000858152602001908152602001600020611d2290919063ffffffff16565b505050565b611734611d52565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61177861100b565b604051611785919061289e565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036117fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f59061335f565b60405180910390fd5b61180a600083836119e2565b806004600082825461181c9190612c2d565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118ce9190612683565b60405180910390a36118e260008383611aa7565b5050565b6118ee611d9b565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861193261100b565b60405161193f919061289e565b60405180910390a1565b60006119588360000183611de5565b60001c905092915050565b600061197182600001611e10565b9050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b7f6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfe838383604051611a159392919061337f565b60405180910390a160005b6005811015611a96573073ffffffffffffffffffffffffffffffffffffffff1663372500ab6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611a7157600080fd5b505af1925050508015611a82575060015b508080611a8e906133b6565b915050611a20565b50611aa2838383611e21565b505050565b505050565b611ab68282610ce0565b611b2d57611ac381611e79565b611ad18360001c6020611ea6565b604051602001611ae29291906134d2565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2491906125b4565b60405180910390fd5b5050565b611b3b8282610ce0565b611c0d57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611bb261100b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000611c39836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6120e2565b905092915050565b611c4b8282610ce0565b15611d1e57600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611cc361100b565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000611d4a836000018373ffffffffffffffffffffffffffffffffffffffff1660001b612152565b905092915050565b611d5a610bb7565b611d99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d9090613558565b60405180910390fd5b565b611da3610bb7565b15611de3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dda906135c4565b60405180910390fd5b565b6000826000018281548110611dfd57611dfc6135e4565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b611e2c838383612266565b611e34610bb7565b15611e74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6b90613685565b60405180910390fd5b505050565b6060611e9f8273ffffffffffffffffffffffffffffffffffffffff16601460ff16611ea6565b9050919050565b606060006002836002611eb991906136a5565b611ec39190612c2d565b67ffffffffffffffff811115611edc57611edb612378565b5b6040519080825280601f01601f191660200182016040528015611f0e5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110611f4657611f456135e4565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611faa57611fa96135e4565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002611fea91906136a5565b611ff49190612c2d565b90505b6001811115612094577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110612036576120356135e4565b5b1a60f81b82828151811061204d5761204c6135e4565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061208d906136e7565b9050611ff7565b50600084146120d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120cf9061375c565b60405180910390fd5b8091505092915050565b60006120ee838361226b565b61214757826000018290806001815401808255809150506001900390600052602060002001600090919091909150558260000180549050836001016000848152602001908152602001600020819055506001905061214c565b600090505b92915050565b6000808360010160008481526020019081526020016000205490506000811461225a576000600182612184919061377c565b905060006001866000018054905061219c919061377c565b905081811461220b5760008660000182815481106121bd576121bc6135e4565b5b90600052602060002001549050808760000184815481106121e1576121e06135e4565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b8560000180548061221f5761221e6137b0565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050612260565b60009150505b92915050565b505050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6122d7816122a2565b81146122e257600080fd5b50565b6000813590506122f4816122ce565b92915050565b6000602082840312156123105761230f612298565b5b600061231e848285016122e5565b91505092915050565b60008115159050919050565b61233c81612327565b82525050565b60006020820190506123576000830184612333565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6123b082612367565b810181811067ffffffffffffffff821117156123cf576123ce612378565b5b80604052505050565b60006123e261228e565b90506123ee82826123a7565b919050565b600067ffffffffffffffff82111561240e5761240d612378565b5b61241782612367565b9050602081019050919050565b82818337600083830152505050565b6000612446612441846123f3565b6123d8565b90508281526020810184848401111561246257612461612362565b5b61246d848285612424565b509392505050565b600082601f83011261248a5761248961235d565b5b813561249a848260208601612433565b91505092915050565b6000819050919050565b6124b6816124a3565b81146124c157600080fd5b50565b6000813590506124d3816124ad565b92915050565b600080604083850312156124f0576124ef612298565b5b600083013567ffffffffffffffff81111561250e5761250d61229d565b5b61251a85828601612475565b925050602061252b858286016124c4565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561256f578082015181840152602081019050612554565b60008484015250505050565b600061258682612535565b6125908185612540565b93506125a0818560208601612551565b6125a981612367565b840191505092915050565b600060208201905081810360008301526125ce818461257b565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612601826125d6565b9050919050565b612611816125f6565b811461261c57600080fd5b50565b60008135905061262e81612608565b92915050565b6000806040838503121561264b5761264a612298565b5b60006126598582860161261f565b925050602061266a858286016124c4565b9150509250929050565b61267d816124a3565b82525050565b60006020820190506126986000830184612674565b92915050565b6000806000606084860312156126b7576126b6612298565b5b60006126c58682870161261f565b93505060206126d68682870161261f565b92505060406126e7868287016124c4565b9150509250925092565b6000819050919050565b612704816126f1565b811461270f57600080fd5b50565b600081359050612721816126fb565b92915050565b60006020828403121561273d5761273c612298565b5b600061274b84828501612712565b91505092915050565b61275d816126f1565b82525050565b60006020820190506127786000830184612754565b92915050565b6000806040838503121561279557612794612298565b5b60006127a385828601612712565b92505060206127b48582860161261f565b9150509250929050565b600060ff82169050919050565b6127d4816127be565b82525050565b60006020820190506127ef60008301846127cb565b92915050565b60006020828403121561280b5761280a612298565b5b6000612819848285016124c4565b91505092915050565b60006020828403121561283857612837612298565b5b60006128468482850161261f565b91505092915050565b6000806040838503121561286657612865612298565b5b600061287485828601612712565b9250506020612885858286016124c4565b9150509250929050565b612898816125f6565b82525050565b60006020820190506128b3600083018461288f565b92915050565b600080604083850312156128d0576128cf612298565b5b60006128de8582860161261f565b92505060206128ef8582860161261f565b9150509250929050565b600060608201905061290e600083018661288f565b8181036020830152612920818561257b565b905061292f6040830184612674565b949350505050565b61294081612327565b811461294b57600080fd5b50565b60008151905061295d81612937565b92915050565b60006020828403121561297957612978612298565b5b60006129878482850161294e565b91505092915050565b7f6661696c656420746f207374616b650000000000000000000000000000000000600082015250565b60006129c6600f83612540565b91506129d182612990565b602082019050919050565b600060208201905081810360008301526129f5816129b9565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612a4357607f821691505b602082108103612a5657612a556129fc565b5b50919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206275726e657220726f6c6520746f206275726e0000000000000000602082015250565b6000612ab8603883612540565b9150612ac382612a5c565b604082019050919050565b60006020820190508181036000830152612ae781612aab565b9050919050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612b4a602f83612540565b9150612b5582612aee565b604082019050919050565b60006020820190508181036000830152612b7981612b3d565b9050919050565b6000819050919050565b600063ffffffff82169050919050565b6000819050919050565b6000612bbf612bba612bb584612b80565b612b9a565b612b8a565b9050919050565b612bcf81612ba4565b82525050565b6000604082019050612bea600083018561288f565b612bf76020830184612bc6565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c38826124a3565b9150612c43836124a3565b9250828201905080821115612c5b57612c5a612bfe565b5b92915050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20756e70617573650000000000602082015250565b6000612cbd603b83612540565b9150612cc882612c61565b604082019050919050565b60006020820190508181036000830152612cec81612cb0565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000602082015250565b6000612d4f603883612540565b9150612d5a82612cf3565b604082019050919050565b60006020820190508181036000830152612d7e81612d42565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20706175736500000000000000602082015250565b6000612de1603983612540565b9150612dec82612d85565b604082019050919050565b60006020820190508181036000830152612e1081612dd4565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612e73602583612540565b9150612e7e82612e17565b604082019050919050565b60006020820190508181036000830152612ea281612e66565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f05602483612540565b9150612f1082612ea9565b604082019050919050565b60006020820190508181036000830152612f3481612ef8565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f97602283612540565b9150612fa282612f3b565b604082019050919050565b60006020820190508181036000830152612fc681612f8a565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000613029602183612540565b915061303482612fcd565b604082019050919050565b600060208201905081810360008301526130588161301c565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006130bb602283612540565b91506130c68261305f565b604082019050919050565b600060208201905081810360008301526130ea816130ae565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613127601d83612540565b9150613132826130f1565b602082019050919050565b600060208201905081810360008301526131568161311a565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006131b9602583612540565b91506131c48261315d565b604082019050919050565b600060208201905081810360008301526131e8816131ac565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061324b602383612540565b9150613256826131ef565b604082019050919050565b6000602082019050818103600083015261327a8161323e565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006132dd602683612540565b91506132e882613281565b604082019050919050565b6000602082019050818103600083015261330c816132d0565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000613349601f83612540565b915061335482613313565b602082019050919050565b600060208201905081810360008301526133788161333c565b9050919050565b6000606082019050613394600083018661288f565b6133a1602083018561288f565b6133ae6040830184612674565b949350505050565b60006133c1826124a3565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036133f3576133f2612bfe565b5b600182019050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b600061343f6017836133fe565b915061344a82613409565b601782019050919050565b600061346082612535565b61346a81856133fe565b935061347a818560208601612551565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006134bc6011836133fe565b91506134c782613486565b601182019050919050565b60006134dd82613432565b91506134e98285613455565b91506134f4826134af565b91506135008284613455565b91508190509392505050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613542601483612540565b915061354d8261350c565b602082019050919050565b6000602082019050818103600083015261357181613535565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006135ae601083612540565b91506135b982613578565b602082019050919050565b600060208201905081810360008301526135dd816135a1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524332305061757361626c653a20746f6b656e207472616e7366657220776860008201527f696c652070617573656400000000000000000000000000000000000000000000602082015250565b600061366f602a83612540565b915061367a82613613565b604082019050919050565b6000602082019050818103600083015261369e81613662565b9050919050565b60006136b0826124a3565b91506136bb836124a3565b92508282026136c9816124a3565b915082820484148315176136e0576136df612bfe565b5b5092915050565b60006136f2826124a3565b91506000820361370557613704612bfe565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000613746602083612540565b915061375182613710565b602082019050919050565b6000602082019050818103600083015261377581613739565b9050919050565b6000613787826124a3565b9150613792836124a3565b92508282039050818111156137aa576137a9612bfe565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220ea52cb3272a256f62b695ae21937377a7ea8ac6a47f3579126b1a2b8ae945be764736f6c63430008140033", + "bytecode": "0x60806040523461045b57611dcd803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611591908161073c8239f35b5f516020611ced5f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611d4d5f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611d6d5f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611dad5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611dad5f395f51905f5260205260408120805460ff191660011790553391905f516020611ccd5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020611d0d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d0d5f395f51905f5260205260408120805460ff191660011790553391905f516020611d6d5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d2d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d2d5f395f51905f5260205260408120805460ff191660011790553391905f516020611d4d5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d8d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d8d5f395f51905f5260205260408120805460ff191660011790553391905f516020611ced5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e815750806303f24de114610d4b57806306fdde0314610c90578063095ea7b314610be857806318160ddd14610bcb5780631cf2c7e214610b1c57806323b872dd14610ae4578063248a9ca314610ab2578063282c51f314610a785780632f2ff15d14610a13578063313ce567146109f057806336568abe146109ac578063372500ab146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f34565b6101d0610f4a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4a565b9061023c610237825f525f602052600160405f20015490565b61120e565b611246565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f34565b6024359033611114565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610eee565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610eee565b604051918291602083526020830190610f10565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a3565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c157610588611388565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153c5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f34565b60243590610640823383611071565b610f78565b346101ab5760203660031901126101ab576001600160a01b03610666610f34565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f78565b346101ab5760403660031901126101ab576106d5610f34565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fc5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a85750610756611388565b600454908082018092116107945760205f51602061151c5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610eee565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153c5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af180156109a15761097957005b6102419060203d60201161099a575b6109928183610eee565b810190610f60565b503d610988565b6040513d5f823e3d90fd5b346101ab5760403660031901126101ab576109c5610f4a565b336001600160a01b038216036109e15761024190600435611246565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab57600435610a2f610f4a565b610a47610237835f525f602052600160405f20015490565b610a518183611280565b610a5757005b5f91825260016020526040909120610241916001600160a01b0316906113cc565b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610adc6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b00610f34565b610b08610f4a565b60443591610b17833383611071565b611114565b346101ab5760403660031901126101ab57610b35610f34565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b78576102419060243590610f78565b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c01610f34565b602435903315610c7d576001600160a01b0316908115610c6a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d41575b60208310811461048f5782855290811561046b5750600114610ce357610409836103f581850382610eee565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d27575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d0f565b91607f1691610cb7565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6d57604051610da5601f8401601f191660200182610eee565b82815236602484840101116101ab575f602084610df19560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f10565b602435604483015203815f6108005af19081156109a1575f91610e4e575b5015610e1757005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e67915060203d60201161099a576109928183610eee565b81610e0f565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec3575b5015158152f35b637965db0b60e01b811491508115610edd575b5083610ebc565b6301ffc9a760e01b14905083610ed6565b90601f8019910116810190811067ffffffffffffffff821117610e6d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b0316801561105e575f5160206114fc5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110215750610fc0611388565b805f52600260205260405f2054838110611007576020845f94955f51602061151c5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af161104e575b5001610faf565b5f61105891610eee565b5f611047565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ab575b50505050565b8284106110f1578015610c7d576001600160a01b03821615610c6a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a5565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b031690811561105e576001600160a01b03169182156107e5575f5160206114fc5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d1575061116a611388565b815f52600260205260405f20548181106111b857815f51602061151c5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16111fe575b5001611159565b5f61120891610eee565b5f6111f7565b5f8181526020818152604080832033845290915290205460ff16156112305750565b63e2517d3f60e01b5f523360045260245260445ffd5b6112508282611308565b918261125b57505090565b5f9182526001602052604090912061127c916001600160a01b031690611436565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139457565b63d93c066560e01b5f5260045ffd5b80548210156113b8575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f1461142f578054600160401b811015610e6d5761141c6114068260018794018555846113a3565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f3575f1981018181116107945782545f19810191908211610794578181036114be575b505050805480156114aa575f19019061148b82826113a3565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114de6114ce61140693866113a3565b90549060031b1c928392866113a3565b90555f528360205260405f20555f8080611472565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212203fb2dd5ba4123a2a5f8d1c611e1d0a73c78119eb55c650a7d1e0fcf28ec8fd3664736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e815750806303f24de114610d4b57806306fdde0314610c90578063095ea7b314610be857806318160ddd14610bcb5780631cf2c7e214610b1c57806323b872dd14610ae4578063248a9ca314610ab2578063282c51f314610a785780632f2ff15d14610a13578063313ce567146109f057806336568abe146109ac578063372500ab146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f34565b6101d0610f4a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4a565b9061023c610237825f525f602052600160405f20015490565b61120e565b611246565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f34565b6024359033611114565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610eee565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610eee565b604051918291602083526020830190610f10565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a3565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c157610588611388565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153c5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f34565b60243590610640823383611071565b610f78565b346101ab5760203660031901126101ab576001600160a01b03610666610f34565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f78565b346101ab5760403660031901126101ab576106d5610f34565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fc5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a85750610756611388565b600454908082018092116107945760205f51602061151c5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610eee565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153c5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af180156109a15761097957005b6102419060203d60201161099a575b6109928183610eee565b810190610f60565b503d610988565b6040513d5f823e3d90fd5b346101ab5760403660031901126101ab576109c5610f4a565b336001600160a01b038216036109e15761024190600435611246565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab57600435610a2f610f4a565b610a47610237835f525f602052600160405f20015490565b610a518183611280565b610a5757005b5f91825260016020526040909120610241916001600160a01b0316906113cc565b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610adc6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b00610f34565b610b08610f4a565b60443591610b17833383611071565b611114565b346101ab5760403660031901126101ab57610b35610f34565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b78576102419060243590610f78565b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c01610f34565b602435903315610c7d576001600160a01b0316908115610c6a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d41575b60208310811461048f5782855290811561046b5750600114610ce357610409836103f581850382610eee565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d27575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d0f565b91607f1691610cb7565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6d57604051610da5601f8401601f191660200182610eee565b82815236602484840101116101ab575f602084610df19560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f10565b602435604483015203815f6108005af19081156109a1575f91610e4e575b5015610e1757005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e67915060203d60201161099a576109928183610eee565b81610e0f565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec3575b5015158152f35b637965db0b60e01b811491508115610edd575b5083610ebc565b6301ffc9a760e01b14905083610ed6565b90601f8019910116810190811067ffffffffffffffff821117610e6d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b0316801561105e575f5160206114fc5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110215750610fc0611388565b805f52600260205260405f2054838110611007576020845f94955f51602061151c5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af161104e575b5001610faf565b5f61105891610eee565b5f611047565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ab575b50505050565b8284106110f1578015610c7d576001600160a01b03821615610c6a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a5565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b031690811561105e576001600160a01b03169182156107e5575f5160206114fc5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d1575061116a611388565b815f52600260205260405f20548181106111b857815f51602061151c5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16111fe575b5001611159565b5f61120891610eee565b5f6111f7565b5f8181526020818152604080832033845290915290205460ff16156112305750565b63e2517d3f60e01b5f523360045260245260445ffd5b6112508282611308565b918261125b57505090565b5f9182526001602052604090912061127c916001600160a01b031690611436565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139457565b63d93c066560e01b5f5260045ffd5b80548210156113b8575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f1461142f578054600160401b811015610e6d5761141c6114068260018794018555846113a3565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f3575f1981018181116107945782545f19810191908211610794578181036114be575b505050805480156114aa575f19019061148b82826113a3565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114de6114ce61140693866113a3565b90549060031b1c928392866113a3565b90555f528360205260405f20555f8080611472565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212203fb2dd5ba4123a2a5f8d1c611e1d0a73c78119eb55c650a7d1e0fcf28ec8fd3664736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/ERC20RecursiveNonRevertingPrecompileCall.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json b/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json index 73424a1eb..a8721f445 100644 --- a/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json +++ b/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20RecursiveRevertingPrecompileCall", "sourceName": "solidity/ERC20RecursiveRevertingPrecompileCall.sol", "abi": [ @@ -24,6 +24,123 @@ "stateMutability": "nonpayable", "type": "constructor" }, + { + "inputs": [], + "name": "AccessControlBadConfirmation", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "neededRole", + "type": "bytes32" + } + ], + "name": "AccessControlUnauthorizedAccount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientBalance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "approver", + "type": "address" + } + ], + "name": "ERC20InvalidApprover", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "ERC20InvalidReceiver", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "ERC20InvalidSender", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "ERC20InvalidSpender", + "type": "error" + }, + { + "inputs": [], + "name": "EnforcedPause", + "type": "error" + }, + { + "inputs": [], + "name": "ExpectedPause", + "type": "error" + }, { "anonymous": false, "inputs": [ @@ -285,7 +402,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -323,7 +440,7 @@ "inputs": [ { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -359,7 +476,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -388,30 +505,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { @@ -498,16 +591,17 @@ "internalType": "bytes32", "name": "role", "type": "bytes32" - }, + } + ], + "name": "getRoleMembers", + "outputs": [ { - "internalType": "address", - "name": "account", - "type": "address" + "internalType": "address[]", + "name": "", + "type": "address[]" } ], - "name": "grantRole", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -523,31 +617,25 @@ "type": "address" } ], - "name": "hasRole", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", + "name": "grantRole", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "address", - "name": "spender", - "type": "address" + "internalType": "bytes32", + "name": "role", + "type": "bytes32" }, { - "internalType": "uint256", - "name": "addedValue", - "type": "uint256" + "internalType": "address", + "name": "account", + "type": "address" } ], - "name": "increaseAllowance", + "name": "hasRole", "outputs": [ { "internalType": "bool", @@ -555,7 +643,7 @@ "type": "bool" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -618,7 +706,7 @@ }, { "internalType": "address", - "name": "account", + "name": "callerConfirmation", "type": "address" } ], @@ -699,7 +787,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -728,7 +816,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -751,8 +839,11 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620041d3380380620041d38339818101604052810190620000379190620005e0565b828281600590816200004a9190620008c5565b5080600690816200005c9190620008c5565b5050506000600760006101000a81548160ff0219169083151502179055506200009e6000801b620000926200017b60201b60201c565b6200018360201b60201c565b620000df7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6620000d36200017b60201b60201c565b6200018360201b60201c565b620001207f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a620001146200017b60201b60201c565b6200018360201b60201c565b620001617f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a848620001556200017b60201b60201c565b6200018360201b60201c565b6200017281620001c160201b60201c565b505050620009ac565b600033905090565b620001958282620001df60201b60201c565b620001bc8160016000858152602001908152602001600020620002d060201b90919060201c565b505050565b80600760016101000a81548160ff021916908360ff16021790555050565b620001f182826200030860201b60201c565b620002cc57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620002716200017b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600062000300836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6200037260201b60201c565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000620003868383620003ec60201b60201c565b620003e1578260000182908060018154018082558091505060019003906000526020600020016000909190919091505582600001805490508360010160008481526020019081526020016000208190555060019050620003e6565b600090505b92915050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000478826200042d565b810181811067ffffffffffffffff821117156200049a57620004996200043e565b5b80604052505050565b6000620004af6200040f565b9050620004bd82826200046d565b919050565b600067ffffffffffffffff821115620004e057620004df6200043e565b5b620004eb826200042d565b9050602081019050919050565b60005b8381101562000518578082015181840152602081019050620004fb565b60008484015250505050565b60006200053b6200053584620004c2565b620004a3565b9050828152602081018484840111156200055a576200055962000428565b5b62000567848285620004f8565b509392505050565b600082601f83011262000587576200058662000423565b5b81516200059984826020860162000524565b91505092915050565b600060ff82169050919050565b620005ba81620005a2565b8114620005c657600080fd5b50565b600081519050620005da81620005af565b92915050565b600080600060608486031215620005fc57620005fb62000419565b5b600084015167ffffffffffffffff8111156200061d576200061c6200041e565b5b6200062b868287016200056f565b935050602084015167ffffffffffffffff8111156200064f576200064e6200041e565b5b6200065d868287016200056f565b92505060406200067086828701620005c9565b9150509250925092565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620006cd57607f821691505b602082108103620006e357620006e262000685565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200074d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200070e565b6200075986836200070e565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620007a6620007a06200079a8462000771565b6200077b565b62000771565b9050919050565b6000819050919050565b620007c28362000785565b620007da620007d182620007ad565b8484546200071b565b825550505050565b600090565b620007f1620007e2565b620007fe818484620007b7565b505050565b5b8181101562000826576200081a600082620007e7565b60018101905062000804565b5050565b601f82111562000875576200083f81620006e9565b6200084a84620006fe565b810160208510156200085a578190505b620008726200086985620006fe565b83018262000803565b50505b505050565b600082821c905092915050565b60006200089a600019846008026200087a565b1980831691505092915050565b6000620008b5838362000887565b9150826002028217905092915050565b620008d0826200067a565b67ffffffffffffffff811115620008ec57620008eb6200043e565b5b620008f88254620006b4565b620009058282856200082a565b600060209050601f8311600181146200093d576000841562000928578287015190505b620009348582620008a7565b865550620009a4565b601f1984166200094d86620006e9565b60005b82811015620009775784890151825560018201915060208501945060208101905062000950565b8683101562000997578489015162000993601f89168262000887565b8355505b6001600288020188555050505b505050505050565b61381780620009bc6000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c806342966c681161010f578063a217fddf116100a2578063d539139311610071578063d5391393146105b9578063d547741f146105d7578063dd62ed3e146105f3578063e63ab1e914610623576101f0565b8063a217fddf1461050b578063a457c2d714610529578063a9059cbb14610559578063ca15c87314610589576101f0565b80638456cb59116100de5780638456cb59146104835780639010d07c1461048d57806391d14854146104bd57806395d89b41146104ed576101f0565b806342966c68146103fd5780635c975abb1461041957806370a082311461043757806379cc679014610467576101f0565b8063282c51f31161018757806336568abe1161015657806336568abe1461038b57806339509351146103a75780633f4ba83a146103d757806340c10f19146103e1576101f0565b8063282c51f3146103295780632c0503d4146103475780632f2ff15d14610351578063313ce5671461036d576101f0565b806318160ddd116101c357806318160ddd1461028f5780631cf2c7e2146102ad57806323b872dd146102c9578063248a9ca3146102f9576101f0565b806301ffc9a7146101f557806303f24de11461022557806306fdde0314610241578063095ea7b31461025f575b600080fd5b61020f600480360381019061020a91906122fc565b610641565b60405161021c9190612344565b60405180910390f35b61023f600480360381019061023a91906124db565b6106bb565b005b610249610786565b60405161025691906125b6565b60405180910390f35b61027960048036038101906102749190612636565b610818565b6040516102869190612344565b60405180910390f35b61029761083b565b6040516102a49190612685565b60405180910390f35b6102c760048036038101906102c29190612636565b610845565b005b6102e360048036038101906102de91906126a0565b6108c3565b6040516102f09190612344565b60405180910390f35b610313600480360381019061030e9190612729565b6108f2565b6040516103209190612765565b60405180910390f35b610331610911565b60405161033e9190612765565b60405180910390f35b61034f610935565b005b61036b60048036038101906103669190612780565b6109bb565b005b6103756109dc565b60405161038291906127dc565b60405180910390f35b6103a560048036038101906103a09190612780565b6109f3565b005b6103c160048036038101906103bc9190612636565b610a76565b6040516103ce9190612344565b60405180910390f35b6103df610aad565b005b6103fb60048036038101906103f69190612636565b610b27565b005b610417600480360381019061041291906127f7565b610ba5565b005b610421610bb9565b60405161042e9190612344565b60405180910390f35b610451600480360381019061044c9190612824565b610bd0565b60405161045e9190612685565b60405180910390f35b610481600480360381019061047c9190612636565b610c19565b005b61048b610c39565b005b6104a760048036038101906104a29190612851565b610cb3565b6040516104b491906128a0565b60405180910390f35b6104d760048036038101906104d29190612780565b610ce2565b6040516104e49190612344565b60405180910390f35b6104f5610d4c565b60405161050291906125b6565b60405180910390f35b610513610dde565b6040516105209190612765565b60405180910390f35b610543600480360381019061053e9190612636565b610de5565b6040516105509190612344565b60405180910390f35b610573600480360381019061056e9190612636565b610e5c565b6040516105809190612344565b60405180910390f35b6105a3600480360381019061059e9190612729565b610e7f565b6040516105b09190612685565b60405180910390f35b6105c1610ea3565b6040516105ce9190612765565b60405180910390f35b6105f160048036038101906105ec9190612780565b610ec7565b005b61060d600480360381019061060891906128bb565b610ee8565b60405161061a9190612685565b60405180910390f35b61062b610f6f565b6040516106389190612765565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806106b457506106b382610f93565b5b9050919050565b600061080073ffffffffffffffffffffffffffffffffffffffff166353266bbb3085856040518463ffffffff1660e01b81526004016106fc939291906128fb565b6020604051808303816000875af115801561071b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073f9190612965565b905080610781576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610778906129de565b60405180910390fd5b505050565b60606005805461079590612a2d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c190612a2d565b801561080e5780601f106107e35761010080835404028352916020019161080e565b820191906000526020600020905b8154815290600101906020018083116107f157829003601f168201915b5050505050905090565b60008061082361100d565b9050610830818585611015565b600191505092915050565b6000600454905090565b6108767f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84861087161100d565b610ce2565b6108b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ac90612ad0565b60405180910390fd5b6108bf82826111de565b5050565b6000806108ce61100d565b90506108db8582856113ad565b6108e6858585611439565b60019150509392505050565b6000806000838152602001908152602001600020600101549050919050565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b61080173ffffffffffffffffffffffffffffffffffffffff16632efe8a5f3060646040518363ffffffff1660e01b8152600401610973929190612b45565b6020604051808303816000875af1158015610992573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b69190612965565b600080fd5b6109c4826108f2565b6109cd816116b2565b6109d783836116c6565b505050565b6000600760019054906101000a900460ff16905090565b6109fb61100d565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610a68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5f90612be0565b60405180910390fd5b610a7282826116fa565b5050565b600080610a8161100d565b9050610aa2818585610a938589610ee8565b610a9d9190612c2f565b611015565b600191505092915050565b610ade7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610ad961100d565b610ce2565b610b1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1490612cd5565b60405180910390fd5b610b2561172e565b565b610b587f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610b5361100d565b610ce2565b610b97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8e90612d67565b60405180910390fd5b610ba18282611791565b5050565b610bb6610bb061100d565b826111de565b50565b6000600760009054906101000a900460ff16905090565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610c2b82610c2561100d565b836113ad565b610c3582826111de565b5050565b610c6a7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610c6561100d565b610ce2565b610ca9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca090612df9565b60405180910390fd5b610cb16118e8565b565b6000610cda826001600086815260200190815260200160002061194b90919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060068054610d5b90612a2d565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8790612a2d565b8015610dd45780601f10610da957610100808354040283529160200191610dd4565b820191906000526020600020905b815481529060010190602001808311610db757829003601f168201915b5050505050905090565b6000801b81565b600080610df061100d565b90506000610dfe8286610ee8565b905083811015610e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3a90612e8b565b60405180910390fd5b610e508286868403611015565b60019250505092915050565b600080610e6761100d565b9050610e74818585611439565b600191505092915050565b6000610e9c60016000848152602001908152602001600020611965565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610ed0826108f2565b610ed9816116b2565b610ee383836116fa565b505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061100657506110058261197a565b5b9050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107b90612f1d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ea90612faf565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111d19190612685565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124490613041565b60405180910390fd5b611259826000836119e4565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d7906130d3565b60405180910390fd5b818103600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600460008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113949190612685565b60405180910390a36113a883600084611aa9565b505050565b60006113b98484610ee8565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146114335781811015611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141c9061313f565b60405180910390fd5b6114328484848403611015565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149f906131d1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150e90613263565b60405180910390fd5b6115228383836119e4565b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a0906132f5565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116999190612685565b60405180910390a36116ac848484611aa9565b50505050565b6116c3816116be61100d565b611aae565b50565b6116d08282611b33565b6116f58160016000858152602001908152602001600020611c1390919063ffffffff16565b505050565b6117048282611c43565b6117298160016000858152602001908152602001600020611d2490919063ffffffff16565b505050565b611736611d54565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61177a61100d565b60405161178791906128a0565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611800576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f790613361565b60405180910390fd5b61180c600083836119e4565b806004600082825461181e9190612c2f565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118d09190612685565b60405180910390a36118e460008383611aa9565b5050565b6118f0611d9d565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861193461100d565b60405161194191906128a0565b60405180910390a1565b600061195a8360000183611de7565b60001c905092915050565b600061197382600001611e12565b9050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b7f6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfe838383604051611a1793929190613381565b60405180910390a160005b6005811015611a98573073ffffffffffffffffffffffffffffffffffffffff16632c0503d46040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611a7357600080fd5b505af1925050508015611a84575060015b508080611a90906133b8565b915050611a22565b50611aa4838383611e23565b505050565b505050565b611ab88282610ce2565b611b2f57611ac581611e7b565b611ad38360001c6020611ea8565b604051602001611ae49291906134d4565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2691906125b6565b60405180910390fd5b5050565b611b3d8282610ce2565b611c0f57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611bb461100d565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000611c3b836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6120e4565b905092915050565b611c4d8282610ce2565b15611d2057600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611cc561100d565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000611d4c836000018373ffffffffffffffffffffffffffffffffffffffff1660001b612154565b905092915050565b611d5c610bb9565b611d9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d929061355a565b60405180910390fd5b565b611da5610bb9565b15611de5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ddc906135c6565b60405180910390fd5b565b6000826000018281548110611dff57611dfe6135e6565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b611e2e838383612268565b611e36610bb9565b15611e76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6d90613687565b60405180910390fd5b505050565b6060611ea18273ffffffffffffffffffffffffffffffffffffffff16601460ff16611ea8565b9050919050565b606060006002836002611ebb91906136a7565b611ec59190612c2f565b67ffffffffffffffff811115611ede57611edd61237a565b5b6040519080825280601f01601f191660200182016040528015611f105781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110611f4857611f476135e6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611fac57611fab6135e6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002611fec91906136a7565b611ff69190612c2f565b90505b6001811115612096577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110612038576120376135e6565b5b1a60f81b82828151811061204f5761204e6135e6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061208f906136e9565b9050611ff9565b50600084146120da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120d19061375e565b60405180910390fd5b8091505092915050565b60006120f0838361226d565b61214957826000018290806001815401808255809150506001900390600052602060002001600090919091909150558260000180549050836001016000848152602001908152602001600020819055506001905061214e565b600090505b92915050565b6000808360010160008481526020019081526020016000205490506000811461225c576000600182612186919061377e565b905060006001866000018054905061219e919061377e565b905081811461220d5760008660000182815481106121bf576121be6135e6565b5b90600052602060002001549050808760000184815481106121e3576121e26135e6565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b85600001805480612221576122206137b2565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050612262565b60009150505b92915050565b505050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6122d9816122a4565b81146122e457600080fd5b50565b6000813590506122f6816122d0565b92915050565b6000602082840312156123125761231161229a565b5b6000612320848285016122e7565b91505092915050565b60008115159050919050565b61233e81612329565b82525050565b60006020820190506123596000830184612335565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6123b282612369565b810181811067ffffffffffffffff821117156123d1576123d061237a565b5b80604052505050565b60006123e4612290565b90506123f082826123a9565b919050565b600067ffffffffffffffff8211156124105761240f61237a565b5b61241982612369565b9050602081019050919050565b82818337600083830152505050565b6000612448612443846123f5565b6123da565b90508281526020810184848401111561246457612463612364565b5b61246f848285612426565b509392505050565b600082601f83011261248c5761248b61235f565b5b813561249c848260208601612435565b91505092915050565b6000819050919050565b6124b8816124a5565b81146124c357600080fd5b50565b6000813590506124d5816124af565b92915050565b600080604083850312156124f2576124f161229a565b5b600083013567ffffffffffffffff8111156125105761250f61229f565b5b61251c85828601612477565b925050602061252d858286016124c6565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612571578082015181840152602081019050612556565b60008484015250505050565b600061258882612537565b6125928185612542565b93506125a2818560208601612553565b6125ab81612369565b840191505092915050565b600060208201905081810360008301526125d0818461257d565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612603826125d8565b9050919050565b612613816125f8565b811461261e57600080fd5b50565b6000813590506126308161260a565b92915050565b6000806040838503121561264d5761264c61229a565b5b600061265b85828601612621565b925050602061266c858286016124c6565b9150509250929050565b61267f816124a5565b82525050565b600060208201905061269a6000830184612676565b92915050565b6000806000606084860312156126b9576126b861229a565b5b60006126c786828701612621565b93505060206126d886828701612621565b92505060406126e9868287016124c6565b9150509250925092565b6000819050919050565b612706816126f3565b811461271157600080fd5b50565b600081359050612723816126fd565b92915050565b60006020828403121561273f5761273e61229a565b5b600061274d84828501612714565b91505092915050565b61275f816126f3565b82525050565b600060208201905061277a6000830184612756565b92915050565b600080604083850312156127975761279661229a565b5b60006127a585828601612714565b92505060206127b685828601612621565b9150509250929050565b600060ff82169050919050565b6127d6816127c0565b82525050565b60006020820190506127f160008301846127cd565b92915050565b60006020828403121561280d5761280c61229a565b5b600061281b848285016124c6565b91505092915050565b60006020828403121561283a5761283961229a565b5b600061284884828501612621565b91505092915050565b600080604083850312156128685761286761229a565b5b600061287685828601612714565b9250506020612887858286016124c6565b9150509250929050565b61289a816125f8565b82525050565b60006020820190506128b56000830184612891565b92915050565b600080604083850312156128d2576128d161229a565b5b60006128e085828601612621565b92505060206128f185828601612621565b9150509250929050565b60006060820190506129106000830186612891565b8181036020830152612922818561257d565b90506129316040830184612676565b949350505050565b61294281612329565b811461294d57600080fd5b50565b60008151905061295f81612939565b92915050565b60006020828403121561297b5761297a61229a565b5b600061298984828501612950565b91505092915050565b7f6661696c656420746f207374616b650000000000000000000000000000000000600082015250565b60006129c8600f83612542565b91506129d382612992565b602082019050919050565b600060208201905081810360008301526129f7816129bb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612a4557607f821691505b602082108103612a5857612a576129fe565b5b50919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206275726e657220726f6c6520746f206275726e0000000000000000602082015250565b6000612aba603883612542565b9150612ac582612a5e565b604082019050919050565b60006020820190508181036000830152612ae981612aad565b9050919050565b6000819050919050565b600063ffffffff82169050919050565b6000819050919050565b6000612b2f612b2a612b2584612af0565b612b0a565b612afa565b9050919050565b612b3f81612b14565b82525050565b6000604082019050612b5a6000830185612891565b612b676020830184612b36565b9392505050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612bca602f83612542565b9150612bd582612b6e565b604082019050919050565b60006020820190508181036000830152612bf981612bbd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c3a826124a5565b9150612c45836124a5565b9250828201905080821115612c5d57612c5c612c00565b5b92915050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20756e70617573650000000000602082015250565b6000612cbf603b83612542565b9150612cca82612c63565b604082019050919050565b60006020820190508181036000830152612cee81612cb2565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000602082015250565b6000612d51603883612542565b9150612d5c82612cf5565b604082019050919050565b60006020820190508181036000830152612d8081612d44565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20706175736500000000000000602082015250565b6000612de3603983612542565b9150612dee82612d87565b604082019050919050565b60006020820190508181036000830152612e1281612dd6565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612e75602583612542565b9150612e8082612e19565b604082019050919050565b60006020820190508181036000830152612ea481612e68565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f07602483612542565b9150612f1282612eab565b604082019050919050565b60006020820190508181036000830152612f3681612efa565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f99602283612542565b9150612fa482612f3d565b604082019050919050565b60006020820190508181036000830152612fc881612f8c565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061302b602183612542565b915061303682612fcf565b604082019050919050565b6000602082019050818103600083015261305a8161301e565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006130bd602283612542565b91506130c882613061565b604082019050919050565b600060208201905081810360008301526130ec816130b0565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613129601d83612542565b9150613134826130f3565b602082019050919050565b600060208201905081810360008301526131588161311c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006131bb602583612542565b91506131c68261315f565b604082019050919050565b600060208201905081810360008301526131ea816131ae565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061324d602383612542565b9150613258826131f1565b604082019050919050565b6000602082019050818103600083015261327c81613240565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006132df602683612542565b91506132ea82613283565b604082019050919050565b6000602082019050818103600083015261330e816132d2565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061334b601f83612542565b915061335682613315565b602082019050919050565b6000602082019050818103600083015261337a8161333e565b9050919050565b60006060820190506133966000830186612891565b6133a36020830185612891565b6133b06040830184612676565b949350505050565b60006133c3826124a5565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036133f5576133f4612c00565b5b600182019050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000613441601783613400565b915061344c8261340b565b601782019050919050565b600061346282612537565b61346c8185613400565b935061347c818560208601612553565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006134be601183613400565b91506134c982613488565b601182019050919050565b60006134df82613434565b91506134eb8285613457565b91506134f6826134b1565b91506135028284613457565b91508190509392505050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613544601483612542565b915061354f8261350e565b602082019050919050565b6000602082019050818103600083015261357381613537565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006135b0601083612542565b91506135bb8261357a565b602082019050919050565b600060208201905081810360008301526135df816135a3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524332305061757361626c653a20746f6b656e207472616e7366657220776860008201527f696c652070617573656400000000000000000000000000000000000000000000602082015250565b6000613671602a83612542565b915061367c82613615565b604082019050919050565b600060208201905081810360008301526136a081613664565b9050919050565b60006136b2826124a5565b91506136bd836124a5565b92508282026136cb816124a5565b915082820484148315176136e2576136e1612c00565b5b5092915050565b60006136f4826124a5565b91506000820361370757613706612c00565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000613748602083612542565b915061375382613712565b602082019050919050565b600060208201905081810360008301526137778161373b565b9050919050565b6000613789826124a5565b9150613794836124a5565b92508282039050818111156137ac576137ab612c00565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220a22989a3c73ef2895da365d02b7572bb6f24e425e460a1a2078ba8e18b66baf564736f6c63430008140033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101f05760003560e01c806342966c681161010f578063a217fddf116100a2578063d539139311610071578063d5391393146105b9578063d547741f146105d7578063dd62ed3e146105f3578063e63ab1e914610623576101f0565b8063a217fddf1461050b578063a457c2d714610529578063a9059cbb14610559578063ca15c87314610589576101f0565b80638456cb59116100de5780638456cb59146104835780639010d07c1461048d57806391d14854146104bd57806395d89b41146104ed576101f0565b806342966c68146103fd5780635c975abb1461041957806370a082311461043757806379cc679014610467576101f0565b8063282c51f31161018757806336568abe1161015657806336568abe1461038b57806339509351146103a75780633f4ba83a146103d757806340c10f19146103e1576101f0565b8063282c51f3146103295780632c0503d4146103475780632f2ff15d14610351578063313ce5671461036d576101f0565b806318160ddd116101c357806318160ddd1461028f5780631cf2c7e2146102ad57806323b872dd146102c9578063248a9ca3146102f9576101f0565b806301ffc9a7146101f557806303f24de11461022557806306fdde0314610241578063095ea7b31461025f575b600080fd5b61020f600480360381019061020a91906122fc565b610641565b60405161021c9190612344565b60405180910390f35b61023f600480360381019061023a91906124db565b6106bb565b005b610249610786565b60405161025691906125b6565b60405180910390f35b61027960048036038101906102749190612636565b610818565b6040516102869190612344565b60405180910390f35b61029761083b565b6040516102a49190612685565b60405180910390f35b6102c760048036038101906102c29190612636565b610845565b005b6102e360048036038101906102de91906126a0565b6108c3565b6040516102f09190612344565b60405180910390f35b610313600480360381019061030e9190612729565b6108f2565b6040516103209190612765565b60405180910390f35b610331610911565b60405161033e9190612765565b60405180910390f35b61034f610935565b005b61036b60048036038101906103669190612780565b6109bb565b005b6103756109dc565b60405161038291906127dc565b60405180910390f35b6103a560048036038101906103a09190612780565b6109f3565b005b6103c160048036038101906103bc9190612636565b610a76565b6040516103ce9190612344565b60405180910390f35b6103df610aad565b005b6103fb60048036038101906103f69190612636565b610b27565b005b610417600480360381019061041291906127f7565b610ba5565b005b610421610bb9565b60405161042e9190612344565b60405180910390f35b610451600480360381019061044c9190612824565b610bd0565b60405161045e9190612685565b60405180910390f35b610481600480360381019061047c9190612636565b610c19565b005b61048b610c39565b005b6104a760048036038101906104a29190612851565b610cb3565b6040516104b491906128a0565b60405180910390f35b6104d760048036038101906104d29190612780565b610ce2565b6040516104e49190612344565b60405180910390f35b6104f5610d4c565b60405161050291906125b6565b60405180910390f35b610513610dde565b6040516105209190612765565b60405180910390f35b610543600480360381019061053e9190612636565b610de5565b6040516105509190612344565b60405180910390f35b610573600480360381019061056e9190612636565b610e5c565b6040516105809190612344565b60405180910390f35b6105a3600480360381019061059e9190612729565b610e7f565b6040516105b09190612685565b60405180910390f35b6105c1610ea3565b6040516105ce9190612765565b60405180910390f35b6105f160048036038101906105ec9190612780565b610ec7565b005b61060d600480360381019061060891906128bb565b610ee8565b60405161061a9190612685565b60405180910390f35b61062b610f6f565b6040516106389190612765565b60405180910390f35b60007f5a05180f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806106b457506106b382610f93565b5b9050919050565b600061080073ffffffffffffffffffffffffffffffffffffffff166353266bbb3085856040518463ffffffff1660e01b81526004016106fc939291906128fb565b6020604051808303816000875af115801561071b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073f9190612965565b905080610781576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610778906129de565b60405180910390fd5b505050565b60606005805461079590612a2d565b80601f01602080910402602001604051908101604052809291908181526020018280546107c190612a2d565b801561080e5780601f106107e35761010080835404028352916020019161080e565b820191906000526020600020905b8154815290600101906020018083116107f157829003601f168201915b5050505050905090565b60008061082361100d565b9050610830818585611015565b600191505092915050565b6000600454905090565b6108767f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84861087161100d565b610ce2565b6108b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ac90612ad0565b60405180910390fd5b6108bf82826111de565b5050565b6000806108ce61100d565b90506108db8582856113ad565b6108e6858585611439565b60019150509392505050565b6000806000838152602001908152602001600020600101549050919050565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b61080173ffffffffffffffffffffffffffffffffffffffff16632efe8a5f3060646040518363ffffffff1660e01b8152600401610973929190612b45565b6020604051808303816000875af1158015610992573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b69190612965565b600080fd5b6109c4826108f2565b6109cd816116b2565b6109d783836116c6565b505050565b6000600760019054906101000a900460ff16905090565b6109fb61100d565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610a68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a5f90612be0565b60405180910390fd5b610a7282826116fa565b5050565b600080610a8161100d565b9050610aa2818585610a938589610ee8565b610a9d9190612c2f565b611015565b600191505092915050565b610ade7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610ad961100d565b610ce2565b610b1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1490612cd5565b60405180910390fd5b610b2561172e565b565b610b587f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610b5361100d565b610ce2565b610b97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8e90612d67565b60405180910390fd5b610ba18282611791565b5050565b610bb6610bb061100d565b826111de565b50565b6000600760009054906101000a900460ff16905090565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610c2b82610c2561100d565b836113ad565b610c3582826111de565b5050565b610c6a7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610c6561100d565b610ce2565b610ca9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca090612df9565b60405180910390fd5b610cb16118e8565b565b6000610cda826001600086815260200190815260200160002061194b90919063ffffffff16565b905092915050565b600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b606060068054610d5b90612a2d565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8790612a2d565b8015610dd45780601f10610da957610100808354040283529160200191610dd4565b820191906000526020600020905b815481529060010190602001808311610db757829003601f168201915b5050505050905090565b6000801b81565b600080610df061100d565b90506000610dfe8286610ee8565b905083811015610e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3a90612e8b565b60405180910390fd5b610e508286868403611015565b60019250505092915050565b600080610e6761100d565b9050610e74818585611439565b600191505092915050565b6000610e9c60016000848152602001908152602001600020611965565b9050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610ed0826108f2565b610ed9816116b2565b610ee383836116fa565b505050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061100657506110058261197a565b5b9050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107b90612f1d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ea90612faf565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111d19190612685565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361124d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124490613041565b60405180910390fd5b611259826000836119e4565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156112e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d7906130d3565b60405180910390fd5b818103600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600460008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516113949190612685565b60405180910390a36113a883600084611aa9565b505050565b60006113b98484610ee8565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146114335781811015611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141c9061313f565b60405180910390fd5b6114328484848403611015565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161149f906131d1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150e90613263565b60405180910390fd5b6115228383836119e4565b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a0906132f5565b60405180910390fd5b818103600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116999190612685565b60405180910390a36116ac848484611aa9565b50505050565b6116c3816116be61100d565b611aae565b50565b6116d08282611b33565b6116f58160016000858152602001908152602001600020611c1390919063ffffffff16565b505050565b6117048282611c43565b6117298160016000858152602001908152602001600020611d2490919063ffffffff16565b505050565b611736611d54565b6000600760006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa61177a61100d565b60405161178791906128a0565b60405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611800576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117f790613361565b60405180910390fd5b61180c600083836119e4565b806004600082825461181e9190612c2f565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118d09190612685565b60405180910390a36118e460008383611aa9565b5050565b6118f0611d9d565b6001600760006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861193461100d565b60405161194191906128a0565b60405180910390a1565b600061195a8360000183611de7565b60001c905092915050565b600061197382600001611e12565b9050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b7f6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfe838383604051611a1793929190613381565b60405180910390a160005b6005811015611a98573073ffffffffffffffffffffffffffffffffffffffff16632c0503d46040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611a7357600080fd5b505af1925050508015611a84575060015b508080611a90906133b8565b915050611a22565b50611aa4838383611e23565b505050565b505050565b611ab88282610ce2565b611b2f57611ac581611e7b565b611ad38360001c6020611ea8565b604051602001611ae49291906134d4565b6040516020818303038152906040526040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2691906125b6565b60405180910390fd5b5050565b611b3d8282610ce2565b611c0f57600160008084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611bb461100d565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b6000611c3b836000018373ffffffffffffffffffffffffffffffffffffffff1660001b6120e4565b905092915050565b611c4d8282610ce2565b15611d2057600080600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611cc561100d565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b6000611d4c836000018373ffffffffffffffffffffffffffffffffffffffff1660001b612154565b905092915050565b611d5c610bb9565b611d9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d929061355a565b60405180910390fd5b565b611da5610bb9565b15611de5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ddc906135c6565b60405180910390fd5b565b6000826000018281548110611dff57611dfe6135e6565b5b9060005260206000200154905092915050565b600081600001805490509050919050565b611e2e838383612268565b611e36610bb9565b15611e76576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e6d90613687565b60405180910390fd5b505050565b6060611ea18273ffffffffffffffffffffffffffffffffffffffff16601460ff16611ea8565b9050919050565b606060006002836002611ebb91906136a7565b611ec59190612c2f565b67ffffffffffffffff811115611ede57611edd61237a565b5b6040519080825280601f01601f191660200182016040528015611f105781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110611f4857611f476135e6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110611fac57611fab6135e6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002611fec91906136a7565b611ff69190612c2f565b90505b6001811115612096577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110612038576120376135e6565b5b1a60f81b82828151811061204f5761204e6135e6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c94508061208f906136e9565b9050611ff9565b50600084146120da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120d19061375e565b60405180910390fd5b8091505092915050565b60006120f0838361226d565b61214957826000018290806001815401808255809150506001900390600052602060002001600090919091909150558260000180549050836001016000848152602001908152602001600020819055506001905061214e565b600090505b92915050565b6000808360010160008481526020019081526020016000205490506000811461225c576000600182612186919061377e565b905060006001866000018054905061219e919061377e565b905081811461220d5760008660000182815481106121bf576121be6135e6565b5b90600052602060002001549050808760000184815481106121e3576121e26135e6565b5b90600052602060002001819055508387600101600083815260200190815260200160002081905550505b85600001805480612221576122206137b2565b5b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050612262565b60009150505b92915050565b505050565b600080836001016000848152602001908152602001600020541415905092915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6122d9816122a4565b81146122e457600080fd5b50565b6000813590506122f6816122d0565b92915050565b6000602082840312156123125761231161229a565b5b6000612320848285016122e7565b91505092915050565b60008115159050919050565b61233e81612329565b82525050565b60006020820190506123596000830184612335565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6123b282612369565b810181811067ffffffffffffffff821117156123d1576123d061237a565b5b80604052505050565b60006123e4612290565b90506123f082826123a9565b919050565b600067ffffffffffffffff8211156124105761240f61237a565b5b61241982612369565b9050602081019050919050565b82818337600083830152505050565b6000612448612443846123f5565b6123da565b90508281526020810184848401111561246457612463612364565b5b61246f848285612426565b509392505050565b600082601f83011261248c5761248b61235f565b5b813561249c848260208601612435565b91505092915050565b6000819050919050565b6124b8816124a5565b81146124c357600080fd5b50565b6000813590506124d5816124af565b92915050565b600080604083850312156124f2576124f161229a565b5b600083013567ffffffffffffffff8111156125105761250f61229f565b5b61251c85828601612477565b925050602061252d858286016124c6565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612571578082015181840152602081019050612556565b60008484015250505050565b600061258882612537565b6125928185612542565b93506125a2818560208601612553565b6125ab81612369565b840191505092915050565b600060208201905081810360008301526125d0818461257d565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612603826125d8565b9050919050565b612613816125f8565b811461261e57600080fd5b50565b6000813590506126308161260a565b92915050565b6000806040838503121561264d5761264c61229a565b5b600061265b85828601612621565b925050602061266c858286016124c6565b9150509250929050565b61267f816124a5565b82525050565b600060208201905061269a6000830184612676565b92915050565b6000806000606084860312156126b9576126b861229a565b5b60006126c786828701612621565b93505060206126d886828701612621565b92505060406126e9868287016124c6565b9150509250925092565b6000819050919050565b612706816126f3565b811461271157600080fd5b50565b600081359050612723816126fd565b92915050565b60006020828403121561273f5761273e61229a565b5b600061274d84828501612714565b91505092915050565b61275f816126f3565b82525050565b600060208201905061277a6000830184612756565b92915050565b600080604083850312156127975761279661229a565b5b60006127a585828601612714565b92505060206127b685828601612621565b9150509250929050565b600060ff82169050919050565b6127d6816127c0565b82525050565b60006020820190506127f160008301846127cd565b92915050565b60006020828403121561280d5761280c61229a565b5b600061281b848285016124c6565b91505092915050565b60006020828403121561283a5761283961229a565b5b600061284884828501612621565b91505092915050565b600080604083850312156128685761286761229a565b5b600061287685828601612714565b9250506020612887858286016124c6565b9150509250929050565b61289a816125f8565b82525050565b60006020820190506128b56000830184612891565b92915050565b600080604083850312156128d2576128d161229a565b5b60006128e085828601612621565b92505060206128f185828601612621565b9150509250929050565b60006060820190506129106000830186612891565b8181036020830152612922818561257d565b90506129316040830184612676565b949350505050565b61294281612329565b811461294d57600080fd5b50565b60008151905061295f81612939565b92915050565b60006020828403121561297b5761297a61229a565b5b600061298984828501612950565b91505092915050565b7f6661696c656420746f207374616b650000000000000000000000000000000000600082015250565b60006129c8600f83612542565b91506129d382612992565b602082019050919050565b600060208201905081810360008301526129f7816129bb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612a4557607f821691505b602082108103612a5857612a576129fe565b5b50919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206275726e657220726f6c6520746f206275726e0000000000000000602082015250565b6000612aba603883612542565b9150612ac582612a5e565b604082019050919050565b60006020820190508181036000830152612ae981612aad565b9050919050565b6000819050919050565b600063ffffffff82169050919050565b6000819050919050565b6000612b2f612b2a612b2584612af0565b612b0a565b612afa565b9050919050565b612b3f81612b14565b82525050565b6000604082019050612b5a6000830185612891565b612b676020830184612b36565b9392505050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b6000612bca602f83612542565b9150612bd582612b6e565b604082019050919050565b60006020820190508181036000830152612bf981612bbd565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612c3a826124a5565b9150612c45836124a5565b9250828201905080821115612c5d57612c5c612c00565b5b92915050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20756e70617573650000000000602082015250565b6000612cbf603b83612542565b9150612cca82612c63565b604082019050919050565b60006020820190508181036000830152612cee81612cb2565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f68617665206d696e74657220726f6c6520746f206d696e740000000000000000602082015250565b6000612d51603883612542565b9150612d5c82612cf5565b604082019050919050565b60006020820190508181036000830152612d8081612d44565b9050919050565b7f45524332304d696e7465724275726e6572446563696d616c733a206d7573742060008201527f686176652070617573657220726f6c6520746f20706175736500000000000000602082015250565b6000612de3603983612542565b9150612dee82612d87565b604082019050919050565b60006020820190508181036000830152612e1281612dd6565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000612e75602583612542565b9150612e8082612e19565b604082019050919050565b60006020820190508181036000830152612ea481612e68565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612f07602483612542565b9150612f1282612eab565b604082019050919050565b60006020820190508181036000830152612f3681612efa565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612f99602283612542565b9150612fa482612f3d565b604082019050919050565b60006020820190508181036000830152612fc881612f8c565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061302b602183612542565b915061303682612fcf565b604082019050919050565b6000602082019050818103600083015261305a8161301e565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b60006130bd602283612542565b91506130c882613061565b604082019050919050565b600060208201905081810360008301526130ec816130b0565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613129601d83612542565b9150613134826130f3565b602082019050919050565b600060208201905081810360008301526131588161311c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006131bb602583612542565b91506131c68261315f565b604082019050919050565b600060208201905081810360008301526131ea816131ae565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061324d602383612542565b9150613258826131f1565b604082019050919050565b6000602082019050818103600083015261327c81613240565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006132df602683612542565b91506132ea82613283565b604082019050919050565b6000602082019050818103600083015261330e816132d2565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600061334b601f83612542565b915061335682613315565b602082019050919050565b6000602082019050818103600083015261337a8161333e565b9050919050565b60006060820190506133966000830186612891565b6133a36020830185612891565b6133b06040830184612676565b949350505050565b60006133c3826124a5565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036133f5576133f4612c00565b5b600182019050919050565b600081905092915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b6000613441601783613400565b915061344c8261340b565b601782019050919050565b600061346282612537565b61346c8185613400565b935061347c818560208601612553565b80840191505092915050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006134be601183613400565b91506134c982613488565b601182019050919050565b60006134df82613434565b91506134eb8285613457565b91506134f6826134b1565b91506135028284613457565b91508190509392505050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000613544601483612542565b915061354f8261350e565b602082019050919050565b6000602082019050818103600083015261357381613537565b9050919050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b60006135b0601083612542565b91506135bb8261357a565b602082019050919050565b600060208201905081810360008301526135df816135a3565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f45524332305061757361626c653a20746f6b656e207472616e7366657220776860008201527f696c652070617573656400000000000000000000000000000000000000000000602082015250565b6000613671602a83612542565b915061367c82613615565b604082019050919050565b600060208201905081810360008301526136a081613664565b9050919050565b60006136b2826124a5565b91506136bd836124a5565b92508282026136cb816124a5565b915082820484148315176136e2576136e1612c00565b5b5092915050565b60006136f4826124a5565b91506000820361370757613706612c00565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000613748602083612542565b915061375382613712565b602082019050919050565b600060208201905081810360008301526137778161373b565b9050919050565b6000613789826124a5565b9150613794836124a5565b92508282039050818111156137ac576137ab612c00565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220a22989a3c73ef2895da365d02b7572bb6f24e425e460a1a2078ba8e18b66baf564736f6c63430008140033", + "bytecode": "0x60806040523461045b57611dcf803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611593908161073c8239f35b5f516020611cef5f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611d4f5f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611d6f5f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611daf5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611daf5f395f51905f5260205260408120805460ff191660011790553391905f516020611ccf5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020611d0f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d0f5f395f51905f5260205260408120805460ff191660011790553391905f516020611d6f5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d2f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d2f5f395f51905f5260205260408120805460ff191660011790553391905f516020611d4f5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d8f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d8f5f395f51905f5260205260408120805460ff191660011790553391905f516020611cef5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e835750806303f24de114610d4d57806306fdde0314610c92578063095ea7b314610bea57806318160ddd14610bcd5780631cf2c7e214610b1e57806323b872dd14610ae6578063248a9ca314610ab4578063282c51f314610a7a5780632c0503d414610a035780632f2ff15d1461099e578063313ce5671461097b57806336568abe146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f36565b6101d0610f4c565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4c565b9061023c610237825f525f602052600160405f20015490565b611210565b611248565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f36565b6024359033611116565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610ef0565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610ef0565b604051918291602083526020830190610f12565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4c565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a5565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c15761058861138a565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153e5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f36565b60243590610640823383611073565b610f7a565b346101ab5760203660031901126101ab576001600160a01b03610666610f36565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f7a565b346101ab5760403660031901126101ab576106d5610f36565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fe5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a8575061075661138a565b600454908082018092116107945760205f51602061151e5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610ef0565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153e5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab5760403660031901126101ab57610950610f4c565b336001600160a01b0382160361096c5761024190600435611248565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab576004356109ba610f4c565b6109d2610237835f525f602052600160405f20015490565b6109dc8183611282565b6109e257005b5f91825260016020526040909120610241916001600160a01b0316906113ce565b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af18015610a6f57610a47575f80fd5b6101ab9060203d602011610a68575b610a608183610ef0565b810190610f62565b503d610a56565b6040513d5f823e3d90fd5b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610ade6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b02610f36565b610b0a610f4c565b60443591610b19833383611073565b611116565b346101ab5760403660031901126101ab57610b37610f36565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b7a576102419060243590610f7a565b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c03610f36565b602435903315610c7f576001600160a01b0316908115610c6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d43575b60208310811461048f5782855290811561046b5750600114610ce557610409836103f581850382610ef0565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d29575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d11565b91607f1691610cb9565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6f57604051610da7601f8401601f191660200182610ef0565b82815236602484840101116101ab575f602084610df39560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f12565b602435604483015203815f6108005af1908115610a6f575f91610e50575b5015610e1957005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e69915060203d602011610a6857610a608183610ef0565b81610e11565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec5575b5015158152f35b637965db0b60e01b811491508115610edf575b5083610ebe565b6301ffc9a760e01b14905083610ed8565b90601f8019910116810190811067ffffffffffffffff821117610e6f57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b03168015611060575f5160206114fe5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110235750610fc261138a565b805f52600260205260405f2054838110611009576020845f94955f51602061151e5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611050575b5001610fb1565b5f61105a91610ef0565b5f611049565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ad575b50505050565b8284106110f3578015610c7f576001600160a01b03821615610c6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a7565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115611060576001600160a01b03169182156107e5575f5160206114fe5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d3575061116c61138a565b815f52600260205260405f20548181106111ba57815f51602061151e5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611200575b500161115b565b5f61120a91610ef0565b5f6111f9565b5f8181526020818152604080832033845290915290205460ff16156112325750565b63e2517d3f60e01b5f523360045260245260445ffd5b611252828261130a565b918261125d57505090565b5f9182526001602052604090912061127e916001600160a01b031690611438565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139657565b63d93c066560e01b5f5260045ffd5b80548210156113ba575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611431578054600160401b811015610e6f5761141e6114088260018794018555846113a5565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f5575f1981018181116107945782545f19810191908211610794578181036114c0575b505050805480156114ac575f19019061148d82826113a5565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114e06114d061140893866113a5565b90549060031b1c928392866113a5565b90555f528360205260405f20555f8080611474565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220b59a1c3720910b1da3579f3b2a32f0578850760f6aa92e60fc4337993dda8d4864736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e835750806303f24de114610d4d57806306fdde0314610c92578063095ea7b314610bea57806318160ddd14610bcd5780631cf2c7e214610b1e57806323b872dd14610ae6578063248a9ca314610ab4578063282c51f314610a7a5780632c0503d414610a035780632f2ff15d1461099e578063313ce5671461097b57806336568abe146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f36565b6101d0610f4c565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4c565b9061023c610237825f525f602052600160405f20015490565b611210565b611248565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f36565b6024359033611116565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610ef0565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610ef0565b604051918291602083526020830190610f12565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4c565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a5565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c15761058861138a565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153e5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f36565b60243590610640823383611073565b610f7a565b346101ab5760203660031901126101ab576001600160a01b03610666610f36565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f7a565b346101ab5760403660031901126101ab576106d5610f36565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fe5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a8575061075661138a565b600454908082018092116107945760205f51602061151e5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610ef0565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153e5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab5760403660031901126101ab57610950610f4c565b336001600160a01b0382160361096c5761024190600435611248565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab576004356109ba610f4c565b6109d2610237835f525f602052600160405f20015490565b6109dc8183611282565b6109e257005b5f91825260016020526040909120610241916001600160a01b0316906113ce565b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af18015610a6f57610a47575f80fd5b6101ab9060203d602011610a68575b610a608183610ef0565b810190610f62565b503d610a56565b6040513d5f823e3d90fd5b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610ade6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b02610f36565b610b0a610f4c565b60443591610b19833383611073565b611116565b346101ab5760403660031901126101ab57610b37610f36565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b7a576102419060243590610f7a565b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c03610f36565b602435903315610c7f576001600160a01b0316908115610c6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d43575b60208310811461048f5782855290811561046b5750600114610ce557610409836103f581850382610ef0565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d29575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d11565b91607f1691610cb9565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6f57604051610da7601f8401601f191660200182610ef0565b82815236602484840101116101ab575f602084610df39560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f12565b602435604483015203815f6108005af1908115610a6f575f91610e50575b5015610e1957005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e69915060203d602011610a6857610a608183610ef0565b81610e11565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec5575b5015158152f35b637965db0b60e01b811491508115610edf575b5083610ebe565b6301ffc9a760e01b14905083610ed8565b90601f8019910116810190811067ffffffffffffffff821117610e6f57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b03168015611060575f5160206114fe5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110235750610fc261138a565b805f52600260205260405f2054838110611009576020845f94955f51602061151e5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611050575b5001610fb1565b5f61105a91610ef0565b5f611049565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ad575b50505050565b8284106110f3578015610c7f576001600160a01b03821615610c6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a7565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115611060576001600160a01b03169182156107e5575f5160206114fe5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d3575061116c61138a565b815f52600260205260405f20548181106111ba57815f51602061151e5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611200575b500161115b565b5f61120a91610ef0565b5f6111f9565b5f8181526020818152604080832033845290915290205460ff16156112325750565b63e2517d3f60e01b5f523360045260245260445ffd5b611252828261130a565b918261125d57505090565b5f9182526001602052604090912061127e916001600160a01b031690611438565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139657565b63d93c066560e01b5f5260045ffd5b80548210156113ba575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611431578054600160401b811015610e6f5761141e6114088260018794018555846113a5565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f5575f1981018181116107945782545f19810191908211610794578181036114c0575b505050805480156114ac575f19019061148d82826113a5565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114e06114d061140893866113a5565b90549060031b1c928392866113a5565b90555f528360205260405f20555f8080611474565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220b59a1c3720910b1da3579f3b2a32f0578850760f6aa92e60fc4337993dda8d4864736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/ERC20RecursiveRevertingPrecompileCall.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/ERC20WithNativeTransfers.json b/contracts/solidity/ERC20WithNativeTransfers.json index 6d6ab695a..97329d1f6 100644 --- a/contracts/solidity/ERC20WithNativeTransfers.json +++ b/contracts/solidity/ERC20WithNativeTransfers.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20WithNativeTransfers", "sourceName": "solidity/ERC20WithNativeTransfers.sol", "abi": [ @@ -24,6 +24,113 @@ "stateMutability": "nonpayable", "type": "constructor" }, + { + "inputs": [], + "name": "AccessControlBadConfirmation", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "neededRole", + "type": "bytes32" + } + ], + "name": "AccessControlUnauthorizedAccount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientBalance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "approver", + "type": "address" + } + ], + "name": "ERC20InvalidApprover", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "ERC20InvalidReceiver", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "ERC20InvalidSender", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "ERC20InvalidSpender", + "type": "error" + }, { "anonymous": false, "inputs": [ @@ -290,7 +397,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -328,7 +435,7 @@ "inputs": [ { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -346,7 +453,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -406,30 +513,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [], "name": "delegateAmount", @@ -524,16 +607,17 @@ "internalType": "bytes32", "name": "role", "type": "bytes32" - }, + } + ], + "name": "getRoleMembers", + "outputs": [ { - "internalType": "address", - "name": "account", - "type": "address" + "internalType": "address[]", + "name": "", + "type": "address[]" } ], - "name": "grantRole", - "outputs": [], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -549,31 +633,25 @@ "type": "address" } ], - "name": "hasRole", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", + "name": "grantRole", + "outputs": [], + "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { - "internalType": "address", - "name": "spender", - "type": "address" + "internalType": "bytes32", + "name": "role", + "type": "bytes32" }, { - "internalType": "uint256", - "name": "addedValue", - "type": "uint256" + "internalType": "address", + "name": "account", + "type": "address" } ], - "name": "increaseAllowance", + "name": "hasRole", "outputs": [ { "internalType": "bool", @@ -581,7 +659,7 @@ "type": "bool" } ], - "stateMutability": "nonpayable", + "stateMutability": "view", "type": "function" }, { @@ -650,7 +728,7 @@ }, { "internalType": "address", - "name": "account", + "name": "callerConfirmation", "type": "address" } ], @@ -731,7 +809,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -773,7 +851,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -806,8 +884,11 @@ "type": "receive" } ], - "bytecode": "0x604060808152346200043857620027cc803803806200001e816200043d565b9283398101606082820312620004385781516001600160401b0391908281116200043857816200005091850162000463565b9160209182850151828111620004385786916200006f91870162000463565b9401519360ff8516809503620004385783518281116200034f576005918254916001968784811c941680156200042d575b878510146200032e578190601f94858111620003d9575b508790858311600114620003715760009262000365575b5050600019600383901b1c191690871b1783555b80519384116200034f576006548681811c9116801562000344575b868210146200032e578493838211620002d4575b5050849183116001146200026a576000926200025e575b5050600019600383901b1c191690831b176006555b60008052600081528360002033600052815260ff8460002054161562000221575b60008052818152620001743385600020620004d5565b507f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a680600052600082528460002033600052825260ff85600020541615620001e4575b60005252620001ca3383600020620004d5565b5060ff196007541617600755516122499081620005638239f35b806000526000825284600020336000528252846000208360ff19825416179055333382600080516020620027ac833981519152600080a4620001b7565b600080526000815283600020336000528152836000208260ff1982541617905533336000600080516020620027ac8339815191528180a46200015e565b01519050388062000128565b90859350601f198316916006600052856000209260005b87828210620002bd5750508411620002a3575b505050811b016006556200013d565b015160001960f88460031b161c1916905538808062000294565b838501518655899790950194938401930162000281565b90919293506006600052856000209084808701821c83019388881062000324575b9187968a93969594929601901c01915b82811062000314575062000111565b6000815586955088910162000305565b93508293620002f5565b634e487b7160e01b600052602260045260246000fd5b90607f1690620000fd565b634e487b7160e01b600052604160045260246000fd5b015190503880620000ce565b90899350601f1983169187600052896000209260005b8b828210620003c25750508411620003a8575b505050811b018355620000e2565b015160001960f88460031b161c191690553880806200039a565b8385015186558d9790950194938401930162000387565b909150856000528760002085808501881c8201928a861062000423575b918b918695949301891c01915b82811062000413575050620000b7565b600081558594508b910162000403565b92508192620003f6565b93607f1693620000a0565b600080fd5b6040519190601f01601f191682016001600160401b038111838210176200034f57604052565b919080601f84011215620004385782516001600160401b0381116200034f5760209062000499601f8201601f191683016200043d565b92818452828287010111620004385760005b818110620004c157508260009394955001015290565b8581018301518482018401528201620004ab565b919060018301600090828252806020526040822054156000146200055c57845494680100000000000000008610156200054857600186018082558610156200053457836040949596828552602085200155549382526020522055600190565b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b83526041600452602483fd5b5092505056fe6080604081815260049182361015610022575b505050361561002057600080fd5b005b600092833560e01c91826301ffc9a714610fe3575081630688b13514610fba57816306fdde0314610f14578163095ea7b314610eea57816318160ddd14610ecc57816323b872dd14610e8f578163248a9ca314610e655781632f2ff15d14610db1578163313ce56714610d8f57816336568abe14610cfd5781633950935114610cad57816340c10f191461083e57816342966c6814610820578163504d27fd1461080157816370a08231146107c957816379cc6790146107995781639010d07c1461075857816391d148541461071257816395d89b41146106435781639f35c7e714610609578163a217fddf146105ee578163a457c2d714610546578163a9059cbb14610515578163aa3744bd146104e8578163b64bdb34146104c9578163ba84e217146104a5578163bd3fddd714610277578163ca15c8731461024f578163d539139314610214578163d547741f146101d2575063dd62ed3e146101875780610012565b346101ce57806003193601126101ce57806020926101a361109f565b6101ab6110ba565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b5080fd5b9190503461021057806003193601126102105761020d913561020860016101f76110ba565b9383875286602052862001546111c7565b6114ef565b80f35b8280fd5b5050346101ce57816003193601126101ce57602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b9050346102105760203660031901126102105760209282913581526001845220549051908152f35b839150346101ce5760c03660031901126101ce5761029361109f565b61029b6110ba565b9060643567ffffffffffffffff928382116104a157366023830112156104a157818501359384116104a1576024923684868501011161049d5760a4359586151580970361049957878052602098888a52808920338a528a5260ff818a2054161561046157505060078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a54610352906110d0565b601f811161041d575b508495601f84116001146103b15750948495839495936103a4575b5050508160011b916000199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c5580f35b0101359050848080610376565b91601f19841696600a87528387209387905b898210610403575050846001969798106103e7575b50505050811b01600a5561038d565b60001960f88660031b161c1992010135169055848080806103d8565b8060018497868395968901013581550196019201906103c3565b600a8652868620601f850160051c810191888610610457575b601f0160051c01905b81811061044c575061035b565b86815560010161043f565b9091508190610436565b5162461bcd60e51b8152908101899052601481860152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b8780fd5b8680fd5b8580fd5b5050346101ce57816003193601126101ce5760209060ff600c541690519015158152f35b5050346101ce57816003193601126101ce57602090600b549051908152f35b5050346101ce57816003193601126101ce57600754905160089190911c6001600160a01b03168152602090f35b5050346101ce57806003193601126101ce5760209061053f61053561109f565b6024359033611599565b5160018152f35b905082346105eb57826003193601126105eb5761056161109f565b918360243592338152600360205281812060018060a01b038616825260205220549082821061059a5760208561053f8585038733611a14565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b5050346101ce57816003193601126101ce5751908152602090f35b5050346101ce57816003193601126101ce57805161063f916106358261062e8161110a565b038361118f565b5191829182611073565b0390f35b5050346101ce57816003193601126101ce5780519082600654610665816110d0565b808552906001908181169081156106ea5750600114610691575b5050506106358261063f94038361118f565b60068352602095507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b8284106106d7575050508261063f94610635928201019461067f565b80548685018801529286019281016106bb565b61063f97506106359450602092508693915060ff191682840152151560051b8201019461067f565b9050346102105781600319360112610210578160209360ff926107336110ba565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b9050346102105781600319360112610210576020926107839135815260018452826024359120611f7a565b905491519160018060a01b039160031b1c168152f35b5050346101ce573660031901126105eb5761020d6107b561109f565b602435906107c4823383611b16565b611bae565b5050346101ce5760203660031901126101ce5760209181906001600160a01b036107f161109f565b1681526002845220549051908152f35b5050346101ce57816003193601126101ce576020906009549051908152f35b8390346101ce5760203660031901126101ce5761020d903533611bae565b90503461021057816003193601126102105761085861109f565b906024928335917f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68652602093868552828720338852855260ff838820541615610c6c576001600160a01b03908116958615610c2b5760ff600c541680610c24575b80610c1c575b610900575b505091859391836108e6836000805160206121948339815191529654611576565b90558585526002835280852082815401905551908152a380f35b60008051602061213483398151915260608593999897959694965189815288878201528585820152a16009548015801580610bff575b610a6e575b5050869750600b969495965480151580610a5b575b610961575b508193959294506108c5565b909193809693955084518080936353266bbb60e01b8252308783015260608683015261098f6064830161110a565b90604483015203818b6108005af1908115610a51578891610a1b575b50156109e75750918391600080516020612194833981519152936000805160206121f48339815191528896600b548451908152a1949338610955565b60119085606494519362461bcd60e51b85528401528201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152fd5b90508581813d8311610a4a575b610a32818361118f565b810103126104995751801515810361049957386109ab565b503d610a28565b84513d8a823e3d90fd5b50610a67600a546110d0565b1515610950565b8160011b908282046002141715610bed5747600080516020612154833981519152858051838152848a820152a110610ba25787808080938c60075460081c165af1610ab76120f3565b5015610b61576060878080808c60075460081c16600954908851908152818b820152600189820152600080516020612174833981519152968791a18d600854165af1610b016120f3565b5015610b3157606088996008999798995416600954855191825287820152600285820152a138809796959761093b565b825162461bcd60e51b8152808701869052601d818401526000805160206121d48339815191526044820152606490fd5b601c859185606494519362461bcd60e51b85528401528201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152fd5b825162461bcd60e51b81528087018690526032818401526000805160206121b483398151915260448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b634e487b7160e01b8952601187528289fd5b5060075460081c8a16151580610936575089600854161515610936565b5060016108c0565b50876108ba565b601f915085606494519362461bcd60e51b85528401528201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b50601d8585606494519362461bcd60e51b85528401528201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152fd5b5050346101ce57806003193601126101ce5761053f602092610cf6610cd061109f565b338352600386528483206001600160a01b03821684528652918490205460243590611576565b9033611a14565b839150346101ce57826003193601126101ce57610d186110ba565b90336001600160a01b03831603610d34579061020d91356114ef565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b5050346101ce57816003193601126101ce5760209060ff600754169051908152f35b91905034610210578060031936011261021057610e1a9135906001610dd46110ba565b92808652602090868252610dec8385892001546111c7565b80875286825283872094838060a01b031694858852825260ff848820541615610e1e575b8652528320611f92565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610e10565b90503461021057602036600319011261021057816020936001923581528085522001549051908152f35b5050346101ce5760603660031901126101ce5760209061053f610eb061109f565b610eb86110ba565b60443591610ec7833383611b16565b611599565b90503461021057826003193601126102105760209250549051908152f35b5050346101ce57806003193601126101ce5760209061053f610f0a61109f565b6024359033611a14565b5050346101ce57816003193601126101ce5780519082600554610f36816110d0565b808552906001908181169081156106ea5750600114610f61575050506106358261063f94038361118f565b60058352602095507f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b828410610fa7575050508261063f94610635928201019461067f565b8054868501880152928601928101610f8b565b5050346101ce57816003193601126101ce5760085490516001600160a01b039091168152602090f35b849134610210576020366003190112610210573563ffffffff60e01b81168091036102105760209250635a05180f60e01b8114908115611025575b5015158152f35b637965db0b60e01b81149150811561103f575b508361101e565b6301ffc9a760e01b14905083611038565b60005b8381106110635750506000910152565b8181015183820152602001611053565b604091602082526110938151809281602086015260208686019101611050565b601f01601f1916010190565b600435906001600160a01b03821682036110b557565b600080fd5b602435906001600160a01b03821682036110b557565b90600182811c92168015611100575b60208310146110ea57565b634e487b7160e01b600052602260045260246000fd5b91607f16916110df565b600a546000929161111a826110d0565b908181526001928381169081600014611174575060011461113a57505050565b90929350600a6000526020928360002092846000945b8386106111605750505050010190565b805485870183015294019385908201611150565b91935050602093945060ff191683830152151560051b010190565b90601f8019910116810190811067ffffffffffffffff8211176111b157604052565b634e487b7160e01b600052604160045260246000fd5b6000818152602090808252604092838220338352835260ff8483205416156111ef5750505050565b835167ffffffffffffffff91903360608201848111838210176114db578752602a825285820192873685378251156114c757603084538251916001928310156114b3576078602185015360295b838111611449575061140757908751946080860190868210908211176113f3578852604285528685019560603688378551156113df576030875385518210156113df5790607860218701536041915b8183116113715750505061132f57938593611315936113066048946112dd76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b9961132b9b519a8b978801525180926037880190611050565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190611050565b0103602881018552018361118f565b5162461bcd60e51b815291829160048301611073565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f811660108110156113cb576f181899199a1a9b1b9c1cb0b131b232b360811b901a6113a18589611f53565b5360041c9280156113b75760001901919061128b565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f8116601081101561149f576f181899199a1a9b1b9c1cb0b131b232b360811b901a6114778387611f53565b5360041c90801561148b576000190161123c565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90604061152c92600090808252816020528282209360018060a01b03169384835260205260ff838320541661152f575b8152600160205220612017565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a461151f565b9190820180921161158357565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b03929083169182156119c15783169283156119705760ff600c541680611968575b80611960575b61166d575b5060008281526002602052604081205491808310611619576040828260008051602061219483398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b6040805191848352600080516020612134833981519152606060209488868201528685820152a16009548015801580611943575b6117c2575b505050600b54801515806117af575b6116c1575b50506115cc565b81516353266bbb60e01b815230600482015260606024820152906116e76064830161110a565b9060448301528382806000930381846108005af19182156117a3578192611769575b50501561173257906000805160206121f483398151915291600b549051908152a13880806116ba565b60649250519062461bcd60e51b82526004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152fd5b9091508381813d831161179c575b611781818361118f565b810103126101ce57519081151582036105eb57503880611709565b503d611777565b508251903d90823e3d90fd5b506117bb600a546110d0565b15156116b5565b8160011b90828204600214171561158357476000805160206121548339815191528580518381528489820152a1106118f657600080808080948660075460081c165af161180d6120f3565b50156118b257908180806060948460075460081c16600954908851908152818a820152600189820152600080516020612174833981519152978891a185600854165af16118586120f3565b50156118805760609060085416600954845191825285820152600284820152a13880806116a6565b825162461bcd60e51b815260048101859052601d60248201526000805160206121d48339815191526044820152606490fd5b825162461bcd60e51b815260048101859052601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b825162461bcd60e51b815260048101859052603260248201526000805160206121b483398151915260448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c83161515806116a15750826008541615156116a1565b5060016115c7565b5060016115c1565b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b03908116918215611ac55716918215611a755760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b0380831660005260036020526040600020908216600052602052604060002054926000198403611b4e575b50505050565b808410611b6957611b60930391611a14565b38808080611b48565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b03908116908115611f045760ff600c541680611efc575b80611ef4575b611c73575b5080600052600260205260406000205491808310611c235760208160008051602061219483398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b6040805191838352600090600080516020612134833981519152606060209584878201528886820152a16009548015801580611ed7575b611d88575b505050600b549081151580611d75575b611ccc575b505050611bd7565b8383518080946353266bbb60e01b825230600483015260606024830152611cf56064830161110a565b9060448301520381846108005af19182156117a3578192611d3b575b50501561173257906000805160206121f483398151915291600b549051908152a138808080611cc4565b9091508381813d8311611d6e575b611d53818361118f565b810103126101ce57519081151582036105eb57503880611d11565b503d611d49565b50611d81600a546110d0565b1515611cbf565b8160011b908282046002141715611ec35747600080516020612154833981519152868051838152848a820152a110611e765782808080938560075460081c165af1611dd16120f3565b50156118b257808280808060609560075460081c16600954908951908152818b82015260018a820152600080516020612174833981519152978891a185600854165af1611e1c6120f3565b5015611e445760609060085416600954855191825286820152600285820152a1388080611caf565b835162461bcd60e51b815260048101869052601d60248201526000805160206121d48339815191526044820152606490fd5b835162461bcd60e51b815260048101869052603260248201526000805160206121b483398151915260448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b634e487b7160e01b84526011600452602484fd5b5060075460081c8316151580611caa575082600854161515611caa565b506000611bd2565b506001611bcc565b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b908151811015611f64570160200190565b634e487b7160e01b600052603260045260246000fd5b8054821015611f645760005260206000200190600090565b9190600183016000908282528060205260408220541560001461201157845494600160401b861015611ffd5783611fed611fd6886001604098999a01855584611f7a565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b906001820190600092818452826020526040842054908115156000146120ec57600019918083018181116120d85782549084820191821161148b578082036120a3575b5050508054801561208f578201916120728383611f7a565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b6120c36120b3611fd69386611f7a565b90549060031b1c92839286611f7a565b9055865284602052604086205538808061205a565b634e487b7160e01b87526011600452602487fd5b5050505090565b3d1561212e573d9067ffffffffffffffff82116111b15760405191612122601f8201601f19166020018461118f565b82523d6000602084013e565b60609056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7f3d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef496e73756666696369656e7420636f6e74726163742062616c616e636520666f5365636f6e64206e6174697665207472616e73666572206661696c6564000000f6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda26469706673582212206f85743c29fd8dd3a29fe101738d8d381e61b9c12974b90b9c6a6ef6b201f19b64736f6c634300081400332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "deployedBytecode": "0x6080604081815260049182361015610022575b505050361561002057600080fd5b005b600092833560e01c91826301ffc9a714610fe3575081630688b13514610fba57816306fdde0314610f14578163095ea7b314610eea57816318160ddd14610ecc57816323b872dd14610e8f578163248a9ca314610e655781632f2ff15d14610db1578163313ce56714610d8f57816336568abe14610cfd5781633950935114610cad57816340c10f191461083e57816342966c6814610820578163504d27fd1461080157816370a08231146107c957816379cc6790146107995781639010d07c1461075857816391d148541461071257816395d89b41146106435781639f35c7e714610609578163a217fddf146105ee578163a457c2d714610546578163a9059cbb14610515578163aa3744bd146104e8578163b64bdb34146104c9578163ba84e217146104a5578163bd3fddd714610277578163ca15c8731461024f578163d539139314610214578163d547741f146101d2575063dd62ed3e146101875780610012565b346101ce57806003193601126101ce57806020926101a361109f565b6101ab6110ba565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b5080fd5b9190503461021057806003193601126102105761020d913561020860016101f76110ba565b9383875286602052862001546111c7565b6114ef565b80f35b8280fd5b5050346101ce57816003193601126101ce57602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b9050346102105760203660031901126102105760209282913581526001845220549051908152f35b839150346101ce5760c03660031901126101ce5761029361109f565b61029b6110ba565b9060643567ffffffffffffffff928382116104a157366023830112156104a157818501359384116104a1576024923684868501011161049d5760a4359586151580970361049957878052602098888a52808920338a528a5260ff818a2054161561046157505060078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a54610352906110d0565b601f811161041d575b508495601f84116001146103b15750948495839495936103a4575b5050508160011b916000199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c5580f35b0101359050848080610376565b91601f19841696600a87528387209387905b898210610403575050846001969798106103e7575b50505050811b01600a5561038d565b60001960f88660031b161c1992010135169055848080806103d8565b8060018497868395968901013581550196019201906103c3565b600a8652868620601f850160051c810191888610610457575b601f0160051c01905b81811061044c575061035b565b86815560010161043f565b9091508190610436565b5162461bcd60e51b8152908101899052601481860152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b8780fd5b8680fd5b8580fd5b5050346101ce57816003193601126101ce5760209060ff600c541690519015158152f35b5050346101ce57816003193601126101ce57602090600b549051908152f35b5050346101ce57816003193601126101ce57600754905160089190911c6001600160a01b03168152602090f35b5050346101ce57806003193601126101ce5760209061053f61053561109f565b6024359033611599565b5160018152f35b905082346105eb57826003193601126105eb5761056161109f565b918360243592338152600360205281812060018060a01b038616825260205220549082821061059a5760208561053f8585038733611a14565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b5050346101ce57816003193601126101ce5751908152602090f35b5050346101ce57816003193601126101ce57805161063f916106358261062e8161110a565b038361118f565b5191829182611073565b0390f35b5050346101ce57816003193601126101ce5780519082600654610665816110d0565b808552906001908181169081156106ea5750600114610691575b5050506106358261063f94038361118f565b60068352602095507ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b8284106106d7575050508261063f94610635928201019461067f565b80548685018801529286019281016106bb565b61063f97506106359450602092508693915060ff191682840152151560051b8201019461067f565b9050346102105781600319360112610210578160209360ff926107336110ba565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b9050346102105781600319360112610210576020926107839135815260018452826024359120611f7a565b905491519160018060a01b039160031b1c168152f35b5050346101ce573660031901126105eb5761020d6107b561109f565b602435906107c4823383611b16565b611bae565b5050346101ce5760203660031901126101ce5760209181906001600160a01b036107f161109f565b1681526002845220549051908152f35b5050346101ce57816003193601126101ce576020906009549051908152f35b8390346101ce5760203660031901126101ce5761020d903533611bae565b90503461021057816003193601126102105761085861109f565b906024928335917f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68652602093868552828720338852855260ff838820541615610c6c576001600160a01b03908116958615610c2b5760ff600c541680610c24575b80610c1c575b610900575b505091859391836108e6836000805160206121948339815191529654611576565b90558585526002835280852082815401905551908152a380f35b60008051602061213483398151915260608593999897959694965189815288878201528585820152a16009548015801580610bff575b610a6e575b5050869750600b969495965480151580610a5b575b610961575b508193959294506108c5565b909193809693955084518080936353266bbb60e01b8252308783015260608683015261098f6064830161110a565b90604483015203818b6108005af1908115610a51578891610a1b575b50156109e75750918391600080516020612194833981519152936000805160206121f48339815191528896600b548451908152a1949338610955565b60119085606494519362461bcd60e51b85528401528201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152fd5b90508581813d8311610a4a575b610a32818361118f565b810103126104995751801515810361049957386109ab565b503d610a28565b84513d8a823e3d90fd5b50610a67600a546110d0565b1515610950565b8160011b908282046002141715610bed5747600080516020612154833981519152858051838152848a820152a110610ba25787808080938c60075460081c165af1610ab76120f3565b5015610b61576060878080808c60075460081c16600954908851908152818b820152600189820152600080516020612174833981519152968791a18d600854165af1610b016120f3565b5015610b3157606088996008999798995416600954855191825287820152600285820152a138809796959761093b565b825162461bcd60e51b8152808701869052601d818401526000805160206121d48339815191526044820152606490fd5b601c859185606494519362461bcd60e51b85528401528201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152fd5b825162461bcd60e51b81528087018690526032818401526000805160206121b483398151915260448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b634e487b7160e01b8952601187528289fd5b5060075460081c8a16151580610936575089600854161515610936565b5060016108c0565b50876108ba565b601f915085606494519362461bcd60e51b85528401528201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b50601d8585606494519362461bcd60e51b85528401528201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152fd5b5050346101ce57806003193601126101ce5761053f602092610cf6610cd061109f565b338352600386528483206001600160a01b03821684528652918490205460243590611576565b9033611a14565b839150346101ce57826003193601126101ce57610d186110ba565b90336001600160a01b03831603610d34579061020d91356114ef565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b5050346101ce57816003193601126101ce5760209060ff600754169051908152f35b91905034610210578060031936011261021057610e1a9135906001610dd46110ba565b92808652602090868252610dec8385892001546111c7565b80875286825283872094838060a01b031694858852825260ff848820541615610e1e575b8652528320611f92565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610e10565b90503461021057602036600319011261021057816020936001923581528085522001549051908152f35b5050346101ce5760603660031901126101ce5760209061053f610eb061109f565b610eb86110ba565b60443591610ec7833383611b16565b611599565b90503461021057826003193601126102105760209250549051908152f35b5050346101ce57806003193601126101ce5760209061053f610f0a61109f565b6024359033611a14565b5050346101ce57816003193601126101ce5780519082600554610f36816110d0565b808552906001908181169081156106ea5750600114610f61575050506106358261063f94038361118f565b60058352602095507f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db05b828410610fa7575050508261063f94610635928201019461067f565b8054868501880152928601928101610f8b565b5050346101ce57816003193601126101ce5760085490516001600160a01b039091168152602090f35b849134610210576020366003190112610210573563ffffffff60e01b81168091036102105760209250635a05180f60e01b8114908115611025575b5015158152f35b637965db0b60e01b81149150811561103f575b508361101e565b6301ffc9a760e01b14905083611038565b60005b8381106110635750506000910152565b8181015183820152602001611053565b604091602082526110938151809281602086015260208686019101611050565b601f01601f1916010190565b600435906001600160a01b03821682036110b557565b600080fd5b602435906001600160a01b03821682036110b557565b90600182811c92168015611100575b60208310146110ea57565b634e487b7160e01b600052602260045260246000fd5b91607f16916110df565b600a546000929161111a826110d0565b908181526001928381169081600014611174575060011461113a57505050565b90929350600a6000526020928360002092846000945b8386106111605750505050010190565b805485870183015294019385908201611150565b91935050602093945060ff191683830152151560051b010190565b90601f8019910116810190811067ffffffffffffffff8211176111b157604052565b634e487b7160e01b600052604160045260246000fd5b6000818152602090808252604092838220338352835260ff8483205416156111ef5750505050565b835167ffffffffffffffff91903360608201848111838210176114db578752602a825285820192873685378251156114c757603084538251916001928310156114b3576078602185015360295b838111611449575061140757908751946080860190868210908211176113f3578852604285528685019560603688378551156113df576030875385518210156113df5790607860218701536041915b8183116113715750505061132f57938593611315936113066048946112dd76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b9961132b9b519a8b978801525180926037880190611050565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190611050565b0103602881018552018361118f565b5162461bcd60e51b815291829160048301611073565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f811660108110156113cb576f181899199a1a9b1b9c1cb0b131b232b360811b901a6113a18589611f53565b5360041c9280156113b75760001901919061128b565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f8116601081101561149f576f181899199a1a9b1b9c1cb0b131b232b360811b901a6114778387611f53565b5360041c90801561148b576000190161123c565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90604061152c92600090808252816020528282209360018060a01b03169384835260205260ff838320541661152f575b8152600160205220612017565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a461151f565b9190820180921161158357565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b03929083169182156119c15783169283156119705760ff600c541680611968575b80611960575b61166d575b5060008281526002602052604081205491808310611619576040828260008051602061219483398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b6040805191848352600080516020612134833981519152606060209488868201528685820152a16009548015801580611943575b6117c2575b505050600b54801515806117af575b6116c1575b50506115cc565b81516353266bbb60e01b815230600482015260606024820152906116e76064830161110a565b9060448301528382806000930381846108005af19182156117a3578192611769575b50501561173257906000805160206121f483398151915291600b549051908152a13880806116ba565b60649250519062461bcd60e51b82526004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152fd5b9091508381813d831161179c575b611781818361118f565b810103126101ce57519081151582036105eb57503880611709565b503d611777565b508251903d90823e3d90fd5b506117bb600a546110d0565b15156116b5565b8160011b90828204600214171561158357476000805160206121548339815191528580518381528489820152a1106118f657600080808080948660075460081c165af161180d6120f3565b50156118b257908180806060948460075460081c16600954908851908152818a820152600189820152600080516020612174833981519152978891a185600854165af16118586120f3565b50156118805760609060085416600954845191825285820152600284820152a13880806116a6565b825162461bcd60e51b815260048101859052601d60248201526000805160206121d48339815191526044820152606490fd5b825162461bcd60e51b815260048101859052601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b825162461bcd60e51b815260048101859052603260248201526000805160206121b483398151915260448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c83161515806116a15750826008541615156116a1565b5060016115c7565b5060016115c1565b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b03908116918215611ac55716918215611a755760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b0380831660005260036020526040600020908216600052602052604060002054926000198403611b4e575b50505050565b808410611b6957611b60930391611a14565b38808080611b48565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b03908116908115611f045760ff600c541680611efc575b80611ef4575b611c73575b5080600052600260205260406000205491808310611c235760208160008051602061219483398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b6040805191838352600090600080516020612134833981519152606060209584878201528886820152a16009548015801580611ed7575b611d88575b505050600b549081151580611d75575b611ccc575b505050611bd7565b8383518080946353266bbb60e01b825230600483015260606024830152611cf56064830161110a565b9060448301520381846108005af19182156117a3578192611d3b575b50501561173257906000805160206121f483398151915291600b549051908152a138808080611cc4565b9091508381813d8311611d6e575b611d53818361118f565b810103126101ce57519081151582036105eb57503880611d11565b503d611d49565b50611d81600a546110d0565b1515611cbf565b8160011b908282046002141715611ec35747600080516020612154833981519152868051838152848a820152a110611e765782808080938560075460081c165af1611dd16120f3565b50156118b257808280808060609560075460081c16600954908951908152818b82015260018a820152600080516020612174833981519152978891a185600854165af1611e1c6120f3565b5015611e445760609060085416600954855191825286820152600285820152a1388080611caf565b835162461bcd60e51b815260048101869052601d60248201526000805160206121d48339815191526044820152606490fd5b835162461bcd60e51b815260048101869052603260248201526000805160206121b483398151915260448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b634e487b7160e01b84526011600452602484fd5b5060075460081c8316151580611caa575082600854161515611caa565b506000611bd2565b506001611bcc565b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b908151811015611f64570160200190565b634e487b7160e01b600052603260045260246000fd5b8054821015611f645760005260206000200190600090565b9190600183016000908282528060205260408220541560001461201157845494600160401b861015611ffd5783611fed611fd6886001604098999a01855584611f7a565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b906001820190600092818452826020526040842054908115156000146120ec57600019918083018181116120d85782549084820191821161148b578082036120a3575b5050508054801561208f578201916120728383611f7a565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b6120c36120b3611fd69386611f7a565b90549060031b1c92839286611f7a565b9055865284602052604086205538808061205a565b634e487b7160e01b87526011600452602487fd5b5050505090565b3d1561212e573d9067ffffffffffffffff82116111b15760405191612122601f8201601f19166020018461118f565b82523d6000602084013e565b60609056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7f3d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef496e73756666696369656e7420636f6e74726163742062616c616e636520666f5365636f6e64206e6174697665207472616e73666572206661696c6564000000f6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda26469706673582212206f85743c29fd8dd3a29fe101738d8d381e61b9c12974b90b9c6a6ef6b201f19b64736f6c63430008140033", + "bytecode": "0x6080604052346103ac5761230780380380610019816103b0565b9283398101906060818303126103ac5780516001600160401b0381116103ac57826100459183016103d5565b60208201519092906001600160401b0381116103ac576040916100699184016103d5565b91015160ff81168091036103ac5782516001600160401b0381116102da57600554600181811c911680156103a2575b60208210146102bc57601f811161035c575b506020601f82116001146102f957819293945f926102ee575b50508160011b915f199060031b1c1916176005555b81516001600160401b0381116102da57600654600181811c911680156102d0575b60208210146102bc57601f8111610259575b50602092601f82116001146101f857928192935f926101ed575b50508160011b915f199060031b1c1916176006555b61014333610426565b6101b5575b6101513361049c565b610170575b60ff196007541617600755604051611cfa908161058d8239f35b5f5160206122c75f395f51905f525f5260016020526101af337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da8000061051c565b50610156565b5f805260016020526101e7337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4961051c565b50610148565b015190505f80610125565b601f1982169360065f52805f20915f5b8681106102415750836001959610610229575b505050811b0160065561013a565b01515f1960f88460031b161c191690555f808061021b565b91926020600181928685015181550194019201610208565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c810191602084106102b2575b601f0160051c01905b8181106102a7575061010b565b5f815560010161029a565b9091508190610291565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f9565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c3565b601f1982169060055f52805f20915f5b8181106103445750958360019596971061032c575b505050811b016005556100d8565b01515f1960f88460031b161c191690555f808061031e565b9192602060018192868b015181550194019201610309565b60055f5260205f20601f830160051c81019160208410610398575b601f0160051c01905b81811061038d57506100aa565b5f8155600101610380565b9091508190610377565b90607f1690610098565b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176102da57604052565b81601f820112156103ac578051906001600160401b0382116102da57610404601f8301601f19166020016103b0565b92828452602083830101116103ac57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f5160206122e75f395f51905f52602052604090205460ff16610497576001600160a01b03165f8181525f5160206122e75f395f51905f5260205260408120805460ff191660011790553391905f5160206122875f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206122a75f395f51905f52602052604090205460ff16610497576001600160a01b03165f8181525f5160206122a75f395f51905f5260205260408120805460ff191660011790553391905f5160206122c75f395f51905f52905f5160206122875f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610585578054680100000000000000008110156102da5760018101808355811015610571578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe608080604052600436101561001c575b50361561001a575f80fd5b005b5f3560e01c90816301ffc9a71461107d575080630688b1351461105557806306fdde0314610fb0578063095ea7b314610f0857806318160ddd14610eeb57806323b872dd14610eb3578063248a9ca314610e815780632f2ff15d14610e1c578063313ce56714610dfc57806336568abe14610db857806340c10f19146108b257806342966c6814610895578063504d27fd1461087857806370a082311461084057806379cc6790146108105780639010d07c146107cb57806391d148541461078357806395d89b41146106de5780639f35c7e714610617578063a217fddf146105fd578063a3246ad31461054e578063a9059cbb1461051d578063aa3744bd146104f1578063b64bdb34146104d4578063ba84e217146104b2578063bd3fddd71461026c578063ca15c87314610242578063d539139314610208578063d547741f146101c65763dd62ed3e14610172575f61000f565b346101c25760403660031901126101c25761018b611114565b61019361112a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b5f80fd5b346101c25760403660031901126101c25761001a6004356101e561112a565b906102036101fe825f525f602052600160405f20015490565b6115b6565b6115ee565b346101c2575f3660031901126101c25760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101c25760203660031901126101c2576004355f526001602052602060405f2054604051908152f35b346101c25760c03660031901126101c257610285611114565b61028d61112a565b906064359167ffffffffffffffff83116101c257366023840112156101c25782600401359067ffffffffffffffff82116101c25736602483860101116101c25760a435928315158094036101c257335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104765760078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a5461036290611140565b601f8111610426575b505f601f82116001146103bd578192935f926103af575b50508160011b915f199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c555f80f35b602492500101358380610382565b601f19821693600a5f5260205f20915f5b86811061040b57508360019596106103ef575b505050811b01600a55610397565b01602401355f19600384901b60f8161c191690558380806103e1565b909260206001819260248787010135815501940191016103ce565b600a5f525f516020611c255f395f51905f52601f830160051c8101916020841061046c575b601f0160051c01905b818110610461575061036b565b5f8155600101610454565b909150819061044b565b60405162461bcd60e51b81526020600482015260146024820152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b346101c2575f3660031901126101c257602060ff600c54166040519015158152f35b346101c2575f3660031901126101c2576020600b54604051908152f35b346101c2575f3660031901126101c25760075460405160089190911c6001600160a01b03168152602090f35b346101c25760403660031901126101c257610543610539611114565b6024359033611251565b602060405160018152f35b346101c25760203660031901126101c2576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106105e7575050508161059c910382611178565b604051918291602083019060208452518091526040830191905f5b8181106105c5575050500390f35b82516001600160a01b03168452859450602093840193909201916001016105b7565b8254845260209093019260019283019201610586565b346101c2575f3660031901126101c25760206040515f8152f35b346101c2575f3660031901126101c2576040515f600a5461063781611140565b80845290600181169081156106ba575060011461066f575b61066b8361065f81850382611178565b604051918291826110ea565b0390f35b600a5f9081525f516020611c255f395f51905f52939250905b8082106106a05750909150810160200161065f61064f565b919260018160209254838588010152019101909291610688565b60ff191660208086019190915291151560051b8401909101915061065f905061064f565b346101c2575f3660031901126101c2576040515f6006546106fe81611140565b80845290600181169081156106ba57506001146107255761066b8361065f81850382611178565b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b8082106107695750909150810160200161065f61064f565b919260018160209254838588010152019101909291610751565b346101c25760403660031901126101c25761079c61112a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101c25760403660031901126101c2576004355f52600160205260206107f760243560405f20611aac565b905460405160039290921b1c6001600160a01b03168152f35b346101c25760403660031901126101c25761001a61082c611114565b6024359061083b8233836111ae565b611628565b346101c25760203660031901126101c2576001600160a01b03610861611114565b165f526002602052602060405f2054604051908152f35b346101c2575f3660031901126101c2576020600954604051908152f35b346101c25760203660031901126101c25761001a60043533611628565b346101c25760403660031901126101c2576108cb611114565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff1615610d73576001600160a01b0316908115610d605760ff600c541680610d59575b80610d51575b61097f575b6004549080820180921161096b5760205f516020611c855f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b5f516020611c055f395f51905f5260606040515f8152846020820152836040820152a16009548015801580610d26575b610b54575b5050600b5480151580610b41575b6109cd575b5061092d565b604051906353266bbb60e01b825230600483015260606024830152815f600a546109f681611140565b908160648501526001811690815f14610b1e5750600114610ad8575b508190602093604483015203815f6108005af1908115610acd575f91610a92575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a1826109c7565b60405162461bcd60e51b815260206004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152606490fd5b90506020813d602011610ac5575b81610aad60209383611178565b810103126101c2575180151581036101c25783610a33565b3d9150610aa0565b6040513d5f823e3d90fd5b600a5f90815291505f516020611c255f395f51905f525b818310610b0457505081016084016020610a12565b805460848488010152859350602090920191600101610aef565b60ff191660848086019190915291151560051b8401909101915060209050610a12565b50610b4d600a54611140565b15156109c2565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1610ba8611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af1610bfe611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a182806109b4565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b60405162461bcd60e51b815260206004820152603260248201527f496e73756666696369656e7420636f6e74726163742062616c616e636520666f60448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c6001600160a01b03161515806109af57506008546001600160a01b031615156109af565b506001610928565b505f610922565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152606490fd5b346101c25760403660031901126101c257610dd161112a565b336001600160a01b03821603610ded5761001a906004356115ee565b63334bd91960e11b5f5260045ffd5b346101c2575f3660031901126101c257602060ff60075416604051908152f35b346101c25760403660031901126101c257600435610e3861112a565b610e506101fe835f525f602052600160405f20015490565b610e5a81836119a4565b610e6057005b5f9182526001602052604090912061001a916001600160a01b031690611ad5565b346101c25760203660031901126101c2576020610eab6004355f525f602052600160405f20015490565b604051908152f35b346101c25760603660031901126101c257610543610ecf611114565b610ed761112a565b60443591610ee68333836111ae565b611251565b346101c2575f3660031901126101c2576020600454604051908152f35b346101c25760403660031901126101c257610f21611114565b602435903315610f9d576001600160a01b0316908115610f8a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101c2575f3660031901126101c2576040515f600554610fd081611140565b80845290600181169081156106ba5750600114610ff75761066b8361065f81850382611178565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b80821061103b5750909150810160200161065f61064f565b919260018160209254838588010152019101909291611023565b346101c2575f3660031901126101c2576008546040516001600160a01b039091168152602090f35b346101c25760203660031901126101c2576004359063ffffffff60e01b82168092036101c257602091635a05180f60e01b81149081156110bf575b5015158152f35b637965db0b60e01b8114915081156110d9575b50836110b8565b6301ffc9a760e01b149050836110d2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c257565b602435906001600160a01b03821682036101c257565b90600182811c9216801561116e575b602083101461115a57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161114f565b90601f8019910116810190811067ffffffffffffffff82111761119a57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106111e8575b50505050565b82841061122e578015610f9d576001600160a01b03821615610f8a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806111e2565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b03169081156115a3576001600160a01b0316918215610d605760ff600c54168061159b575b80611593575b6112ef575b815f52600260205260405f20548181106112d657815f516020611c855f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f526060604051848152856020820152836040820152a16009548015801580611568575b611480575b5050600b548015158061146d575b61133d575b50611288565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461136681611140565b908160648501526001811690815f1461144a5750600114611404575b508190602093604483015203815f6108005af1908115610acd575f916113c9575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f611337565b90506020813d6020116113fc575b816113e460209383611178565b810103126101c2575180151581036101c2575f6113a3565b3d91506113d7565b600a5f90815291505f516020611c255f395f51905f525b81831061143057505081016084016020611382565b80546084848801015285935060209092019160010161141b565b60ff191660848086019190915291151560051b8401909101915060209050611382565b50611479600a54611140565b1515611332565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af16114d4611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af161152a611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f80611324565b5060075460081c6001600160a01b031615158061131f57506008546001600160a01b0316151561131f565b506001611283565b50600161127d565b634b637e8f60e11b5f525f60045260245ffd5b5f8181526020818152604080832033845290915290205460ff16156115d85750565b63e2517d3f60e01b5f523360045260245260445ffd5b6115f88282611a2c565b918261160357505090565b5f91825260016020526040909120611624916001600160a01b031690611b3f565b5090565b9091906001600160a01b031680156115a35760ff600c54168061195d575b80611956575b6116b2575b805f52600260205260405f2054838110611698576020845f94955f516020611c855f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f5260606040518381525f6020820152856040820152a1600954801580158061192b575b611843575b5050600b5480151580611830575b611700575b50611651565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461172981611140565b908160648501526001811690815f1461180d57506001146117c7575b508190602093604483015203815f6108005af1908115610acd575f9161178c575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f6116fa565b90506020813d6020116117bf575b816117a760209383611178565b810103126101c2575180151581036101c2575f611766565b3d915061179a565b600a5f90815291505f516020611c255f395f51905f525b8183106117f357505081016084016020611745565b8054608484880101528593506020909201916001016117de565b60ff191660848086019190915291151560051b8401909101915060209050611745565b5061183c600a54611140565b15156116f5565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1611897611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af16118ed611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f806116e7565b5060075460081c6001600160a01b03161515806116e257506008546001600160a01b031615156116e2565b505f61164c565b506001611646565b3d1561199f573d9067ffffffffffffffff821161119a5760405191611994601f8201601f191660200184611178565b82523d5f602084013e565b606090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b8054821015611ac1575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611b38578054600160401b81101561119a57611b25611b0f826001879401855584611aac565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f14611bfc575f19810181811161096b5782545f1981019190821161096b57818103611bc7575b50505080548015611bb3575f190190611b948282611aac565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b611be7611bd7611b0f9386611aac565b90549060031b1c92839286611aac565b90555f528360205260405f20555f8080611b7b565b505050505f9056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a83d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3eff6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda2646970667358221220021c275c88ac512ab73c3cb65428514ac9f3661e398de15f80690f5d8a85904964736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x608080604052600436101561001c575b50361561001a575f80fd5b005b5f3560e01c90816301ffc9a71461107d575080630688b1351461105557806306fdde0314610fb0578063095ea7b314610f0857806318160ddd14610eeb57806323b872dd14610eb3578063248a9ca314610e815780632f2ff15d14610e1c578063313ce56714610dfc57806336568abe14610db857806340c10f19146108b257806342966c6814610895578063504d27fd1461087857806370a082311461084057806379cc6790146108105780639010d07c146107cb57806391d148541461078357806395d89b41146106de5780639f35c7e714610617578063a217fddf146105fd578063a3246ad31461054e578063a9059cbb1461051d578063aa3744bd146104f1578063b64bdb34146104d4578063ba84e217146104b2578063bd3fddd71461026c578063ca15c87314610242578063d539139314610208578063d547741f146101c65763dd62ed3e14610172575f61000f565b346101c25760403660031901126101c25761018b611114565b61019361112a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b5f80fd5b346101c25760403660031901126101c25761001a6004356101e561112a565b906102036101fe825f525f602052600160405f20015490565b6115b6565b6115ee565b346101c2575f3660031901126101c25760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101c25760203660031901126101c2576004355f526001602052602060405f2054604051908152f35b346101c25760c03660031901126101c257610285611114565b61028d61112a565b906064359167ffffffffffffffff83116101c257366023840112156101c25782600401359067ffffffffffffffff82116101c25736602483860101116101c25760a435928315158094036101c257335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104765760078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a5461036290611140565b601f8111610426575b505f601f82116001146103bd578192935f926103af575b50508160011b915f199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c555f80f35b602492500101358380610382565b601f19821693600a5f5260205f20915f5b86811061040b57508360019596106103ef575b505050811b01600a55610397565b01602401355f19600384901b60f8161c191690558380806103e1565b909260206001819260248787010135815501940191016103ce565b600a5f525f516020611c255f395f51905f52601f830160051c8101916020841061046c575b601f0160051c01905b818110610461575061036b565b5f8155600101610454565b909150819061044b565b60405162461bcd60e51b81526020600482015260146024820152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b346101c2575f3660031901126101c257602060ff600c54166040519015158152f35b346101c2575f3660031901126101c2576020600b54604051908152f35b346101c2575f3660031901126101c25760075460405160089190911c6001600160a01b03168152602090f35b346101c25760403660031901126101c257610543610539611114565b6024359033611251565b602060405160018152f35b346101c25760203660031901126101c2576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106105e7575050508161059c910382611178565b604051918291602083019060208452518091526040830191905f5b8181106105c5575050500390f35b82516001600160a01b03168452859450602093840193909201916001016105b7565b8254845260209093019260019283019201610586565b346101c2575f3660031901126101c25760206040515f8152f35b346101c2575f3660031901126101c2576040515f600a5461063781611140565b80845290600181169081156106ba575060011461066f575b61066b8361065f81850382611178565b604051918291826110ea565b0390f35b600a5f9081525f516020611c255f395f51905f52939250905b8082106106a05750909150810160200161065f61064f565b919260018160209254838588010152019101909291610688565b60ff191660208086019190915291151560051b8401909101915061065f905061064f565b346101c2575f3660031901126101c2576040515f6006546106fe81611140565b80845290600181169081156106ba57506001146107255761066b8361065f81850382611178565b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b8082106107695750909150810160200161065f61064f565b919260018160209254838588010152019101909291610751565b346101c25760403660031901126101c25761079c61112a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101c25760403660031901126101c2576004355f52600160205260206107f760243560405f20611aac565b905460405160039290921b1c6001600160a01b03168152f35b346101c25760403660031901126101c25761001a61082c611114565b6024359061083b8233836111ae565b611628565b346101c25760203660031901126101c2576001600160a01b03610861611114565b165f526002602052602060405f2054604051908152f35b346101c2575f3660031901126101c2576020600954604051908152f35b346101c25760203660031901126101c25761001a60043533611628565b346101c25760403660031901126101c2576108cb611114565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff1615610d73576001600160a01b0316908115610d605760ff600c541680610d59575b80610d51575b61097f575b6004549080820180921161096b5760205f516020611c855f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b5f516020611c055f395f51905f5260606040515f8152846020820152836040820152a16009548015801580610d26575b610b54575b5050600b5480151580610b41575b6109cd575b5061092d565b604051906353266bbb60e01b825230600483015260606024830152815f600a546109f681611140565b908160648501526001811690815f14610b1e5750600114610ad8575b508190602093604483015203815f6108005af1908115610acd575f91610a92575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a1826109c7565b60405162461bcd60e51b815260206004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152606490fd5b90506020813d602011610ac5575b81610aad60209383611178565b810103126101c2575180151581036101c25783610a33565b3d9150610aa0565b6040513d5f823e3d90fd5b600a5f90815291505f516020611c255f395f51905f525b818310610b0457505081016084016020610a12565b805460848488010152859350602090920191600101610aef565b60ff191660848086019190915291151560051b8401909101915060209050610a12565b50610b4d600a54611140565b15156109c2565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1610ba8611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af1610bfe611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a182806109b4565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b60405162461bcd60e51b815260206004820152603260248201527f496e73756666696369656e7420636f6e74726163742062616c616e636520666f60448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c6001600160a01b03161515806109af57506008546001600160a01b031615156109af565b506001610928565b505f610922565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152606490fd5b346101c25760403660031901126101c257610dd161112a565b336001600160a01b03821603610ded5761001a906004356115ee565b63334bd91960e11b5f5260045ffd5b346101c2575f3660031901126101c257602060ff60075416604051908152f35b346101c25760403660031901126101c257600435610e3861112a565b610e506101fe835f525f602052600160405f20015490565b610e5a81836119a4565b610e6057005b5f9182526001602052604090912061001a916001600160a01b031690611ad5565b346101c25760203660031901126101c2576020610eab6004355f525f602052600160405f20015490565b604051908152f35b346101c25760603660031901126101c257610543610ecf611114565b610ed761112a565b60443591610ee68333836111ae565b611251565b346101c2575f3660031901126101c2576020600454604051908152f35b346101c25760403660031901126101c257610f21611114565b602435903315610f9d576001600160a01b0316908115610f8a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101c2575f3660031901126101c2576040515f600554610fd081611140565b80845290600181169081156106ba5750600114610ff75761066b8361065f81850382611178565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b80821061103b5750909150810160200161065f61064f565b919260018160209254838588010152019101909291611023565b346101c2575f3660031901126101c2576008546040516001600160a01b039091168152602090f35b346101c25760203660031901126101c2576004359063ffffffff60e01b82168092036101c257602091635a05180f60e01b81149081156110bf575b5015158152f35b637965db0b60e01b8114915081156110d9575b50836110b8565b6301ffc9a760e01b149050836110d2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c257565b602435906001600160a01b03821682036101c257565b90600182811c9216801561116e575b602083101461115a57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161114f565b90601f8019910116810190811067ffffffffffffffff82111761119a57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106111e8575b50505050565b82841061122e578015610f9d576001600160a01b03821615610f8a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806111e2565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b03169081156115a3576001600160a01b0316918215610d605760ff600c54168061159b575b80611593575b6112ef575b815f52600260205260405f20548181106112d657815f516020611c855f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f526060604051848152856020820152836040820152a16009548015801580611568575b611480575b5050600b548015158061146d575b61133d575b50611288565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461136681611140565b908160648501526001811690815f1461144a5750600114611404575b508190602093604483015203815f6108005af1908115610acd575f916113c9575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f611337565b90506020813d6020116113fc575b816113e460209383611178565b810103126101c2575180151581036101c2575f6113a3565b3d91506113d7565b600a5f90815291505f516020611c255f395f51905f525b81831061143057505081016084016020611382565b80546084848801015285935060209092019160010161141b565b60ff191660848086019190915291151560051b8401909101915060209050611382565b50611479600a54611140565b1515611332565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af16114d4611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af161152a611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f80611324565b5060075460081c6001600160a01b031615158061131f57506008546001600160a01b0316151561131f565b506001611283565b50600161127d565b634b637e8f60e11b5f525f60045260245ffd5b5f8181526020818152604080832033845290915290205460ff16156115d85750565b63e2517d3f60e01b5f523360045260245260445ffd5b6115f88282611a2c565b918261160357505090565b5f91825260016020526040909120611624916001600160a01b031690611b3f565b5090565b9091906001600160a01b031680156115a35760ff600c54168061195d575b80611956575b6116b2575b805f52600260205260405f2054838110611698576020845f94955f516020611c855f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f5260606040518381525f6020820152856040820152a1600954801580158061192b575b611843575b5050600b5480151580611830575b611700575b50611651565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461172981611140565b908160648501526001811690815f1461180d57506001146117c7575b508190602093604483015203815f6108005af1908115610acd575f9161178c575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f6116fa565b90506020813d6020116117bf575b816117a760209383611178565b810103126101c2575180151581036101c2575f611766565b3d915061179a565b600a5f90815291505f516020611c255f395f51905f525b8183106117f357505081016084016020611745565b8054608484880101528593506020909201916001016117de565b60ff191660848086019190915291151560051b8401909101915060209050611745565b5061183c600a54611140565b15156116f5565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1611897611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af16118ed611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f806116e7565b5060075460081c6001600160a01b03161515806116e257506008546001600160a01b031615156116e2565b505f61164c565b506001611646565b3d1561199f573d9067ffffffffffffffff821161119a5760405191611994601f8201601f191660200184611178565b82523d5f602084013e565b606090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b8054821015611ac1575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611b38578054600160401b81101561119a57611b25611b0f826001879401855584611aac565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f14611bfc575f19810181811161096b5782545f1981019190821161096b57818103611bc7575b50505080548015611bb3575f190190611b948282611aac565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b611be7611bd7611b0f9386611aac565b90549060031b1c92839286611aac565b90555f528360205260405f20555f8080611b7b565b505050505f9056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a83d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3eff6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda2646970667358221220021c275c88ac512ab73c3cb65428514ac9f3661e398de15f80690f5d8a85904964736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/ERC20WithNativeTransfers.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/ICS20TransferTester.json b/contracts/solidity/ICS20TransferTester.json index 9e51cb77f..5100815e3 100644 --- a/contracts/solidity/ICS20TransferTester.json +++ b/contracts/solidity/ICS20TransferTester.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ICS20TransferTester", "sourceName": "solidity/ICS20TransferTester.sol", "abi": [ @@ -210,8 +210,11 @@ "type": "receive" } ], - "bytecode": "0x6080806040523461001657610826908161001c8239f35b600080fdfe60806040815260c0604052600480361015610024575b5050361561002257600080fd5b005b60a0916000835260003560e01c8063339b204d14610319578381635627cd7d14610118575063c489744b146100595750610015565b346100f45780519182600319360112610113576001600160a01b038135818116949085900361010e5760243591821680920361010e57516370a0823160e01b81529182015291602090839060249082905afa918215610101578351926100c5575b602083835151908152f35b9091506020813d82116100f9575b816100e0602093836104c2565b810103126100f457602092505190386100ba565b825180fd5b3d91506100d3565b81515184513d90823e3d90fd5b855180fd5b835180fd5b828185346103145761012936610551565b8c515163a9059cbb60e01b81526001600160a01b03998a168c820190815260208082019a909a528d51949d959c999b969a8c9a9899989697939694958f95948c938593908490036040019284929091165af1809651916101ca976102e5575b506102a057506000805160206107d18339815191528d5151806101aa816106a6565b0390a15b8a8d5151998a98899863632535b960e01b8a5230948a01610736565b038189516108025af1801561029357917f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393916000805160206107d1833981519152969593610266575b5084519161022c8351948594855287518501906106f6565b918301520390a151516040808252600e908201526d34b1b999182fba3930b739b332b960911b606082015260016020820152608090a15180f35b61028590823d841161028c575b61027d81836104c2565b8101906106d6565b5087610214565b503d610273565b85515187513d90823e3d90fd5b156102c9576000805160206107d18339815191528d5151806102c181610676565b0390a16101ae565b6000805160206107d18339815191528d5151806102c1816106a6565b6103069192508a3d8c1161030d575b6102fe81836104c2565b81019061065e565b9038610188565b503d6102f4565b505180fd5b50346104bd5781908361036f61032e36610551565b95968c9e939a929b91959899949e515194858094819363a9059cbb60e01b835260209d8e98840160209093929193604081019460018060a01b031681520152565b9351930392906001600160a01b03165af19081156104b0578c5191610493575b501561045757849392916103dd91888a51519b6000805160206107d18339815191528d80829f6103be90610676565b0390a1898c51519e8f98899863632535b960e01b8a5230948a01610736565b03818a516108025af195861561044a577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641394959661042d575084519161022c8351948594855287518501906106f6565b61044390823d841161028c5761027d81836104c2565b5038610214565b84515188513d90823e3d90fd5b87515162461bcd60e51b8152808a018690526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6104aa9150863d881161030d576102fe81836104c2565b3861038f565b8951518d513d90823e3d90fd5b600080fd5b90601f8019910116810190811067ffffffffffffffff8211176104e457604052565b634e487b7160e01b600052604160045260246000fd5b81601f820112156104bd5780359067ffffffffffffffff82116104e4576040519261052f601f8401601f1916602001856104c2565b828452602083830101116104bd57816000926020809301838601378301015290565b906101606003198301126104bd576001600160a01b039160049190823584811681036104bd579360243590811681036104bd57926044359267ffffffffffffffff916064358381116104bd57846105a99183016104fa565b936084358481116104bd57816105c09184016104fa565b9360a4358181116104bd57826105d79185016104fa565b9360c4359360e4358381116104bd576105f48560409284016104fa565b946101031901126104bd576040519060408201908282108583111761064957506040526101043583811681036104bd5781526101243583811681036104bd576020820152916101443590811681036104bd5790565b604190634e487b7160e01b6000525260246000fd5b908160209103126104bd575180151581036104bd5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526000602060808401930152565b908160209103126104bd575167ffffffffffffffff811681036104bd5790565b919082519283825260005b848110610722575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610701565b95909461077761079a9461076960209b979561075c8d9a8c6101408091528d01906106f6565b908b82038b8d01526106f6565b9089820360408b01526106f6565b60608801939093526001600160a01b0316608087015285820360a08701526106f6565b9367ffffffffffffffff9281848093511660c087015201511660e08401521661010082015261012081830391015260008152019056fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220e3b797d81d6dda237d7831efb120a36c1b5eefb96ce60e657de14baae6c6a31764736f6c63430008140033", - "deployedBytecode": "0x60806040815260c0604052600480361015610024575b5050361561002257600080fd5b005b60a0916000835260003560e01c8063339b204d14610319578381635627cd7d14610118575063c489744b146100595750610015565b346100f45780519182600319360112610113576001600160a01b038135818116949085900361010e5760243591821680920361010e57516370a0823160e01b81529182015291602090839060249082905afa918215610101578351926100c5575b602083835151908152f35b9091506020813d82116100f9575b816100e0602093836104c2565b810103126100f457602092505190386100ba565b825180fd5b3d91506100d3565b81515184513d90823e3d90fd5b855180fd5b835180fd5b828185346103145761012936610551565b8c515163a9059cbb60e01b81526001600160a01b03998a168c820190815260208082019a909a528d51949d959c999b969a8c9a9899989697939694958f95948c938593908490036040019284929091165af1809651916101ca976102e5575b506102a057506000805160206107d18339815191528d5151806101aa816106a6565b0390a15b8a8d5151998a98899863632535b960e01b8a5230948a01610736565b038189516108025af1801561029357917f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393916000805160206107d1833981519152969593610266575b5084519161022c8351948594855287518501906106f6565b918301520390a151516040808252600e908201526d34b1b999182fba3930b739b332b960911b606082015260016020820152608090a15180f35b61028590823d841161028c575b61027d81836104c2565b8101906106d6565b5087610214565b503d610273565b85515187513d90823e3d90fd5b156102c9576000805160206107d18339815191528d5151806102c181610676565b0390a16101ae565b6000805160206107d18339815191528d5151806102c1816106a6565b6103069192508a3d8c1161030d575b6102fe81836104c2565b81019061065e565b9038610188565b503d6102f4565b505180fd5b50346104bd5781908361036f61032e36610551565b95968c9e939a929b91959899949e515194858094819363a9059cbb60e01b835260209d8e98840160209093929193604081019460018060a01b031681520152565b9351930392906001600160a01b03165af19081156104b0578c5191610493575b501561045757849392916103dd91888a51519b6000805160206107d18339815191528d80829f6103be90610676565b0390a1898c51519e8f98899863632535b960e01b8a5230948a01610736565b03818a516108025af195861561044a577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641394959661042d575084519161022c8351948594855287518501906106f6565b61044390823d841161028c5761027d81836104c2565b5038610214565b84515188513d90823e3d90fd5b87515162461bcd60e51b8152808a018690526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6104aa9150863d881161030d576102fe81836104c2565b3861038f565b8951518d513d90823e3d90fd5b600080fd5b90601f8019910116810190811067ffffffffffffffff8211176104e457604052565b634e487b7160e01b600052604160045260246000fd5b81601f820112156104bd5780359067ffffffffffffffff82116104e4576040519261052f601f8401601f1916602001856104c2565b828452602083830101116104bd57816000926020809301838601378301015290565b906101606003198301126104bd576001600160a01b039160049190823584811681036104bd579360243590811681036104bd57926044359267ffffffffffffffff916064358381116104bd57846105a99183016104fa565b936084358481116104bd57816105c09184016104fa565b9360a4358181116104bd57826105d79185016104fa565b9360c4359360e4358381116104bd576105f48560409284016104fa565b946101031901126104bd576040519060408201908282108583111761064957506040526101043583811681036104bd5781526101243583811681036104bd576020820152916101443590811681036104bd5790565b604190634e487b7160e01b6000525260246000fd5b908160209103126104bd575180151581036104bd5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526000602060808401930152565b908160209103126104bd575167ffffffffffffffff811681036104bd5790565b919082519283825260005b848110610722575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610701565b95909461077761079a9461076960209b979561075c8d9a8c6101408091528d01906106f6565b908b82038b8d01526106f6565b9089820360408b01526106f6565b60608801939093526001600160a01b0316608087015285820360a08701526106f6565b9367ffffffffffffffff9281848093511660c087015201511660e08401521661010082015261012081830391015260008152019056fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220e3b797d81d6dda237d7831efb120a36c1b5eefb96ce60e657de14baae6c6a31764736f6c63430008140033", + "bytecode": "0x6080806040523460155761073c908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063339b204d146102d25780635627cd7d146100f15763c489744b0361000e57346100da5760403660031901126100da576004356001600160a01b038116908190036100da576024356001600160a01b038116908190036100da576020906024604051809481936370a0823160e01b835260048301525afa80156100e6575f906100af575b602090604051908152f35b506020813d6020116100de575b816100c9602093836103c9565b810103126100da57602090516100a4565b5f80fd5b3d91506100bc565b6040513d5f823e3d90fd5b346100da5761019f60206101488161010836610453565b95929c96829b9294998e9d9296995f60405180968195829463a9059cbb60e01b84526004840160209093929193604081019460018060a01b031681520152565b03926001600160a01b03165af15f91816102a3575b5061026057505f5160206106e75f395f51905f526040518061017e816105c3565b0390a15b60405163632535b960e01b81529a8b978897309360048a01610635565b03815f6108025af19283156100e6577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393610233575b506101e5604051928392836106ca565b0390a15f5160206106e75f395f51905f526040518061022e819060408252600e60408301526d34b1b999182fba3930b739b332b960911b60608301526001602060808401930152565b0390a1005b6102549060203d602011610259575b61024c81836103c9565b8101906105f2565b6101d5565b503d610242565b15610288575f5160206106e75f395f51905f526040518061028081610593565b0390a1610182565b5f5160206106e75f395f51905f5260405180610280816105c3565b6102c49192508a3d8c116102cb575b6102bc81836103c9565b81019061057b565b908d61015d565b503d6102b2565b346100da5760206103276102e536610453565b60405163a9059cbb60e01b81526001600160a01b0390991660048a015260248901979097529199959890979196929593949391839182905f9082906044820190565b03926001600160a01b03165af19081156100e6575f916103aa575b501561036d5786956020948661019f935f5160206106e75f395f51905f526040518061017e81610593565b60405162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6103c3915060203d6020116102cb576102bc81836103c9565b88610342565b90601f801991011681019081106001600160401b038211176103ea57604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156100da578035906001600160401b0382116103ea5760405192610432601f8401601f1916602001856103c9565b828452602083830101116100da57815f926020809301838601378301015290565b6101606003198201126100da576004356001600160a01b03811681036100da57916024356001600160a01b03811681036100da5791604435916064356001600160401b0381116100da57826104aa916004016103fe565b916084356001600160401b0381116100da57816104c9916004016103fe565b9160a4356001600160401b0381116100da57826104e8916004016103fe565b9160c4359160e4356001600160401b0381116100da5761050d836040926004016103fe565b926101031901126100da57604051604081018181106001600160401b038211176103ea57604052610104356001600160401b03811681036100da578152610124356001600160401b03811681036100da57602082015290610144356001600160401b03811681036100da5790565b908160209103126100da575180151581036100da5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301525f602060808401930152565b908160209103126100da57516001600160401b03811681036100da5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9593602098946001600160401b039661067e88966106708d976106636106a1986101408f8181520190610611565b8d81038a8f015290610611565b908b820360408d0152610611565b60608a01939093526001600160a01b0316608089015287820360a0890152610611565b958281511660c087015201511660e0840152166101008201526101208183039101525f81520190565b9291906106e1602091604086526040860190610611565b93015256fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220e3106dc4de5b4d8b1ae5f10d4f67c4bb8026436e39b417524c519ba33ef304e164736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063339b204d146102d25780635627cd7d146100f15763c489744b0361000e57346100da5760403660031901126100da576004356001600160a01b038116908190036100da576024356001600160a01b038116908190036100da576020906024604051809481936370a0823160e01b835260048301525afa80156100e6575f906100af575b602090604051908152f35b506020813d6020116100de575b816100c9602093836103c9565b810103126100da57602090516100a4565b5f80fd5b3d91506100bc565b6040513d5f823e3d90fd5b346100da5761019f60206101488161010836610453565b95929c96829b9294998e9d9296995f60405180968195829463a9059cbb60e01b84526004840160209093929193604081019460018060a01b031681520152565b03926001600160a01b03165af15f91816102a3575b5061026057505f5160206106e75f395f51905f526040518061017e816105c3565b0390a15b60405163632535b960e01b81529a8b978897309360048a01610635565b03815f6108025af19283156100e6577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393610233575b506101e5604051928392836106ca565b0390a15f5160206106e75f395f51905f526040518061022e819060408252600e60408301526d34b1b999182fba3930b739b332b960911b60608301526001602060808401930152565b0390a1005b6102549060203d602011610259575b61024c81836103c9565b8101906105f2565b6101d5565b503d610242565b15610288575f5160206106e75f395f51905f526040518061028081610593565b0390a1610182565b5f5160206106e75f395f51905f5260405180610280816105c3565b6102c49192508a3d8c116102cb575b6102bc81836103c9565b81019061057b565b908d61015d565b503d6102b2565b346100da5760206103276102e536610453565b60405163a9059cbb60e01b81526001600160a01b0390991660048a015260248901979097529199959890979196929593949391839182905f9082906044820190565b03926001600160a01b03165af19081156100e6575f916103aa575b501561036d5786956020948661019f935f5160206106e75f395f51905f526040518061017e81610593565b60405162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6103c3915060203d6020116102cb576102bc81836103c9565b88610342565b90601f801991011681019081106001600160401b038211176103ea57604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156100da578035906001600160401b0382116103ea5760405192610432601f8401601f1916602001856103c9565b828452602083830101116100da57815f926020809301838601378301015290565b6101606003198201126100da576004356001600160a01b03811681036100da57916024356001600160a01b03811681036100da5791604435916064356001600160401b0381116100da57826104aa916004016103fe565b916084356001600160401b0381116100da57816104c9916004016103fe565b9160a4356001600160401b0381116100da57826104e8916004016103fe565b9160c4359160e4356001600160401b0381116100da5761050d836040926004016103fe565b926101031901126100da57604051604081018181106001600160401b038211176103ea57604052610104356001600160401b03811681036100da578152610124356001600160401b03811681036100da57602082015290610144356001600160401b03811681036100da5790565b908160209103126100da575180151581036100da5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301525f602060808401930152565b908160209103126100da57516001600160401b03811681036100da5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9593602098946001600160401b039661067e88966106708d976106636106a1986101408f8181520190610611565b8d81038a8f015290610611565b908b820360408d0152610611565b60608a01939093526001600160a01b0316608089015287820360a0890152610611565b958281511660c087015201511660e0840152166101008201526101208183039101525f81520190565b9291906106e1602091604086526040860190610611565b93015256fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220e3106dc4de5b4d8b1ae5f10d4f67c4bb8026436e39b417524c519ba33ef304e164736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/ICS20TransferTester.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/SequentialICS20Sender.json b/contracts/solidity/SequentialICS20Sender.json index 95270047f..3401b20e7 100644 --- a/contracts/solidity/SequentialICS20Sender.json +++ b/contracts/solidity/SequentialICS20Sender.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "SequentialICS20Sender", "sourceName": "solidity/SequentialICS20Sender.sol", "abi": [ @@ -161,8 +161,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001657610581908161001c8239f35b600080fdfe6040608081526004908136101561001557600080fd5b600090813560e01c806365ab4537146100d45763f8b2cb4f1461003757600080fd5b346100d057602092836003193601126100cc57836001600160a01b0361005b61038d565b169160248451809481936370a0823160e01b835230908301525afa9283156100c157809361008c575b505051908152f35b909192508382813d83116100ba575b6100a581836103da565b810103126100b7575051903880610084565b80fd5b503d61009b565b8251903d90823e3d90fd5b8280fd5b5080fd5b508290346100cc5760e03660031901126100cc576100f061038d565b67ffffffffffffffff91906024358381116103895761011290369086016103fc565b906044358481116103855761012a90369087016103fc565b906064358581116103815761014290369088016103fc565b9260843586811161037d5761015a90369089016103fc565b9560a43590811680910361037d5785516323b872dd60e01b8152338982015230602482015260c43560448201819052602098909490916001600160a01b039091169089816064818f865af1908115610373578c91610339575b5015610301578389969594938c9389938b519081528b888b8301527f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d91a18c8b516101fd816103a8565b60018152838b8201528c51948591848c8c63632535b960e01b9a8b8752309288880196610229976104b3565b03978a856108029a818a8d5af194610269956102e4575b508c519361024d856103a8565b600185528b8501528c519b8c9a8b998a988952309489016104b3565b03925af190816102b7575b506102b3575162461bcd60e51b815291820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b604482015260649150fd5b8380f35b6102d690843d86116102dd575b6102ce81836103da565b810190610453565b5085610274565b503d6102c4565b6102fa908c8d3d106102dd576102ce81836103da565b5038610240565b875162461bcd60e51b8152808b018a90526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90508981813d831161036c575b61035081836103da565b8101031261036857518015158103610368578c6101b3565b8b80fd5b503d610346565b89513d8e823e3d90fd5b8880fd5b8780fd5b8680fd5b8580fd5b600435906001600160a01b03821682036103a357565b600080fd5b6040810190811067ffffffffffffffff8211176103c457604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176103c457604052565b81601f820112156103a35780359067ffffffffffffffff82116103c45760405192610431601f8401601f1916602001856103da565b828452602083830101116103a357816000926020809301838601378301015290565b908160209103126103a3575167ffffffffffffffff811681036103a35790565b919082519283825260005b84811061049f575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520161047e565b949061051594936104e460209998946104d76104f294610140808c528b0190610473565b908982038c8b0152610473565b908782036040890152610473565b60608601939093526001600160a01b0316608085015283820360a0850152610473565b918367ffffffffffffffff918281511660c085015201511660e0820152600061010082015261012081830391015260008152019056fea26469706673582212205e4dfe16435cdbcf4051376984524968aeb3cd20e6678b3eee0c9c4e0db664b564736f6c63430008140033", - "deployedBytecode": "0x6040608081526004908136101561001557600080fd5b600090813560e01c806365ab4537146100d45763f8b2cb4f1461003757600080fd5b346100d057602092836003193601126100cc57836001600160a01b0361005b61038d565b169160248451809481936370a0823160e01b835230908301525afa9283156100c157809361008c575b505051908152f35b909192508382813d83116100ba575b6100a581836103da565b810103126100b7575051903880610084565b80fd5b503d61009b565b8251903d90823e3d90fd5b8280fd5b5080fd5b508290346100cc5760e03660031901126100cc576100f061038d565b67ffffffffffffffff91906024358381116103895761011290369086016103fc565b906044358481116103855761012a90369087016103fc565b906064358581116103815761014290369088016103fc565b9260843586811161037d5761015a90369089016103fc565b9560a43590811680910361037d5785516323b872dd60e01b8152338982015230602482015260c43560448201819052602098909490916001600160a01b039091169089816064818f865af1908115610373578c91610339575b5015610301578389969594938c9389938b519081528b888b8301527f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d91a18c8b516101fd816103a8565b60018152838b8201528c51948591848c8c63632535b960e01b9a8b8752309288880196610229976104b3565b03978a856108029a818a8d5af194610269956102e4575b508c519361024d856103a8565b600185528b8501528c519b8c9a8b998a988952309489016104b3565b03925af190816102b7575b506102b3575162461bcd60e51b815291820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b604482015260649150fd5b8380f35b6102d690843d86116102dd575b6102ce81836103da565b810190610453565b5085610274565b503d6102c4565b6102fa908c8d3d106102dd576102ce81836103da565b5038610240565b875162461bcd60e51b8152808b018a90526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90508981813d831161036c575b61035081836103da565b8101031261036857518015158103610368578c6101b3565b8b80fd5b503d610346565b89513d8e823e3d90fd5b8880fd5b8780fd5b8680fd5b8580fd5b600435906001600160a01b03821682036103a357565b600080fd5b6040810190811067ffffffffffffffff8211176103c457604052565b634e487b7160e01b600052604160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176103c457604052565b81601f820112156103a35780359067ffffffffffffffff82116103c45760405192610431601f8401601f1916602001856103da565b828452602083830101116103a357816000926020809301838601378301015290565b908160209103126103a3575167ffffffffffffffff811681036103a35790565b919082519283825260005b84811061049f575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520161047e565b949061051594936104e460209998946104d76104f294610140808c528b0190610473565b908982038c8b0152610473565b908782036040890152610473565b60608601939093526001600160a01b0316608085015283820360a0850152610473565b918367ffffffffffffffff918281511660c085015201511660e0820152600061010082015261012081830391015260008152019056fea26469706673582212205e4dfe16435cdbcf4051376984524968aeb3cd20e6678b3eee0c9c4e0db664b564736f6c63430008140033", + "bytecode": "0x6080806040523460155761054a908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c806365ab4537146100c85763f8b2cb4f1461002f575f80fd5b346100b15760203660031901126100b157602460206001600160a01b03610054610380565b16604051928380926370a0823160e01b82523060048301525afa80156100bd575f90610086575b602090604051908152f35b506020813d6020116100b5575b816100a0602093836103c5565b810103126100b1576020905161007b565b5f80fd5b3d9150610093565b6040513d5f823e3d90fd5b346100b15760e03660031901126100b1576100e1610380565b6024356001600160401b0381116100b1576101009036906004016103e6565b6044356001600160401b0381116100b15761011f9036906004016103e6565b6064356001600160401b0381116100b15761013e9036906004016103e6565b906084356001600160401b0381116100b15761015e9036906004016103e6565b60a4356001600160401b0381168091036100b1576040516323b872dd60e01b815233600482015230602482015260c43560448201819052966001600160a01b031692906020816064815f885af19081156100bd575f91610345575b501561030b576020957f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d604061026f9581519081528a8a820152a18487898861022f60405161020781610396565b60018152888582015287604051968795869563632535b960e01b875230928b6004890161047e565b03815f6108025af16102f0575b506040519261024a84610396565b600184528784015260405163632535b960e01b8152978896879630936004890161047e565b03815f6108025af190816102c3575b506102c15760405162461bcd60e51b815260206004820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b6044820152606490fd5b005b6102e49060203d6020116102e9575b6102dc81836103c5565b81019061043b565b61027e565b503d6102d2565b61030690883d8a116102e9576102dc81836103c5565b61023c565b60405162461bcd60e51b8152602060048201526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90506020813d602011610378575b81610360602093836103c5565b810103126100b1575180151581036100b157886101b9565b3d9150610353565b600435906001600160a01b03821682036100b157565b604081019081106001600160401b038211176103b157604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b038211176103b157604052565b81601f820112156100b1578035906001600160401b0382116103b1576040519261041a601f8401601f1916602001856103c5565b828452602083830101116100b157815f926020809301838601378301015290565b908160209103126100b157516001600160401b03811681036100b15790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9495602097966104c889956104ba6104eb966104ad6001600160401b039a976101408d526101408d019061045a565b908b82038a8d015261045a565b9089820360408b015261045a565b60608801939093526001600160a01b0316608087015285820360a087015261045a565b938281511660c085015201511660e08201525f6101008201526101208183039101525f8152019056fea26469706673582212203236623972e330707ffc91517054172b187da60032bec9cc2cc5572f4459efe264736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c806365ab4537146100c85763f8b2cb4f1461002f575f80fd5b346100b15760203660031901126100b157602460206001600160a01b03610054610380565b16604051928380926370a0823160e01b82523060048301525afa80156100bd575f90610086575b602090604051908152f35b506020813d6020116100b5575b816100a0602093836103c5565b810103126100b1576020905161007b565b5f80fd5b3d9150610093565b6040513d5f823e3d90fd5b346100b15760e03660031901126100b1576100e1610380565b6024356001600160401b0381116100b1576101009036906004016103e6565b6044356001600160401b0381116100b15761011f9036906004016103e6565b6064356001600160401b0381116100b15761013e9036906004016103e6565b906084356001600160401b0381116100b15761015e9036906004016103e6565b60a4356001600160401b0381168091036100b1576040516323b872dd60e01b815233600482015230602482015260c43560448201819052966001600160a01b031692906020816064815f885af19081156100bd575f91610345575b501561030b576020957f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d604061026f9581519081528a8a820152a18487898861022f60405161020781610396565b60018152888582015287604051968795869563632535b960e01b875230928b6004890161047e565b03815f6108025af16102f0575b506040519261024a84610396565b600184528784015260405163632535b960e01b8152978896879630936004890161047e565b03815f6108025af190816102c3575b506102c15760405162461bcd60e51b815260206004820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b6044820152606490fd5b005b6102e49060203d6020116102e9575b6102dc81836103c5565b81019061043b565b61027e565b503d6102d2565b61030690883d8a116102e9576102dc81836103c5565b61023c565b60405162461bcd60e51b8152602060048201526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90506020813d602011610378575b81610360602093836103c5565b810103126100b1575180151581036100b157886101b9565b3d9150610353565b600435906001600160a01b03821682036100b157565b604081019081106001600160401b038211176103b157604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b038211176103b157604052565b81601f820112156100b1578035906001600160401b0382116103b1576040519261041a601f8401601f1916602001856103c5565b828452602083830101116100b157815f926020809301838601378301015290565b908160209103126100b157516001600160401b03811681036100b15790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9495602097966104c889956104ba6104eb966104ad6001600160401b039a976101408d526101408d019061045a565b908b82038a8d015261045a565b9089820360408b015261045a565b60608801939093526001600160a01b0316608087015285820360a087015261045a565b938281511660c085015201511660e08201525f6101008201526101208183039101525f8152019056fea26469706673582212203236623972e330707ffc91517054172b187da60032bec9cc2cc5572f4459efe264736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/SequentialICS20Sender.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/SequentialOperationsTester.json b/contracts/solidity/SequentialOperationsTester.json index 1d7de80a9..603c9922d 100644 --- a/contracts/solidity/SequentialOperationsTester.json +++ b/contracts/solidity/SequentialOperationsTester.json @@ -267,11 +267,11 @@ "type": "receive" } ], - "bytecode": "0x6080806040523461001657610ab0908161001b8239f35b5f80fdfe6040608081526004908136101561001f575b5050361561001d575f80fd5b005b5f91823560e01c908163456503c8146105625781635b3d97d5146104a05781635c3f86c9146103875781636e348ad6146101ad5781636f9fb98a14610192578163c489744b146100e257508063e1f756c3146100a75763efd8be620361001157346100a35760203660031901126100a35760209061009b610692565b319051908152f35b5080fd5b50806003193601126100a3578180806020946100c1610692565b602435906001600160a01b03165af1906100d9610961565b50519015158152f35b919050346101785780600319360112610178576100fd610692565b916024356001600160a01b038181169182900361018e57602092602491855196879485936370a0823160e01b8552840152165afa918215610184578392610149575b6020838351908152f35b9091506020813d821161017c575b81610164602093836106ac565b81010312610178576020925051905f61013f565b8280fd5b3d9150610157565b81513d85823e3d90fd5b8580fd5b5050346100a357816003193601126100a35751478152602090f35b905034610178576101bd36610744565b865163a9059cbb60e01b8082526001600160a01b038681168984019081526020808201889052949a959995989497959490911693928b9291889082908190604001038186895af190811561037d579a610222899261025c9d8691610360575b50610800565b89519a5f80516020610a5b8339815191528c8061023f839f610844565b0390a18a516353266bbb60e01b81529c8d9283923089850161086f565b0381856108005af1998a15610356578798999a979697610339575b5089895180610285816108c9565b0390a16102b28951978896879586948552840160209093929193604081019460018060a01b031681520152565b03925af191821561032f57906102d192918692610302575b505061091c565b516040808252600990820152683a3930b739b332b91960b91b60608201526001602082015280608081015b0390a180f35b6103219250803d10610328575b61031981836106ac565b8101906107e8565b5f806102ca565b503d61030f565b83513d87823e3d90fd5b61034f90873d89116103285761031981836106ac565b505f610277565b88513d84823e3d90fd5b6103779150843d86116103285761031981836106ac565b5f61021c565b89513d85823e3d90fd5b91905061043783808080602061039c3661079e565b91936001600160a01b0390931692906103c48680808089895af16103be610961565b50610990565b8a519b5f80516020610a5b8339815191528d80829f6103e2906109dc565b0390a16104028c5194859384936353266bbb60e01b85523090850161086f565b0381876108005af19081610482575b5061046d5788885180610423816108f3565b0390a15b5af1610431610961565b50610a0e565b5160408082526010908201526f3730ba34bb32afba3930b739b332b91960811b60608201526001602082015280608081016102fc565b8888518061047a816108c9565b0390a1610427565b6104999060203d81116103285761031981836106ac565b505f610411565b9190508260206104af3661079e565b91936001600160a01b0390931692906104d18680808089895af16103be610961565b8651975f80516020610a5b83398151915289806104ee839c6109dc565b0390a161050e885194859384936353266bbb60e01b85523090850161086f565b0381876108005af1801561055857938093819382936104379761053a575b5088885180610423816108c9565b6105519060203d81116103285761031981836106ac565b505f61052c565b85513d86823e3d90fd5b9050346101785761057236610744565b865163a9059cbb60e01b8082526001600160a01b038681168984019081526020808201889052949a959995989497959490911693928b9291889082908190604001038186895af190811561037d579780999a9b6105db61061593839a9b87916103605750610800565b8b519c5f80516020610a5b8339815191528e819f6105f881610844565b0390a18c516353266bbb60e01b81529384928392308a850161086f565b0381866108005af19081610675575b506106605789895180610285816108f3565b6102b28951978896879586948552840160209093929193604081019460018060a01b031681520152565b8989518061066d816108c9565b0390a1610636565b61068b90883d8a116103285761031981836106ac565b505f610624565b600435906001600160a01b03821682036106a857565b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176106ce57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106ce57601f01601f191660200190565b81601f820112156106a857803590610715826106e2565b9261072360405194856106ac565b828452602083830101116106a857815f926020809301838601378301015290565b9060a06003198301126106a8576001600160a01b039160043583811681036106a8579260243590811681036106a85791604435916064359067ffffffffffffffff82116106a857610797916004016106fe565b9060843590565b60806003198201126106a8576004356001600160a01b03811681036106a85791602435916044359067ffffffffffffffff82116106a8576107e1916004016106fe565b9060643590565b908160209103126106a8575180151581036106a85790565b1561080757565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b9392919060018060a01b0316845260206060818601528151918260608701525f5b8381106108b5575050506080815f8260409488010152601f8019910116850101930152565b818101830151878201608001528201610890565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561092357565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d1561098b573d90610972826106e2565b9161098060405193846106ac565b82523d5f602084013e565b606090565b1561099757565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a1557565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212209828da0fad34acc382c5f6e2e016ef5f88bf747fdacc2b9ec5f0431514fe5aba64736f6c63430008140033", - "deployedBytecode": "0x6040608081526004908136101561001f575b5050361561001d575f80fd5b005b5f91823560e01c908163456503c8146105625781635b3d97d5146104a05781635c3f86c9146103875781636e348ad6146101ad5781636f9fb98a14610192578163c489744b146100e257508063e1f756c3146100a75763efd8be620361001157346100a35760203660031901126100a35760209061009b610692565b319051908152f35b5080fd5b50806003193601126100a3578180806020946100c1610692565b602435906001600160a01b03165af1906100d9610961565b50519015158152f35b919050346101785780600319360112610178576100fd610692565b916024356001600160a01b038181169182900361018e57602092602491855196879485936370a0823160e01b8552840152165afa918215610184578392610149575b6020838351908152f35b9091506020813d821161017c575b81610164602093836106ac565b81010312610178576020925051905f61013f565b8280fd5b3d9150610157565b81513d85823e3d90fd5b8580fd5b5050346100a357816003193601126100a35751478152602090f35b905034610178576101bd36610744565b865163a9059cbb60e01b8082526001600160a01b038681168984019081526020808201889052949a959995989497959490911693928b9291889082908190604001038186895af190811561037d579a610222899261025c9d8691610360575b50610800565b89519a5f80516020610a5b8339815191528c8061023f839f610844565b0390a18a516353266bbb60e01b81529c8d9283923089850161086f565b0381856108005af1998a15610356578798999a979697610339575b5089895180610285816108c9565b0390a16102b28951978896879586948552840160209093929193604081019460018060a01b031681520152565b03925af191821561032f57906102d192918692610302575b505061091c565b516040808252600990820152683a3930b739b332b91960b91b60608201526001602082015280608081015b0390a180f35b6103219250803d10610328575b61031981836106ac565b8101906107e8565b5f806102ca565b503d61030f565b83513d87823e3d90fd5b61034f90873d89116103285761031981836106ac565b505f610277565b88513d84823e3d90fd5b6103779150843d86116103285761031981836106ac565b5f61021c565b89513d85823e3d90fd5b91905061043783808080602061039c3661079e565b91936001600160a01b0390931692906103c48680808089895af16103be610961565b50610990565b8a519b5f80516020610a5b8339815191528d80829f6103e2906109dc565b0390a16104028c5194859384936353266bbb60e01b85523090850161086f565b0381876108005af19081610482575b5061046d5788885180610423816108f3565b0390a15b5af1610431610961565b50610a0e565b5160408082526010908201526f3730ba34bb32afba3930b739b332b91960811b60608201526001602082015280608081016102fc565b8888518061047a816108c9565b0390a1610427565b6104999060203d81116103285761031981836106ac565b505f610411565b9190508260206104af3661079e565b91936001600160a01b0390931692906104d18680808089895af16103be610961565b8651975f80516020610a5b83398151915289806104ee839c6109dc565b0390a161050e885194859384936353266bbb60e01b85523090850161086f565b0381876108005af1801561055857938093819382936104379761053a575b5088885180610423816108c9565b6105519060203d81116103285761031981836106ac565b505f61052c565b85513d86823e3d90fd5b9050346101785761057236610744565b865163a9059cbb60e01b8082526001600160a01b038681168984019081526020808201889052949a959995989497959490911693928b9291889082908190604001038186895af190811561037d579780999a9b6105db61061593839a9b87916103605750610800565b8b519c5f80516020610a5b8339815191528e819f6105f881610844565b0390a18c516353266bbb60e01b81529384928392308a850161086f565b0381866108005af19081610675575b506106605789895180610285816108f3565b6102b28951978896879586948552840160209093929193604081019460018060a01b031681520152565b8989518061066d816108c9565b0390a1610636565b61068b90883d8a116103285761031981836106ac565b505f610624565b600435906001600160a01b03821682036106a857565b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176106ce57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106ce57601f01601f191660200190565b81601f820112156106a857803590610715826106e2565b9261072360405194856106ac565b828452602083830101116106a857815f926020809301838601378301015290565b9060a06003198301126106a8576001600160a01b039160043583811681036106a8579260243590811681036106a85791604435916064359067ffffffffffffffff82116106a857610797916004016106fe565b9060843590565b60806003198201126106a8576004356001600160a01b03811681036106a85791602435916044359067ffffffffffffffff82116106a8576107e1916004016106fe565b9060643590565b908160209103126106a8575180151581036106a85790565b1561080757565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b9392919060018060a01b0316845260206060818601528151918260608701525f5b8381106108b5575050506080815f8260409488010152601f8019910116850101930152565b818101830151878201608001528201610890565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561092357565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d1561098b573d90610972826106e2565b9161098060405193846106ac565b82523d5f602084013e565b606090565b1561099757565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a1557565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212209828da0fad34acc382c5f6e2e016ef5f88bf747fdacc2b9ec5f0431514fe5aba64736f6c63430008140033", + "bytecode": "0x60808060405234601557610aca908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063456503c8146105805780635b3d97d5146104bd5780635c3f86c9146103765780636e348ad6146101a45780636f9fb98a14610189578063c489744b146100da578063e1f756c31461009e5763efd8be620361000e573461009a57602036600319011261009a5760206100916106c4565b31604051908152f35b5f80fd5b604036600319011261009a5760205f8080806100b86106c4565b602435906001600160a01b03165af16100cf61097b565b506040519015158152f35b3461009a57604036600319011261009a576100f36106c4565b6024356001600160a01b0381169081900361009a576040516370a0823160e01b8152600481019190915290602090829060249082906001600160a01b03165afa801561017e575f9061014b575b602090604051908152f35b506020813d602011610176575b81610165602093836106da565b8101031261009a5760209051610140565b3d9150610158565b6040513d5f823e3d90fd5b3461009a575f36600319011261009a57602047604051908152f35b3461009a576101b236610772565b60405163a9059cbb60e01b81526001600160a01b0385811660048301526024820185905290951691906020866044815f875af191821561017e5761020360209361023d985f91610359575b50610833565b5f516020610a755f395f51905f526040518061021e81610877565b0390a16040516353266bbb60e01b8152968792839230600485016108a2565b03815f6108005af192831561017e576102ae9460209461033e575b505f516020610a755f395f51905f5260405180610274816108e3565b0390a160405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b03925af1801561017e576102c9915f9161030f575b50610936565b5f516020610a755f395f51905f526040518061030a81906040825260096040830152683a3930b739b332b91960b91b60608301526001602060808401930152565b0390a1005b610331915060203d602011610337575b61032981836106da565b81019061081b565b826102c3565b503d61031f565b61035490853d87116103375761032981836106da565b610258565b6103709150853d87116103375761032981836106da565b896101fd565b6104355f80808060206103ef61038b366107d1565b91946001600160a01b03909316939291906103b5878080808a8a5af16103af61097b565b506109aa565b5f516020610a755f395f51905f52604051806103d0816109f6565b0390a16040516353266bbb60e01b8152938492839230600485016108a2565b0381876108005af190816104a0575b5015831461047d575f516020610a755f395f51905f52604051806104218161090d565b0390a15b5af161042f61097b565b50610a28565b5f516020610a755f395f51905f526040518061030a819060408252601060408301526f3730ba34bb32afba3930b739b332b91960811b60608301526001602060808401930152565b5f516020610a755f395f51905f5260405180610498816108e3565b0390a1610425565b6104b89060203d6020116103375761032981836106da565b6103fe565b61052860206104cb366107d1565b91936001600160a01b039093169291906104ee5f80808089895af16103af61097b565b5f516020610a755f395f51905f5260405180610509816109f6565b0390a16040516353266bbb60e01b8152958692839230600485016108a2565b03815f6108005af192831561017e575f80938193829361043597610563575b505f516020610a755f395f51905f5260405180610421816108e3565b61057b9060203d6020116103375761032981836106da565b610547565b3461009a5761058e36610772565b60405163a9059cbb60e01b81526001600160a01b03858116600483015260248201859052919592949290911691906020816044815f875af1801561017e576102ae966020966105e88893610603955f916106a75750610833565b5f516020610a755f395f51905f52604051806103d081610877565b03815f6108005af1908161068c575b50610669575f516020610a755f395f51905f52604051806102748161090d565b60405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b5f516020610a755f395f51905f5260405180610684816108e3565b0390a1610632565b6106a290863d88116103375761032981836106da565b610612565b6106be9150853d87116103375761032981836106da565b8b6101fd565b600435906001600160a01b038216820361009a57565b90601f8019910116810190811067ffffffffffffffff8211176106fc57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106fc57601f01601f191660200190565b81601f8201121561009a5780359061074382610710565b9261075160405194856106da565b8284526020838301011161009a57815f926020809301838601378301015290565b9060a060031983011261009a576004356001600160a01b038116810361009a57916024356001600160a01b038116810361009a5791604435916064359067ffffffffffffffff821161009a576107ca9160040161072c565b9060843590565b608060031982011261009a576004356001600160a01b038116810361009a5791602435916044359067ffffffffffffffff821161009a576108149160040161072c565b9060643590565b9081602091031261009a5751801515810361009a5790565b1561083a57565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561093d57565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d156109a5573d9061098c82610710565b9161099a60405193846106da565b82523d5f602084013e565b606090565b156109b157565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a2f57565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212206f0fe7b19e0db887c92d2d03cc0836fdd5b1786bdb94dfbd08ae4ef1af86d1a164736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063456503c8146105805780635b3d97d5146104bd5780635c3f86c9146103765780636e348ad6146101a45780636f9fb98a14610189578063c489744b146100da578063e1f756c31461009e5763efd8be620361000e573461009a57602036600319011261009a5760206100916106c4565b31604051908152f35b5f80fd5b604036600319011261009a5760205f8080806100b86106c4565b602435906001600160a01b03165af16100cf61097b565b506040519015158152f35b3461009a57604036600319011261009a576100f36106c4565b6024356001600160a01b0381169081900361009a576040516370a0823160e01b8152600481019190915290602090829060249082906001600160a01b03165afa801561017e575f9061014b575b602090604051908152f35b506020813d602011610176575b81610165602093836106da565b8101031261009a5760209051610140565b3d9150610158565b6040513d5f823e3d90fd5b3461009a575f36600319011261009a57602047604051908152f35b3461009a576101b236610772565b60405163a9059cbb60e01b81526001600160a01b0385811660048301526024820185905290951691906020866044815f875af191821561017e5761020360209361023d985f91610359575b50610833565b5f516020610a755f395f51905f526040518061021e81610877565b0390a16040516353266bbb60e01b8152968792839230600485016108a2565b03815f6108005af192831561017e576102ae9460209461033e575b505f516020610a755f395f51905f5260405180610274816108e3565b0390a160405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b03925af1801561017e576102c9915f9161030f575b50610936565b5f516020610a755f395f51905f526040518061030a81906040825260096040830152683a3930b739b332b91960b91b60608301526001602060808401930152565b0390a1005b610331915060203d602011610337575b61032981836106da565b81019061081b565b826102c3565b503d61031f565b61035490853d87116103375761032981836106da565b610258565b6103709150853d87116103375761032981836106da565b896101fd565b6104355f80808060206103ef61038b366107d1565b91946001600160a01b03909316939291906103b5878080808a8a5af16103af61097b565b506109aa565b5f516020610a755f395f51905f52604051806103d0816109f6565b0390a16040516353266bbb60e01b8152938492839230600485016108a2565b0381876108005af190816104a0575b5015831461047d575f516020610a755f395f51905f52604051806104218161090d565b0390a15b5af161042f61097b565b50610a28565b5f516020610a755f395f51905f526040518061030a819060408252601060408301526f3730ba34bb32afba3930b739b332b91960811b60608301526001602060808401930152565b5f516020610a755f395f51905f5260405180610498816108e3565b0390a1610425565b6104b89060203d6020116103375761032981836106da565b6103fe565b61052860206104cb366107d1565b91936001600160a01b039093169291906104ee5f80808089895af16103af61097b565b5f516020610a755f395f51905f5260405180610509816109f6565b0390a16040516353266bbb60e01b8152958692839230600485016108a2565b03815f6108005af192831561017e575f80938193829361043597610563575b505f516020610a755f395f51905f5260405180610421816108e3565b61057b9060203d6020116103375761032981836106da565b610547565b3461009a5761058e36610772565b60405163a9059cbb60e01b81526001600160a01b03858116600483015260248201859052919592949290911691906020816044815f875af1801561017e576102ae966020966105e88893610603955f916106a75750610833565b5f516020610a755f395f51905f52604051806103d081610877565b03815f6108005af1908161068c575b50610669575f516020610a755f395f51905f52604051806102748161090d565b60405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b5f516020610a755f395f51905f5260405180610684816108e3565b0390a1610632565b6106a290863d88116103375761032981836106da565b610612565b6106be9150853d87116103375761032981836106da565b8b6101fd565b600435906001600160a01b038216820361009a57565b90601f8019910116810190811067ffffffffffffffff8211176106fc57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106fc57601f01601f191660200190565b81601f8201121561009a5780359061074382610710565b9261075160405194856106da565b8284526020838301011161009a57815f926020809301838601378301015290565b9060a060031983011261009a576004356001600160a01b038116810361009a57916024356001600160a01b038116810361009a5791604435916064359067ffffffffffffffff821161009a576107ca9160040161072c565b9060843590565b608060031982011261009a576004356001600160a01b038116810361009a5791602435916044359067ffffffffffffffff821161009a576108149160040161072c565b9060643590565b9081602091031261009a5751801515810361009a5790565b1561083a57565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561093d57565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d156109a5573d9061098c82610710565b9161099a60405193846106da565b82523d5f602084013e565b606090565b156109b157565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a2f57565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212206f0fe7b19e0db887c92d2d03cc0836fdd5b1786bdb94dfbd08ae4ef1af86d1a164736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/SequentialOperationsTester.sol", - "buildInfoId": "solc-0_8_20-a1f91ec3b065d50730c0367f861277c93634d90c" + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" } \ No newline at end of file diff --git a/contracts/solidity/StaticCallTester.json b/contracts/solidity/StaticCallTester.json index 541a4da77..67b363154 100644 --- a/contracts/solidity/StaticCallTester.json +++ b/contracts/solidity/StaticCallTester.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "StaticCallTester", "sourceName": "solidity/StaticCallTester.sol", "abi": [ @@ -165,8 +165,11 @@ "type": "function" } ], - "bytecode": "0x60803461007457601f61041838819003918201601f19168301916001600160401b038311848410176100795780849260209460405283398101031261007457516001600160a01b0381169081900361007457600080546001600160a01b03191691909117905560405161038890816100908239f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe604060808152600436101561001357600080fd5b600090813560e01c80631cfa8b101461017d5780634d751fbf146101a95780634ebbe1cf146101a95780635741229c1461018257806361bc221a1461015f578063677d4eca1461017d5780638ada066e1461015f578063dfe9a695146100f55763eae6bdeb1461008257600080fd5b346100f157816003193601126100f1578051634ebbe1cf60e01b6020820190815260048252929080830167ffffffffffffffff8111828210176100dd57835251602093829190305afa906100d4610312565b50519015158152f35b634e487b7160e01b83526041600452602483fd5b5080fd5b50346100f1578160209261015161014361010e366101ae565b86516301cfa8b160e41b8982019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f1981018352826102da565b5190305afa906100d4610312565b50346100f157816003193601126100f1576020906001549051908152f35b6101d9565b50346100f157816003193601126100f157905490516001600160a01b039091168152602090f35b610295565b60409060031901126101d4576004356001600160a01b03811681036101d4579060243590565b600080fd5b346101d457602061022d6101ec366101ae565b6000805460405163a9059cbb60e01b81526001600160a01b039485166004820152602481019390935290949193919284929116908290869082906044820190565b03925af190811561028a57829161024c575b6020826040519015158152f35b90506020813d8211610282575b81610266602093836102da565b810103126100f1575180151581036100f157602091503861023f565b3d9150610259565b6040513d84823e3d90fd5b346101d45760003660031901126101d45760015460001981146102c45760016020910180600155604051908152f35b634e487b7160e01b600052601160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176102fc57604052565b634e487b7160e01b600052604160045260246000fd5b3d1561034d573d9067ffffffffffffffff82116102fc5760405191610341601f8201601f1916602001846102da565b82523d6000602084013e565b60609056fea2646970667358221220e77e9a7f006cac4b937c19161fc0535b14d5ddad274962e4884498f23ba333cc64736f6c63430008140033", - "deployedBytecode": "0x604060808152600436101561001357600080fd5b600090813560e01c80631cfa8b101461017d5780634d751fbf146101a95780634ebbe1cf146101a95780635741229c1461018257806361bc221a1461015f578063677d4eca1461017d5780638ada066e1461015f578063dfe9a695146100f55763eae6bdeb1461008257600080fd5b346100f157816003193601126100f1578051634ebbe1cf60e01b6020820190815260048252929080830167ffffffffffffffff8111828210176100dd57835251602093829190305afa906100d4610312565b50519015158152f35b634e487b7160e01b83526041600452602483fd5b5080fd5b50346100f1578160209261015161014361010e366101ae565b86516301cfa8b160e41b8982019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f1981018352826102da565b5190305afa906100d4610312565b50346100f157816003193601126100f1576020906001549051908152f35b6101d9565b50346100f157816003193601126100f157905490516001600160a01b039091168152602090f35b610295565b60409060031901126101d4576004356001600160a01b03811681036101d4579060243590565b600080fd5b346101d457602061022d6101ec366101ae565b6000805460405163a9059cbb60e01b81526001600160a01b039485166004820152602481019390935290949193919284929116908290869082906044820190565b03925af190811561028a57829161024c575b6020826040519015158152f35b90506020813d8211610282575b81610266602093836102da565b810103126100f1575180151581036100f157602091503861023f565b3d9150610259565b6040513d84823e3d90fd5b346101d45760003660031901126101d45760015460001981146102c45760016020910180600155604051908152f35b634e487b7160e01b600052601160045260246000fd5b90601f8019910116810190811067ffffffffffffffff8211176102fc57604052565b634e487b7160e01b600052604160045260246000fd5b3d1561034d573d9067ffffffffffffffff82116102fc5760405191610341601f8201601f1916602001846102da565b82523d6000602084013e565b60609056fea2646970667358221220e77e9a7f006cac4b937c19161fc0535b14d5ddad274962e4884498f23ba333cc64736f6c63430008140033", + "bytecode": "0x608034606f57601f6103c438819003918201601f19168301916001600160401b03831184841017607357808492602094604052833981010312606f57516001600160a01b03811690819003606f575f80546001600160a01b03191691909117905560405161033c90816100888239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80631cfa8b10146101455780634d751fbf146101715780634ebbe1cf146101715780635741229c1461014a57806361bc221a14610128578063677d4eca146101455780638ada066e14610128578063dfe9a695146100cc5763eae6bdeb1461007c575f80fd5b346100c8575f3660031901126100c85760205f8060405183810190634ebbe1cf60e01b8252600481526100b0602482610291565b5190305afa6100bd6102c7565b506040519015158152f35b5f80fd5b346100c85760205f806100b061011a6100e436610176565b6040516301cfa8b160e41b8882019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f198101835282610291565b346100c8575f3660031901126100c8576020600154604051908152f35b61019c565b346100c8575f3660031901126100c8575f546040516001600160a01b039091168152602090f35b610250565b60409060031901126100c8576004356001600160a01b03811681036100c8579060243590565b346100c8576101eb60206101af36610176565b5f805460405163a9059cbb60e01b81526001600160a01b0394851660048201526024810193909352919485939092169183919082906044820190565b03925af18015610245575f90610209575b6040519015158152602090f35b506020813d60201161023d575b8161022360209383610291565b810103126100c8575180151581036100c8576020906101fc565b3d9150610216565b6040513d5f823e3d90fd5b346100c8575f3660031901126100c8576001545f19811461027d5760016020910180600155604051908152f35b634e487b7160e01b5f52601160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b357604052565b634e487b7160e01b5f52604160045260245ffd5b3d15610301573d9067ffffffffffffffff82116102b357604051916102f6601f8201601f191660200184610291565b82523d5f602084013e565b60609056fea2646970667358221220d1130315c4f213c3e4e687388ce19556922312ebae3c44ef78b223ef6ddbc15264736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631cfa8b10146101455780634d751fbf146101715780634ebbe1cf146101715780635741229c1461014a57806361bc221a14610128578063677d4eca146101455780638ada066e14610128578063dfe9a695146100cc5763eae6bdeb1461007c575f80fd5b346100c8575f3660031901126100c85760205f8060405183810190634ebbe1cf60e01b8252600481526100b0602482610291565b5190305afa6100bd6102c7565b506040519015158152f35b5f80fd5b346100c85760205f806100b061011a6100e436610176565b6040516301cfa8b160e41b8882019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f198101835282610291565b346100c8575f3660031901126100c8576020600154604051908152f35b61019c565b346100c8575f3660031901126100c8575f546040516001600160a01b039091168152602090f35b610250565b60409060031901126100c8576004356001600160a01b03811681036100c8579060243590565b346100c8576101eb60206101af36610176565b5f805460405163a9059cbb60e01b81526001600160a01b0394851660048201526024810193909352919485939092169183919082906044820190565b03925af18015610245575f90610209575b6040519015158152602090f35b506020813d60201161023d575b8161022360209383610291565b810103126100c8575180151581036100c8576020906101fc565b3d9150610216565b6040513d5f823e3d90fd5b346100c8575f3660031901126100c8576001545f19811461027d5760016020910180600155604051908152f35b634e487b7160e01b5f52601160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b357604052565b634e487b7160e01b5f52604160045260245ffd5b3d15610301573d9067ffffffffffffffff82116102b357604051916102f6601f8201601f191660200184610291565b82523d5f602084013e565b60609056fea2646970667358221220d1130315c4f213c3e4e687388ce19556922312ebae3c44ef78b223ef6ddbc15264736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/StaticCallTester.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/contracts/solidity/WATOM.json b/contracts/solidity/WATOM.json index 10fef632c..a2e7df2b7 100644 --- a/contracts/solidity/WATOM.json +++ b/contracts/solidity/WATOM.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "WATOM", "sourceName": "solidity/WATOM.sol", "abi": [ @@ -173,8 +173,11 @@ "type": "receive" } ], - "bytecode": "0x6080604052346100cb57600061001581546100d0565b601f81116100a1575b5060186b577261707065642041746f6d60a01b01815560019061004182546100d0565b90601f8211610075575b600a645741544f4d60d81b0183556002805460ff191660121790556040516105c1908161010b8239f35b82815282601f60208320930160051c8301925b83811061009657505061004b565b828155018390610088565b818052601f60208320910160051c8101905b8181106100c0575061001e565b8281556001016100b3565b600080fd5b90600182811c92168015610100575b60208310146100ea57565b634e487b7160e01b600052602260045260246000fd5b91607f16916100df56fe60806040908082526004918236101561002b575b505050361561002157600080fd5b6100296104f2565b005b600092833560e01c92836306fdde0314610399575082632e1a7d4d14610287578263313ce5671461026557826370a082311461022d57826395d89b411461014857508163a9059cbb146100a3575063d0e30db01461008a578080610013565b806003193601126100a05761009d6104f2565b80f35b80fd5b9050346101445780600319360112610144576020916100c06104b4565b8260243591338452600386526100db8383862054101561053b565b338452600386528184206100f084825461057e565b90556001600160a01b031680845260038652922080546101119083906104cf565b905582519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef843392a35160018152f35b5080fd5b91503461022957826003193601126102295780519183600180549182821c92828116801561021f575b602095868610821461020c57508488529081156101ea57506001146101b0575b6101ac86866101a2828b0383610433565b519182918261046b565b0390f35b9295508083528583205b8284106101d757505050826101ac946101a2928201019438610191565b80548685018801529286019281016101ba565b60ff191687860152505050151560051b83010192506101a2826101ac38610191565b634e487b7160e01b845260229052602483fd5b93607f1693610171565b8280fd5b8382346101445760203660031901126101445760209181906001600160a01b036102556104b4565b1681526003845220549051908152f35b83823461014457816003193601126101445760209060ff600254169051908152f35b915034610229576020908160031936011261039557823592338552600383526102b58483872054101561053b565b338552600383528185206102ca85825461057e565b90558480808087335af13d15610390573d67ffffffffffffffff811161037d57835190610300601f8201601f1916870183610433565b815286853d92013e5b1561033c5750907f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6591519283523392a280f35b82606492519162461bcd60e51b8352820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152fd5b634e487b7160e01b875260418352602487fd5b610309565b8380fd5b9250346103955783600319360112610395578354600181811c9186908281168015610429575b602095868610821461020c57508488529081156101ea57506001146103ef576101ac86866101a2828b0383610433565b8080949750528583205b82841061041657505050826101ac946101a2928201019438610191565b80548685018801529286019281016103f9565b93607f16936103bf565b90601f8019910116810190811067ffffffffffffffff82111761045557604052565b634e487b7160e01b600052604160045260246000fd5b6020808252825181830181905290939260005b8281106104a057505060409293506000838284010152601f8019910116010190565b81810186015184820160400152850161047e565b600435906001600160a01b03821682036104ca57565b600080fd5b919082018092116104dc57565b634e487b7160e01b600052601160045260246000fd5b336000526003602052604060002061050b3482546104cf565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a2565b1561054257565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b919082039182116104dc5756fea26469706673582212201392bc3199ab613bc84b097477ac2e199bb1c5bc21a129f158f3f057cb757d7064736f6c63430008140033", - "deployedBytecode": "0x60806040908082526004918236101561002b575b505050361561002157600080fd5b6100296104f2565b005b600092833560e01c92836306fdde0314610399575082632e1a7d4d14610287578263313ce5671461026557826370a082311461022d57826395d89b411461014857508163a9059cbb146100a3575063d0e30db01461008a578080610013565b806003193601126100a05761009d6104f2565b80f35b80fd5b9050346101445780600319360112610144576020916100c06104b4565b8260243591338452600386526100db8383862054101561053b565b338452600386528184206100f084825461057e565b90556001600160a01b031680845260038652922080546101119083906104cf565b905582519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef843392a35160018152f35b5080fd5b91503461022957826003193601126102295780519183600180549182821c92828116801561021f575b602095868610821461020c57508488529081156101ea57506001146101b0575b6101ac86866101a2828b0383610433565b519182918261046b565b0390f35b9295508083528583205b8284106101d757505050826101ac946101a2928201019438610191565b80548685018801529286019281016101ba565b60ff191687860152505050151560051b83010192506101a2826101ac38610191565b634e487b7160e01b845260229052602483fd5b93607f1693610171565b8280fd5b8382346101445760203660031901126101445760209181906001600160a01b036102556104b4565b1681526003845220549051908152f35b83823461014457816003193601126101445760209060ff600254169051908152f35b915034610229576020908160031936011261039557823592338552600383526102b58483872054101561053b565b338552600383528185206102ca85825461057e565b90558480808087335af13d15610390573d67ffffffffffffffff811161037d57835190610300601f8201601f1916870183610433565b815286853d92013e5b1561033c5750907f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6591519283523392a280f35b82606492519162461bcd60e51b8352820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152fd5b634e487b7160e01b875260418352602487fd5b610309565b8380fd5b9250346103955783600319360112610395578354600181811c9186908281168015610429575b602095868610821461020c57508488529081156101ea57506001146103ef576101ac86866101a2828b0383610433565b8080949750528583205b82841061041657505050826101ac946101a2928201019438610191565b80548685018801529286019281016103f9565b93607f16936103bf565b90601f8019910116810190811067ffffffffffffffff82111761045557604052565b634e487b7160e01b600052604160045260246000fd5b6020808252825181830181905290939260005b8281106104a057505060409293506000838284010152601f8019910116010190565b81810186015184820160400152850161047e565b600435906001600160a01b03821682036104ca57565b600080fd5b919082018092116104dc57565b634e487b7160e01b600052601160045260246000fd5b336000526003602052604060002061050b3482546104cf565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a2565b1561054257565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b919082039182116104dc5756fea26469706673582212201392bc3199ab613bc84b097477ac2e199bb1c5bc21a129f158f3f057cb757d7064736f6c63430008140033", + "bytecode": "0x60806040523461010f576100135f54610113565b601f81116100c8575b507f577261707065642041746f6d00000000000000000000000000000000000000185f5560015461004c90610113565b601f8111610080575b600a645741544f4d60d81b016001556002805460ff191660121790556040516105ab908161014c8239f35b60015f52601f0160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6908101905b8181106100bd5750610055565b5f81556001016100b0565b5f8052601f0160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563908101905b818110610104575061001c565b5f81556001016100f7565b5f80fd5b90600182811c92168015610141575b602083101461012d57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161012256fe60806040526004361015610022575b3615610018575f80fd5b61002061052e565b005b5f3560e01c806306fdde03146103a35780632e1a7d4d1461028d578063313ce5671461026d57806370a082311461023557806395d89b4114610131578063a9059cbb1461008a5763d0e30db00361000e575f3660031901126100865761002061052e565b5f80fd5b34610086576040366003190112610086576100a36104a7565b60243590335f5260036020526100bf8260405f205410156104bd565b335f52600360205260405f206100d6838254610500565b905560018060a01b031690815f52600360205260405f206100f8828254610521565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610086575f366003190112610086576040515f6001548060011c9060018116801561022b575b602083108114610217578285529081156101f35750600114610195575b610191836101858185038261045b565b6040519182918261047d565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b8082106101d957509091508101602001610185610175565b9192600181602092548385880101520191019092916101c1565b60ff191660208086019190915291151560051b840190910191506101859050610175565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610158565b34610086576020366003190112610086576001600160a01b036102566104a7565b165f526003602052602060405f2054604051908152f35b34610086575f36600319011261008657602060ff60025416604051908152f35b3461008657602036600319011261008657600435335f5260036020526102b98160405f205410156104bd565b335f52600360205260405f206102d0828254610500565b90555f80808084335af13d1561039e573d67ffffffffffffffff811161038a5760405190610308601f8201601f19166020018361045b565b81525f60203d92013e5b15610345576040519081527f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6560203392a2005b60405162461bcd60e51b815260206004820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b610312565b34610086575f366003190112610086576040515f5f548060011c90600181168015610451575b602083108114610217578285529081156101f357506001146103f557610191836101858185038261045b565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061043757509091508101602001610185610175565b91926001816020925483858801015201910190929161041f565b91607f16916103c9565b90601f8019910116810190811067ffffffffffffffff82111761038a57604052565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361008657565b156104c457565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161050d57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161050d57565b335f52600360205260405f20610545348254610521565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a256fea2646970667358221220cffe89ffb3b788be8a1b111b4a554c880c037b094c120e80b3d7d982103b362464736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610022575b3615610018575f80fd5b61002061052e565b005b5f3560e01c806306fdde03146103a35780632e1a7d4d1461028d578063313ce5671461026d57806370a082311461023557806395d89b4114610131578063a9059cbb1461008a5763d0e30db00361000e575f3660031901126100865761002061052e565b5f80fd5b34610086576040366003190112610086576100a36104a7565b60243590335f5260036020526100bf8260405f205410156104bd565b335f52600360205260405f206100d6838254610500565b905560018060a01b031690815f52600360205260405f206100f8828254610521565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610086575f366003190112610086576040515f6001548060011c9060018116801561022b575b602083108114610217578285529081156101f35750600114610195575b610191836101858185038261045b565b6040519182918261047d565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b8082106101d957509091508101602001610185610175565b9192600181602092548385880101520191019092916101c1565b60ff191660208086019190915291151560051b840190910191506101859050610175565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610158565b34610086576020366003190112610086576001600160a01b036102566104a7565b165f526003602052602060405f2054604051908152f35b34610086575f36600319011261008657602060ff60025416604051908152f35b3461008657602036600319011261008657600435335f5260036020526102b98160405f205410156104bd565b335f52600360205260405f206102d0828254610500565b90555f80808084335af13d1561039e573d67ffffffffffffffff811161038a5760405190610308601f8201601f19166020018361045b565b81525f60203d92013e5b15610345576040519081527f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6560203392a2005b60405162461bcd60e51b815260206004820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b610312565b34610086575f366003190112610086576040515f5f548060011c90600181168015610451575b602083108114610217578285529081156101f357506001146103f557610191836101858185038261045b565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061043757509091508101602001610185610175565b91926001816020925483858801015201910190929161041f565b91607f16916103c9565b90601f8019910116810190811067ffffffffffffffff82111761038a57604052565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361008657565b156104c457565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161050d57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161050d57565b335f52600360205260405f20610545348254610521565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a256fea2646970667358221220cffe89ffb3b788be8a1b111b4a554c880c037b094c120e80b3d7d982103b362464736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/WATOM.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/eips/testdata/Counter.json b/eips/testdata/Counter.json index 9b9607864..624d46a7a 100644 --- a/eips/testdata/Counter.json +++ b/eips/testdata/Counter.json @@ -1,7 +1,7 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "Counter", - "sourceName": "solidity/evmd/eips/testdata/Counter.sol", + "sourceName": "solidity/eips/testdata/Counter.sol", "abi": [ { "inputs": [], @@ -31,8 +31,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001a57600160005560e190816100208239f35b600080fdfe60806040526004361015601157600080fd5b6000803560e01c80632baeceb714608c57806361bc221a1460715763d09de08a14603a57600080fd5b34606e5780600319360112606e5780546000198114605a57600101815580f35b634e487b7160e01b82526011600452602482fd5b80fd5b5034606e5780600319360112606e5760209054604051908152f35b5034606e5780600319360112606e5780548015605a5760001901815580f3fea26469706673582212202060735f33efd8beff8de6826d5bb836375daa8720f3aab6ae7d0e6280ecf05964736f6c63430008140033", - "deployedBytecode": "0x60806040526004361015601157600080fd5b6000803560e01c80632baeceb714608c57806361bc221a1460715763d09de08a14603a57600080fd5b34606e5780600319360112606e5780546000198114605a57600101815580f35b634e487b7160e01b82526011600452602482fd5b80fd5b5034606e5780600319360112606e5760209054604051908152f35b5034606e5780600319360112606e5780548015605a5760001901815580f3fea26469706673582212202060735f33efd8beff8de6826d5bb836375daa8720f3aab6ae7d0e6280ecf05964736f6c63430008140033", + "bytecode": "0x6080806040523460175760015f5560d89081601c8239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220856e134f55f380b09c0fe1fc9d2a14bb14f8410f946e966d36e7c017e828ba2664736f6c634300081c0033", + "deployedBytecode": "0x608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220856e134f55f380b09c0fe1fc9d2a14bb14f8410f946e966d36e7c017e828ba2664736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/eips/testdata/Counter.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/eips/testdata/CounterFactory.json b/eips/testdata/CounterFactory.json index 2e0b0ca31..3988c0924 100644 --- a/eips/testdata/CounterFactory.json +++ b/eips/testdata/CounterFactory.json @@ -1,7 +1,7 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "Counterfactory", - "sourceName": "solidity/evmd/eips/testdata/CounterFactory.sol", + "sourceName": "solidity/eips/testdata/CounterFactory.sol", "abi": [ { "inputs": [], @@ -49,8 +49,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234610085576101018181016001600160401b0381118382101761006f5782916102cf833903906000f0801561006357600080546001600160a01b0319166001600160a01b0392909216919091179055604051610244908161008b8239f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b600080fdfe60806040818152600436101561001457600080fd5b600091823560e01c9081635b34b966146101a55750806372142b89146100e7578063aef38e72146100bc5763f5c5ad831461004e57600080fd5b8190346100b957816003193601126100b95781546001600160a01b031690813b156100b5578280926004835180958193632baeceb760e01b83525af19081156100ac57506100995750f35b6100a2906101fa565b6100a95780f35b80fd5b513d84823e3d90fd5b5050fd5b50fd5b50346100e357816003193601126100e357905490516001600160a01b039091168152602090f35b5080fd5b50346100e357816003193601126100e357815481516330de110d60e11b81529190602090839060049082906001600160a01b03165afa91821561019b578392610135575b6020838351908152f35b90915060203d8111610194575b601f8101601f1916820167ffffffffffffffff81118382101761017e57602091839185528101031261017a576020925051903861012b565b8280fd5b634e487b7160e01b600052604160045260246000fd5b503d610142565b81513d85823e3d90fd5b9190503461017a578260031936011261017a57825483906001600160a01b0316803b156100e35760048483819363684ef04560e11b83525af19081156100ac57506101ee575080f35b6101f7906101fa565b80f35b67ffffffffffffffff811161017e5760405256fea2646970667358221220a54e617d68b83f8da207d03f3e2a6168921e2f16fe65e0f3a363ec9a95228b8b64736f6c634300081400336080806040523461001a57600160005560e190816100208239f35b600080fdfe60806040526004361015601157600080fd5b6000803560e01c80632baeceb714608c57806361bc221a1460715763d09de08a14603a57600080fd5b34606e5780600319360112606e5780546000198114605a57600101815580f35b634e487b7160e01b82526011600452602482fd5b80fd5b5034606e5780600319360112606e5760209054604051908152f35b5034606e5780600319360112606e5780548015605a5760001901815580f3fea26469706673582212202060735f33efd8beff8de6826d5bb836375daa8720f3aab6ae7d0e6280ecf05964736f6c63430008140033", - "deployedBytecode": "0x60806040818152600436101561001457600080fd5b600091823560e01c9081635b34b966146101a55750806372142b89146100e7578063aef38e72146100bc5763f5c5ad831461004e57600080fd5b8190346100b957816003193601126100b95781546001600160a01b031690813b156100b5578280926004835180958193632baeceb760e01b83525af19081156100ac57506100995750f35b6100a2906101fa565b6100a95780f35b80fd5b513d84823e3d90fd5b5050fd5b50fd5b50346100e357816003193601126100e357905490516001600160a01b039091168152602090f35b5080fd5b50346100e357816003193601126100e357815481516330de110d60e11b81529190602090839060049082906001600160a01b03165afa91821561019b578392610135575b6020838351908152f35b90915060203d8111610194575b601f8101601f1916820167ffffffffffffffff81118382101761017e57602091839185528101031261017a576020925051903861012b565b8280fd5b634e487b7160e01b600052604160045260246000fd5b503d610142565b81513d85823e3d90fd5b9190503461017a578260031936011261017a57825483906001600160a01b0316803b156100e35760048483819363684ef04560e11b83525af19081156100ac57506101ee575080f35b6101f7906101fa565b80f35b67ffffffffffffffff811161017e5760405256fea2646970667358221220a54e617d68b83f8da207d03f3e2a6168921e2f16fe65e0f3a363ec9a95228b8b64736f6c63430008140033", + "bytecode": "0x60808060405234607c5760f48181016001600160401b0381118382101760685782916102b4833903905ff08015605d575f80546001600160a01b0319166001600160a01b039290921691909117905560405161023390816100818239f35b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081635b34b966146101655750806372142b89146100dc578063aef38e72146100b55763f5c5ad831461004a575f80fd5b346100a457806003193601126100a457805481906001600160a01b0316803b156100b257818091600460405180948193632baeceb760e01b83525af180156100a7576100935750f35b8161009d916101c7565b6100a45780f35b80fd5b6040513d84823e3d90fd5b50fd5b50346100a457806003193601126100a457546040516001600160a01b039091168152602090f35b50346100a457806003193601126100a45780546040516330de110d60e11b815290602090829060049082906001600160a01b03165afa9081156100a757829161012b575b602082604051908152f35b90506020813d60201161015d575b81610146602093836101c7565b810103126101595760209150515f610120565b5080fd5b3d9150610139565b9050346101c3575f3660031901126101c3575f546001600160a01b0316803b156101c357816004815f809463684ef04560e11b83525af180156101b8576101aa575080f35b6101b691505f906101c7565b005b6040513d5f823e3d90fd5b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176101e957604052565b634e487b7160e01b5f52604160045260245ffdfea2646970667358221220121e110100e226ac58c859be5976a5c98b6a953cc6be370d076715d7cd7472ae64736f6c634300081c00336080806040523460175760015f5560d89081601c8239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220856e134f55f380b09c0fe1fc9d2a14bb14f8410f946e966d36e7c017e828ba2664736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081635b34b966146101655750806372142b89146100dc578063aef38e72146100b55763f5c5ad831461004a575f80fd5b346100a457806003193601126100a457805481906001600160a01b0316803b156100b257818091600460405180948193632baeceb760e01b83525af180156100a7576100935750f35b8161009d916101c7565b6100a45780f35b80fd5b6040513d84823e3d90fd5b50fd5b50346100a457806003193601126100a457546040516001600160a01b039091168152602090f35b50346100a457806003193601126100a45780546040516330de110d60e11b815290602090829060049082906001600160a01b03165afa9081156100a757829161012b575b602082604051908152f35b90506020813d60201161015d575b81610146602093836101c7565b810103126101595760209150515f610120565b5080fd5b3d9150610139565b9050346101c3575f3660031901126101c3575f546001600160a01b0316803b156101c357816004815f809463684ef04560e11b83525af180156101b8576101aa575080f35b6101b691505f906101c7565b005b6040513d5f823e3d90fd5b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176101e957604052565b634e487b7160e01b5f52604160045260245ffdfea2646970667358221220121e110100e226ac58c859be5976a5c98b6a953cc6be370d076715d7cd7472ae64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/eips/testdata/CounterFactory.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/bank/abi.json b/precompiles/bank/abi.json index 2c7ad29c7..d8bb4b7b6 100644 --- a/precompiles/bank/abi.json +++ b/precompiles/bank/abi.json @@ -1,77 +1,89 @@ -[ - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balances", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Balance[]", - "name": "balances", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "erc20Address", - "type": "address" - } - ], - "name": "supplyOf", - "outputs": [ - { - "internalType": "uint256", - "name": "totalSupply", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Balance[]", - "name": "totalSupply", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "IBank", + "sourceName": "solidity/precompiles/bank/IBank.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balances", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Balance[]", + "name": "balances", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "erc20Address", + "type": "address" + } + ], + "name": "supplyOf", + "outputs": [ + { + "internalType": "uint256", + "name": "totalSupply", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Balance[]", + "name": "totalSupply", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/bank/IBank.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/bank/testdata/BankCaller.json b/precompiles/bank/testdata/BankCaller.json index 049940cd2..bf22dfba3 100644 --- a/precompiles/bank/testdata/BankCaller.json +++ b/precompiles/bank/testdata/BankCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "BankCaller", "sourceName": "solidity/precompiles/bank/testdata/BankCaller.sol", "abi": [ @@ -79,8 +79,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001657610378908161001c8239f35b600080fdfe60806040908082526004918236101561001757600080fd5b600091823560e01c90816389129c681461016257508063acab2f94146100e95763bba60ca01461004657600080fd5b346100e557602092836003193601126100e15780356001600160a01b038116908190036100dd578251631890039360e21b81529182015283816024816108045afa9283156100d257809361009d575b505051908152f35b909192508382813d83116100cb575b6100b68183610234565b810103126100c8575051903880610095565b80fd5b503d6100ac565b8251903d90823e3d90fd5b8380fd5b8280fd5b5080fd5b508290346100e157826003193601126100e15782815180936318160ddd60e01b8252816108045afa918215610158578361012f9493610133575b505051918291826101e1565b0390f35b6101509293503d8091833e6101488183610234565b81019061026c565b908380610123565b81513d85823e3d90fd5b92939050346100dd5760203660031901126100dd5780356001600160a01b03811691908290036101dd576327e235e360e01b845283015282826024816108045afa918215610158578361012f94936101c057505051918291826101e1565b6101d59293503d8091833e6101488183610234565b903880610123565b8480fd5b60208082019080835283518092528060408094019401926000905b83821061020b57505050505090565b845180516001600160a01b031687528301518684015294850194938201936001909101906101fc565b90601f8019910116810190811067ffffffffffffffff82111761025657604052565b634e487b7160e01b600052604160045260246000fd5b6020808284031261032857815167ffffffffffffffff9283821161032857019083601f83011215610328578151838111610256576040938451956102b5848460051b0188610234565b828752838088019360061b86010194818611610328578401925b8584106102e0575050505050505090565b8684830312610328578651908782018281108582111761032d5788528451906001600160a01b0382168203610328578287928a945282870151838201528152019301926102cf565b600080fd5b60246000634e487b7160e01b81526041600452fdfea2646970667358221220069405aa45fc21b29f725237543db2b8600a62c69a04e7a4c44dce45d314303e64736f6c63430008140033", - "deployedBytecode": "0x60806040908082526004918236101561001757600080fd5b600091823560e01c90816389129c681461016257508063acab2f94146100e95763bba60ca01461004657600080fd5b346100e557602092836003193601126100e15780356001600160a01b038116908190036100dd578251631890039360e21b81529182015283816024816108045afa9283156100d257809361009d575b505051908152f35b909192508382813d83116100cb575b6100b68183610234565b810103126100c8575051903880610095565b80fd5b503d6100ac565b8251903d90823e3d90fd5b8380fd5b8280fd5b5080fd5b508290346100e157826003193601126100e15782815180936318160ddd60e01b8252816108045afa918215610158578361012f9493610133575b505051918291826101e1565b0390f35b6101509293503d8091833e6101488183610234565b81019061026c565b908380610123565b81513d85823e3d90fd5b92939050346100dd5760203660031901126100dd5780356001600160a01b03811691908290036101dd576327e235e360e01b845283015282826024816108045afa918215610158578361012f94936101c057505051918291826101e1565b6101d59293503d8091833e6101488183610234565b903880610123565b8480fd5b60208082019080835283518092528060408094019401926000905b83821061020b57505050505090565b845180516001600160a01b031687528301518684015294850194938201936001909101906101fc565b90601f8019910116810190811067ffffffffffffffff82111761025657604052565b634e487b7160e01b600052604160045260246000fd5b6020808284031261032857815167ffffffffffffffff9283821161032857019083601f83011215610328578151838111610256576040938451956102b5848460051b0188610234565b828752838088019360061b86010194818611610328578401925b8584106102e0575050505050505090565b8684830312610328578651908782018281108582111761032d5788528451906001600160a01b0382168203610328578287928a945282870151838201528152019301926102cf565b600080fd5b60246000634e487b7160e01b81526041600452fdfea2646970667358221220069405aa45fc21b29f725237543db2b8600a62c69a04e7a4c44dce45d314303e64736f6c63430008140033", + "bytecode": "0x60808060405234601557610326908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816389129c681461014657508063acab2f94146100db5763bba60ca01461003d575f80fd5b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c45760405190631890039360e21b825260048201526020816024816108045afa80156100d0575f90610099575b602090604051908152f35b506020813d6020116100c8575b816100b3602093836101ec565b810103126100c4576020905161008e565b5f80fd5b3d91506100a6565b6040513d5f823e3d90fd5b346100c4575f3660031901126100c4576040516318160ddd60e01b81525f816004816108045afa80156100d057610120915f91610124575b506040519182918261019e565b0390f35b61014091503d805f833e61013881836101ec565b810190610222565b82610113565b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c4576327e235e360e01b825260048201525f816024816108045afa80156100d057610120915f916101245750604051918291825b60206040818301928281528451809452019201905f5b8181106101c15750505090565b825180516001600160a01b0316855260209081015181860152604090940193909201916001016101b4565b90601f8019910116810190811067ffffffffffffffff82111761020e57604052565b634e487b7160e01b5f52604160045260245ffd5b6020818303126100c45780519067ffffffffffffffff82116100c4570181601f820112156100c45780519067ffffffffffffffff821161020e576040519261027060208460051b01856101ec565b82845260208085019360061b830101918183116100c457602001925b82841061029a575050505090565b6040848303126100c457604051906040820182811067ffffffffffffffff82111761020e576040528451906001600160a01b03821682036100c4578260209260409452828701518382015281520193019261028c56fea2646970667358221220ef4260e2dbc79ff1356d026b28428e63d5f7b147eb3d9e3c7987aabadcea253664736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816389129c681461014657508063acab2f94146100db5763bba60ca01461003d575f80fd5b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c45760405190631890039360e21b825260048201526020816024816108045afa80156100d0575f90610099575b602090604051908152f35b506020813d6020116100c8575b816100b3602093836101ec565b810103126100c4576020905161008e565b5f80fd5b3d91506100a6565b6040513d5f823e3d90fd5b346100c4575f3660031901126100c4576040516318160ddd60e01b81525f816004816108045afa80156100d057610120915f91610124575b506040519182918261019e565b0390f35b61014091503d805f833e61013881836101ec565b810190610222565b82610113565b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c4576327e235e360e01b825260048201525f816024816108045afa80156100d057610120915f916101245750604051918291825b60206040818301928281528451809452019201905f5b8181106101c15750505090565b825180516001600160a01b0316855260209081015181860152604090940193909201916001016101b4565b90601f8019910116810190811067ffffffffffffffff82111761020e57604052565b634e487b7160e01b5f52604160045260245ffd5b6020818303126100c45780519067ffffffffffffffff82116100c4570181601f820112156100c45780519067ffffffffffffffff821161020e576040519261027060208460051b01856101ec565b82845260208085019360061b830101918183116100c457602001925b82841061029a575050505090565b6040848303126100c457604051906040820182811067ffffffffffffffff82111761020e576040528451906001600160a01b03821682036100c4578260209260409452828701518382015281520193019261028c56fea2646970667358221220ef4260e2dbc79ff1356d026b28428e63d5f7b147eb3d9e3c7987aabadcea253664736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/bank/testdata/BankCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/bech32/abi.json b/precompiles/bech32/abi.json index 7d9144759..e9dc6dc6e 100644 --- a/precompiles/bech32/abi.json +++ b/precompiles/bech32/abi.json @@ -1,45 +1,57 @@ -[ - { - "inputs": [ - { - "internalType": "string", - "name": "bech32Address", - "type": "string" - } - ], - "name": "bech32ToHex", - "outputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - }, - { - "internalType": "string", - "name": "prefix", - "type": "string" - } - ], - "name": "hexToBech32", - "outputs": [ - { - "internalType": "string", - "name": "bech32Address", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "Bech32I", + "sourceName": "solidity/precompiles/bech32/Bech32I.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "bech32Address", + "type": "string" + } + ], + "name": "bech32ToHex", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "string", + "name": "prefix", + "type": "string" + } + ], + "name": "hexToBech32", + "outputs": [ + { + "internalType": "string", + "name": "bech32Address", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/bech32/Bech32I.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/callbacks/abi.json b/precompiles/callbacks/abi.json index 4cb6fcd72..5a0778063 100644 --- a/precompiles/callbacks/abi.json +++ b/precompiles/callbacks/abi.json @@ -1,63 +1,75 @@ -[ - { - "inputs": [ - { - "internalType": "string", - "name": "channelId", - "type": "string" - }, - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "uint64", - "name": "sequence", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "acknowledgement", - "type": "bytes" - } - ], - "name": "onPacketAcknowledgement", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "channelId", - "type": "string" - }, - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "uint64", - "name": "sequence", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "onPacketTimeout", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "ICallbacks", + "sourceName": "solidity/precompiles/callbacks/ICallbacks.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "channelId", + "type": "string" + }, + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "uint64", + "name": "sequence", + "type": "uint64" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "acknowledgement", + "type": "bytes" + } + ], + "name": "onPacketAcknowledgement", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "channelId", + "type": "string" + }, + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "uint64", + "name": "sequence", + "type": "uint64" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onPacketTimeout", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/callbacks/ICallbacks.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/distribution/abi.json b/precompiles/distribution/abi.json index 32c28715a..8be341bce 100644 --- a/precompiles/distribution/abi.json +++ b/precompiles/distribution/abi.json @@ -1,755 +1,767 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "ClaimRewards", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "DepositValidatorRewardsPool", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FundCommunityPool", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "caller", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "withdrawerAddress", - "type": "string" - } - ], - "name": "SetWithdrawerAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "WithdrawDelegatorReward", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "commission", - "type": "uint256" - } - ], - "name": "WithdrawValidatorCommission", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "uint32", - "name": "maxRetrieve", - "type": "uint32" - } - ], - "name": "claimRewards", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "communityPool", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "coins", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "delegationRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "rewards", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - } - ], - "name": "delegationTotalRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "reward", - "type": "tuple[]" - } - ], - "internalType": "struct DelegationDelegatorReward[]", - "name": "rewards", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "total", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - } - ], - "name": "delegatorValidators", - "outputs": [ - { - "internalType": "string[]", - "name": "validators", - "type": "string[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - } - ], - "name": "delegatorWithdrawAddress", - "outputs": [ - { - "internalType": "string", - "name": "withdrawAddress", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "depositValidatorRewardsPool", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "fundCommunityPool", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "withdrawerAddress", - "type": "string" - } - ], - "name": "setWithdrawAddress", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "validatorCommission", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "commission", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "validatorDistributionInfo", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "operatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "selfBondRewards", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "commission", - "type": "tuple[]" - } - ], - "internalType": "struct ValidatorDistributionInfo", - "name": "distributionInfo", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "validatorOutstandingRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "rewards", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint64", - "name": "startingHeight", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "endingHeight", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "validatorSlashes", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "validatorPeriod", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "fraction", - "type": "tuple" - } - ], - "internalType": "struct ValidatorSlashEvent[]", - "name": "slashes", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "withdrawDelegatorRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "withdrawValidatorCommission", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "DistributionI", + "sourceName": "solidity/precompiles/distribution/DistributionI.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "ClaimRewards", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "DepositValidatorRewardsPool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "FundCommunityPool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "withdrawerAddress", + "type": "string" + } + ], + "name": "SetWithdrawerAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "WithdrawDelegatorReward", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "commission", + "type": "uint256" + } + ], + "name": "WithdrawValidatorCommission", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "uint32", + "name": "maxRetrieve", + "type": "uint32" + } + ], + "name": "claimRewards", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "communityPool", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "coins", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "delegationRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "rewards", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + } + ], + "name": "delegationTotalRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "reward", + "type": "tuple[]" + } + ], + "internalType": "struct DelegationDelegatorReward[]", + "name": "rewards", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "total", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + } + ], + "name": "delegatorValidators", + "outputs": [ + { + "internalType": "string[]", + "name": "validators", + "type": "string[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + } + ], + "name": "delegatorWithdrawAddress", + "outputs": [ + { + "internalType": "string", + "name": "withdrawAddress", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "depositValidatorRewardsPool", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "fundCommunityPool", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "withdrawerAddress", + "type": "string" + } + ], + "name": "setWithdrawAddress", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "validatorCommission", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "commission", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "validatorDistributionInfo", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "operatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "selfBondRewards", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "commission", + "type": "tuple[]" + } + ], + "internalType": "struct ValidatorDistributionInfo", + "name": "distributionInfo", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "validatorOutstandingRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "rewards", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint64", + "name": "startingHeight", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "endingHeight", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "validatorSlashes", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "validatorPeriod", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "fraction", + "type": "tuple" + } + ], + "internalType": "struct ValidatorSlashEvent[]", + "name": "slashes", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "withdrawDelegatorRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "withdrawValidatorCommission", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/distribution/DistributionI.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/erc20/abi.json b/precompiles/erc20/abi.json index 177ac839e..537ca4651 100644 --- a/precompiles/erc20/abi.json +++ b/precompiles/erc20/abi.json @@ -1,224 +1,236 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "IERC20Metadata", + "sourceName": "solidity/precompiles/erc20/IERC20Metadata.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/erc20/IERC20Metadata.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/erc20/testdata/ERC20NoMetadata.json b/precompiles/erc20/testdata/ERC20NoMetadata.json index ad2690562..f8a18c095 100644 --- a/precompiles/erc20/testdata/ERC20NoMetadata.json +++ b/precompiles/erc20/testdata/ERC20NoMetadata.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20NoMetadata", "sourceName": "solidity/precompiles/erc20/testdata/ERC20NoMetadata.sol", "abi": [ @@ -240,8 +240,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001657610617908161001c8239f35b600080fdfe604060808152600436101561001357600080fd5b600090813560e01c8063095ea7b31461031757806318160ddd146102f957806323b872dd1461023557806339509351146101ce57806370a0823114610198578063a457c2d7146100f2578063a9059cbb146100c25763dd62ed3e1461007757600080fd5b346100be57806003193601126100be5780602092610093610340565b61009b61035b565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b5080fd5b50346100be57806003193601126100be576020906100eb6100e1610340565b6024359033610371565b5160018152f35b50346100be57806003193601126100be5761010b610340565b338352600160209081528284206001600160a01b0383168552905291819020546024359081811061014657926100eb916020940390336104df565b825162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b50346100be5760203660031901126100be5760209181906001600160a01b036101bf610340565b16815280845220549051908152f35b50346100be57806003193601126100be576101e7610340565b338352600160209081528284206001600160a01b038316855290528183205460243581019390841061022157506020926100eb91336104df565b634e487b7160e01b81526011600452602490fd5b50346100be5760603660031901126100be5761024f610340565b61025761035b565b90826044359460018060a01b0383168152600160205281812033825260205220546000198103610290575b50926100eb91602094610371565b8481106102b5579184916102ac6020966100eb950333836104df565b91945091610282565b835162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b50346100be57816003193601126100be576020906002549051908152f35b50346100be57806003193601126100be576020906100eb610336610340565b60243590336104df565b600435906001600160a01b038216820361035657565b600080fd5b602435906001600160a01b038216820361035657565b6001600160a01b0390811691821561048c571691821561043b576000828152806020526040812054918083106103e757604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b0390811691821561059057169182156105405760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fdfea264697066735822122019e2252c10fb32490e1f1f36e7f8b4ff219dd144595dffe567b32e2b33d17d3964736f6c63430008140033", - "deployedBytecode": "0x604060808152600436101561001357600080fd5b600090813560e01c8063095ea7b31461031757806318160ddd146102f957806323b872dd1461023557806339509351146101ce57806370a0823114610198578063a457c2d7146100f2578063a9059cbb146100c25763dd62ed3e1461007757600080fd5b346100be57806003193601126100be5780602092610093610340565b61009b61035b565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b5080fd5b50346100be57806003193601126100be576020906100eb6100e1610340565b6024359033610371565b5160018152f35b50346100be57806003193601126100be5761010b610340565b338352600160209081528284206001600160a01b0383168552905291819020546024359081811061014657926100eb916020940390336104df565b825162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b50346100be5760203660031901126100be5760209181906001600160a01b036101bf610340565b16815280845220549051908152f35b50346100be57806003193601126100be576101e7610340565b338352600160209081528284206001600160a01b038316855290528183205460243581019390841061022157506020926100eb91336104df565b634e487b7160e01b81526011600452602490fd5b50346100be5760603660031901126100be5761024f610340565b61025761035b565b90826044359460018060a01b0383168152600160205281812033825260205220546000198103610290575b50926100eb91602094610371565b8481106102b5579184916102ac6020966100eb950333836104df565b91945091610282565b835162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b50346100be57816003193601126100be576020906002549051908152f35b50346100be57806003193601126100be576020906100eb610336610340565b60243590336104df565b600435906001600160a01b038216820361035657565b600080fd5b602435906001600160a01b038216820361035657565b6001600160a01b0390811691821561048c571691821561043b576000828152806020526040812054918083106103e757604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b0390811691821561059057169182156105405760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fdfea264697066735822122019e2252c10fb32490e1f1f36e7f8b4ff219dd144595dffe567b32e2b33d17d3964736f6c63430008140033", + "bytecode": "0x6080806040523460155761060e908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b31461030c57806318160ddd146102ef57806323b872dd1461023257806339509351146101d057806370a0823114610199578063a457c2d7146100f6578063a9059cbb146100c55763dd62ed3e14610071575f80fd5b346100c15760403660031901126100c15761008a610332565b610092610348565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100c15760403660031901126100c1576100eb6100e1610332565b6024359033610462565b602060405160018152f35b346100c15760403660031901126100c15761010f610332565b60243590335f52600160205260405f2060018060a01b0382165f5260205260405f205491808310610146576100eb9203903361035e565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b346100c15760203660031901126100c1576001600160a01b036101ba610332565b165f525f602052602060405f2054604051908152f35b346100c15760403660031901126100c1576101e9610332565b335f52600160205260405f2060018060a01b0382165f5260205260405f2054602435810180911161021e576100eb913361035e565b634e487b7160e01b5f52601160045260245ffd5b346100c15760603660031901126100c15761024b610332565b610253610348565b6001600160a01b0382165f90815260016020818152604080842033855290915290912054926044359291840161028e575b6100eb9350610462565b8284106102aa576102a5836100eb9503338361035e565b610284565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100c1575f3660031901126100c1576020600254604051908152f35b346100c15760403660031901126100c1576100eb610328610332565b602435903361035e565b600435906001600160a01b03821682036100c157565b602435906001600160a01b03821682036100c157565b6001600160a01b0316908115610411576001600160a01b03169182156103c15760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b0316908115610585576001600160a01b031691821561053457815f525f60205260405f20548181106104e057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fdfea2646970667358221220b0cf00661f5a7925febf8dd9a41353076941ac5c4cdbc1faa8b9140ae625d0b764736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b31461030c57806318160ddd146102ef57806323b872dd1461023257806339509351146101d057806370a0823114610199578063a457c2d7146100f6578063a9059cbb146100c55763dd62ed3e14610071575f80fd5b346100c15760403660031901126100c15761008a610332565b610092610348565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100c15760403660031901126100c1576100eb6100e1610332565b6024359033610462565b602060405160018152f35b346100c15760403660031901126100c15761010f610332565b60243590335f52600160205260405f2060018060a01b0382165f5260205260405f205491808310610146576100eb9203903361035e565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b346100c15760203660031901126100c1576001600160a01b036101ba610332565b165f525f602052602060405f2054604051908152f35b346100c15760403660031901126100c1576101e9610332565b335f52600160205260405f2060018060a01b0382165f5260205260405f2054602435810180911161021e576100eb913361035e565b634e487b7160e01b5f52601160045260245ffd5b346100c15760603660031901126100c15761024b610332565b610253610348565b6001600160a01b0382165f90815260016020818152604080842033855290915290912054926044359291840161028e575b6100eb9350610462565b8284106102aa576102a5836100eb9503338361035e565b610284565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100c1575f3660031901126100c1576020600254604051908152f35b346100c15760403660031901126100c1576100eb610328610332565b602435903361035e565b600435906001600160a01b03821682036100c157565b602435906001600160a01b03821682036100c157565b6001600160a01b0316908115610411576001600160a01b03169182156103c15760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b0316908115610585576001600160a01b031691821561053457815f525f60205260405f20548181106104e057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fdfea2646970667358221220b0cf00661f5a7925febf8dd9a41353076941ac5c4cdbc1faa8b9140ae625d0b764736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/erc20/testdata/ERC20NoMetadata.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/erc20/testdata/ERC20TestCaller.json b/precompiles/erc20/testdata/ERC20TestCaller.json index d4c6cd0e1..d3e67d15c 100644 --- a/precompiles/erc20/testdata/ERC20TestCaller.json +++ b/precompiles/erc20/testdata/ERC20TestCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20TestCaller", "sourceName": "solidity/precompiles/erc20/testdata/ERC20TestCaller.sol", "abi": [ @@ -314,8 +314,11 @@ "type": "function" } ], - "bytecode": "0x60803461007757601f610bf638819003918201601f19168301916001600160401b0383118484101761007c5780849260209460405283398101031261007757516001600160a01b0381169081900361007757600080546001600160a01b031916919091178155600155604051610b6390816100938239f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe608060408181526004918236101561001657600080fd5b600092833560e01c9184836306fdde03146108975750508163095ea7b31461083b57816318160ddd146107ef57816323b872dd14610776578163268d070a14610639578163313ce5671461059d57816361bc221a1461057e5781636bc7b7cd1461046657816370a08231146103c857816395d89b411461034d578163a9059cbb146102b5578163d0fedf551461019e578163dd62ed3e146100eb575063fc0c546a146100c157600080fd5b346100e757816003193601126100e757905490516001600160a01b039091168152602090f35b5080fd5b919050346101885780600319360112610188576020610108610950565b604461011261096b565b86548551636eb1769f60e11b81526001600160a01b0394851697810197909752908316602487015285928391165afa918215610194578392610159575b6020838351908152f35b9091506020813d821161018c575b8161017460209383610981565b81010312610188576020925051903861014f565b8280fd5b3d9150610167565b81513d85823e3d90fd5b83915060803660031901126100e7576101b5610950565b9060443580151581036102b1576064359283151584036102ad5790602061022286936101e2600154610a4f565b6001558454895163a9059cbb60e01b81526001600160a01b03928316888201908152602435602082015290998a9493909216928492918391604090910190565b03925af19485156102a3578295610273575b5061025b576001549182156102605750506000190160015561025b57602091519015158152f35b610a74565b634e487b7160e01b825260119052602490fd5b61029591955060203d811161029c575b61028d8183610981565b8101906109b9565b9386610234565b503d610283565b86513d84823e3d90fd5b8480fd5b8380fd5b919050346101885780600319360112610188576020610311926102d6610950565b8554845163a9059cbb60e01b81526001600160a01b039283169381019384526024356020850152958693919092169183918891839160400190565b03925af1918215610194576020939261032e575b50519015158152f35b610346919250833d811161029c5761028d8183610981565b9038610325565b91905034610188578260031936011261018857825481516395d89b4160e01b815292849184919082906001600160a01b03165afa918215610194578361039f94936103a3575b50505191829182610924565b0390f35b6103c09293503d8091833e6103b88183610981565b8101906109ed565b903880610393565b8383346100e7576020928360031936011261018857836103e6610950565b845484516370a0823160e01b81526001600160a01b039283169481019490945283916024918391165afa92831561045b578093610426575b505051908152f35b909192508382813d8311610454575b61043f8183610981565b8101031261045157505190838061041e565b80fd5b503d610435565b8251903d90823e3d90fd5b828460c03660031901126104515761047c610950565b926084359384151585036101885760a4359182151583036102b1576001600160a01b03828116969091906104c1868080806044358d5af16104bb610aa7565b50610ad7565b610545578454865163a9059cbb60e01b81526001600160a01b03949094169184019182526024356020808401919091529284928390036040019183918891165af1908115610574579061051a9184916105565750610ad7565b61054557808080602095606435905af190610533610aa7565b5061053d82610ad7565b519015158152f35b610550600154610a4f565b50610a74565b61056e915060203d811161029c5761028d8183610981565b866104bb565b84513d85823e3d90fd5b5050346100e757816003193601126100e7576020906001549051908152f35b8284346104515780600319360112610451578054825163313ce56760e01b81529360209185919082906001600160a01b03165afa92831561062d5781936105ec575b60208460ff855191168152f35b9092506020813d8211610625575b8161060760209383610981565b8101031261018857519160ff83168303610451575060ff60206105df565b3d91506105fa565b509051903d90823e3d90fd5b919050606036600319011261018857610650610950565b60019261065d8454610a4f565b84558454835163a9059cbb60e01b81526001600160a01b038481168483019081526024356020828101919091529691939192918791839186169082908c90829060400103925af190811561076c57889161074f575b501561071a57519263d0fedf5560e01b845216908201526044356024820152826044820152826064820152818160848187305af16106fc575b50506106f78154610a4f565b905580f35b8161071292903d1061029c5761028d8183610981565b5038806106eb565b5162461bcd60e51b8152808301859052601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6107669150863d881161029c5761028d8183610981565b386106b2565b82513d8a823e3d90fd5b91905034610188576060366003190112610188576020610794610950565b606461079e61096b565b865485516323b872dd60e01b81526001600160a01b039485169781019790975290831660248701526044803590870152859283918891165af1918215610194576020939261032e5750519015158152f35b91905034610188578260031936011261018857825481516318160ddd60e01b81529260209184919082906001600160a01b03165afa918215610194578392610159576020838351908152f35b9190503461018857806003193601126101885760206103119261085c610950565b8554845163095ea7b360e01b81526001600160a01b039283169381019384526024356020850152958693919092169183918891839160400190565b91828591346100e757816003193601126100e75781546306fdde0360e01b855284919082906001600160a01b03165afa918215610194578361039f94936108e45750505191829182610924565b6108f99293503d8091833e6103b88183610981565b908380610393565b60005b8381106109145750506000910152565b8181015183820152602001610904565b604091602082526109448151809281602086015260208686019101610901565b601f01601f1916010190565b600435906001600160a01b038216820361096657565b600080fd5b602435906001600160a01b038216820361096657565b90601f8019910116810190811067ffffffffffffffff8211176109a357604052565b634e487b7160e01b600052604160045260246000fd5b90816020910312610966575180151581036109665790565b67ffffffffffffffff81116109a357601f01601f191660200190565b6020818303126109665780519067ffffffffffffffff8211610966570181601f82011215610966578051610a20816109d1565b92610a2e6040519485610981565b8184526020828401011161096657610a4c9160208085019101610901565b90565b6000198114610a5e5760010190565b634e487b7160e01b600052601160045260246000fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fd5b3d15610ad2573d90610ab8826109d1565b91610ac66040519384610981565b82523d6000602084013e565b606090565b15610ade57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fdfea264697066735822122062ba743dd9ada86a55113a52bb15264a99fef9ed2643c9db57b47edded3c20b664736f6c63430008140033", - "deployedBytecode": "0x608060408181526004918236101561001657600080fd5b600092833560e01c9184836306fdde03146108975750508163095ea7b31461083b57816318160ddd146107ef57816323b872dd14610776578163268d070a14610639578163313ce5671461059d57816361bc221a1461057e5781636bc7b7cd1461046657816370a08231146103c857816395d89b411461034d578163a9059cbb146102b5578163d0fedf551461019e578163dd62ed3e146100eb575063fc0c546a146100c157600080fd5b346100e757816003193601126100e757905490516001600160a01b039091168152602090f35b5080fd5b919050346101885780600319360112610188576020610108610950565b604461011261096b565b86548551636eb1769f60e11b81526001600160a01b0394851697810197909752908316602487015285928391165afa918215610194578392610159575b6020838351908152f35b9091506020813d821161018c575b8161017460209383610981565b81010312610188576020925051903861014f565b8280fd5b3d9150610167565b81513d85823e3d90fd5b83915060803660031901126100e7576101b5610950565b9060443580151581036102b1576064359283151584036102ad5790602061022286936101e2600154610a4f565b6001558454895163a9059cbb60e01b81526001600160a01b03928316888201908152602435602082015290998a9493909216928492918391604090910190565b03925af19485156102a3578295610273575b5061025b576001549182156102605750506000190160015561025b57602091519015158152f35b610a74565b634e487b7160e01b825260119052602490fd5b61029591955060203d811161029c575b61028d8183610981565b8101906109b9565b9386610234565b503d610283565b86513d84823e3d90fd5b8480fd5b8380fd5b919050346101885780600319360112610188576020610311926102d6610950565b8554845163a9059cbb60e01b81526001600160a01b039283169381019384526024356020850152958693919092169183918891839160400190565b03925af1918215610194576020939261032e575b50519015158152f35b610346919250833d811161029c5761028d8183610981565b9038610325565b91905034610188578260031936011261018857825481516395d89b4160e01b815292849184919082906001600160a01b03165afa918215610194578361039f94936103a3575b50505191829182610924565b0390f35b6103c09293503d8091833e6103b88183610981565b8101906109ed565b903880610393565b8383346100e7576020928360031936011261018857836103e6610950565b845484516370a0823160e01b81526001600160a01b039283169481019490945283916024918391165afa92831561045b578093610426575b505051908152f35b909192508382813d8311610454575b61043f8183610981565b8101031261045157505190838061041e565b80fd5b503d610435565b8251903d90823e3d90fd5b828460c03660031901126104515761047c610950565b926084359384151585036101885760a4359182151583036102b1576001600160a01b03828116969091906104c1868080806044358d5af16104bb610aa7565b50610ad7565b610545578454865163a9059cbb60e01b81526001600160a01b03949094169184019182526024356020808401919091529284928390036040019183918891165af1908115610574579061051a9184916105565750610ad7565b61054557808080602095606435905af190610533610aa7565b5061053d82610ad7565b519015158152f35b610550600154610a4f565b50610a74565b61056e915060203d811161029c5761028d8183610981565b866104bb565b84513d85823e3d90fd5b5050346100e757816003193601126100e7576020906001549051908152f35b8284346104515780600319360112610451578054825163313ce56760e01b81529360209185919082906001600160a01b03165afa92831561062d5781936105ec575b60208460ff855191168152f35b9092506020813d8211610625575b8161060760209383610981565b8101031261018857519160ff83168303610451575060ff60206105df565b3d91506105fa565b509051903d90823e3d90fd5b919050606036600319011261018857610650610950565b60019261065d8454610a4f565b84558454835163a9059cbb60e01b81526001600160a01b038481168483019081526024356020828101919091529691939192918791839186169082908c90829060400103925af190811561076c57889161074f575b501561071a57519263d0fedf5560e01b845216908201526044356024820152826044820152826064820152818160848187305af16106fc575b50506106f78154610a4f565b905580f35b8161071292903d1061029c5761028d8183610981565b5038806106eb565b5162461bcd60e51b8152808301859052601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6107669150863d881161029c5761028d8183610981565b386106b2565b82513d8a823e3d90fd5b91905034610188576060366003190112610188576020610794610950565b606461079e61096b565b865485516323b872dd60e01b81526001600160a01b039485169781019790975290831660248701526044803590870152859283918891165af1918215610194576020939261032e5750519015158152f35b91905034610188578260031936011261018857825481516318160ddd60e01b81529260209184919082906001600160a01b03165afa918215610194578392610159576020838351908152f35b9190503461018857806003193601126101885760206103119261085c610950565b8554845163095ea7b360e01b81526001600160a01b039283169381019384526024356020850152958693919092169183918891839160400190565b91828591346100e757816003193601126100e75781546306fdde0360e01b855284919082906001600160a01b03165afa918215610194578361039f94936108e45750505191829182610924565b6108f99293503d8091833e6103b88183610981565b908380610393565b60005b8381106109145750506000910152565b8181015183820152602001610904565b604091602082526109448151809281602086015260208686019101610901565b601f01601f1916010190565b600435906001600160a01b038216820361096657565b600080fd5b602435906001600160a01b038216820361096657565b90601f8019910116810190811067ffffffffffffffff8211176109a357604052565b634e487b7160e01b600052604160045260246000fd5b90816020910312610966575180151581036109665790565b67ffffffffffffffff81116109a357601f01601f191660200190565b6020818303126109665780519067ffffffffffffffff8211610966570181601f82011215610966578051610a20816109d1565b92610a2e6040519485610981565b8184526020828401011161096657610a4c9160208085019101610901565b90565b6000198114610a5e5760010190565b634e487b7160e01b600052601160045260246000fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fd5b3d15610ad2573d90610ab8826109d1565b91610ac66040519384610981565b82523d6000602084013e565b606090565b15610ade57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fdfea264697066735822122062ba743dd9ada86a55113a52bb15264a99fef9ed2643c9db57b47edded3c20b664736f6c63430008140033", + "bytecode": "0x608034607257601f610ae938819003918201601f19168301916001600160401b03831184841017607657808492602094604052833981010312607257516001600160a01b038116908190036072575f80546001600160a01b031916919091178155600155604051610a5e908161008b8239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146107f757508063095ea7b31461079e57806318160ddd1461075257806323b872dd146106d7578063268d070a146105a2578063313ce5671461051557806361bc221a146104f85780636bc7b7cd146103f457806370a082311461039757806395d89b411461031f578063a9059cbb1461028a578063d0fedf551461018d578063dd62ed3e146100e15763fc0c546a146100b6575f80fd5b346100dd575f3660031901126100dd575f546040516001600160a01b039091168152602090f35b5f80fd5b346100dd5760403660031901126100dd576100fa610869565b602061010461087f565b5f54604051636eb1769f60e11b81526001600160a01b0394851660048201529184166024830152909283916044918391165afa8015610182575f9061014f575b602090604051908152f35b506020813d60201161017a575b8161016960209383610895565b810103126100dd5760209051610144565b3d915061015c565b6040513d5f823e3d90fd5b60803660031901126100dd576101a1610869565b60443580151581036100dd576064359081151582036100dd5760206102095f946101cc600154610962565b600155855460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529687939190921691839182906044820190565b03925af1928315610182575f93610259575b50610240576001548015610245575f1901600155610240576020906040519015158152f35b6109f5565b634e487b7160e01b5f52601160045260245ffd5b61027c91935060203d602011610283575b6102748183610895565b81019061094a565b918361021b565b503d61026a565b346100dd5760403660031901126100dd575f60206102e36102a9610869565b835460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b03925af18015610182576020915f91610302575b506040519015158152f35b6103199150823d8411610283576102748183610895565b826102f7565b346100dd575f3660031901126100dd575f80546040516395d89b4160e01b81529190829060049082906001600160a01b03165afa801561018257610371915f91610375575b506040519182918261083f565b0390f35b61039191503d805f833e6103898183610895565b8101906108e7565b82610364565b346100dd5760203660031901126100dd576103b0610869565b5f546040516370a0823160e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610182575f9061014f57602090604051908152f35b60c03660031901126100dd57610408610869565b6084359081151582036100dd5760a4359081151582036100dd576001600160a01b038116926104485f808080604435895af1610442610970565b5061099f565b6104c6575f805460405163a9059cbb60e01b81526001600160a01b0393841660048201526024803590820152926020928492604492849291165af1801561018257610499915f916104d9575061099f565b6104c6575f808080602094606435905af16104b2610970565b506104bc8161099f565b6040519015158152f35b6104d1600154610962565b6001556109f5565b6104f2915060203d602011610283576102748183610895565b84610442565b346100dd575f3660031901126100dd576020600154604051908152f35b346100dd575f3660031901126100dd575f5460405163313ce56760e01b815290602090829060049082906001600160a01b03165afa8015610182575f90610565575b60209060ff60405191168152f35b506020813d60201161059a575b8161057f60209383610895565b810103126100dd575160ff811681036100dd57602090610557565b3d9150610572565b60603660031901126100dd576105b6610869565b6105c1600154610962565b6001555f805460405163a9059cbb60e01b81526001600160a01b03848116600483015260248035908301529092602092849260449284929091165af1908115610182575f916106b8575b50156106805760405163d0fedf5560e01b81526001600160a01b039091166004820152604480356024830152600190820181905260648201526020816084815f305af1610663575b61065e600154610962565b600155005b61067b9060203d602011610283576102748183610895565b610653565b60405162461bcd60e51b815260206004820152601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6106d1915060203d602011610283576102748183610895565b8261060b565b346100dd5760603660031901126100dd576106f0610869565b60206106fa61087f565b5f80546040516323b872dd60e01b81526001600160a01b039586166004820152928516602484015260448035908401529193849260649284929091165af18015610182576020915f9161030257506040519015158152f35b346100dd575f3660031901126100dd575f546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa8015610182575f9061014f57602090604051908152f35b346100dd5760403660031901126100dd575f60206102e36107bd610869565b835460405163095ea7b360e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b346100dd575f3660031901126100dd575f80546306fdde0360e01b8352829060049082906001600160a01b03165afa801561018257610371915f916103755750604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100dd57565b602435906001600160a01b03821682036100dd57565b90601f8019910116810190811067ffffffffffffffff8211176108b757604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116108b757601f01601f191660200190565b6020818303126100dd5780519067ffffffffffffffff82116100dd570181601f820112156100dd5780519061091b826108cb565b926109296040519485610895565b828452602083830101116100dd57815f9260208093018386015e8301015290565b908160209103126100dd575180151581036100dd5790565b5f1981146102455760010190565b3d1561099a573d90610981826108cb565b9161098f6040519384610895565b82523d5f602084013e565b606090565b156109a657565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea26469706673582212208d5aec8fdde9affd10a373070b58f1ddf0147ccba03be2e88c7e66d1102d6d1a64736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146107f757508063095ea7b31461079e57806318160ddd1461075257806323b872dd146106d7578063268d070a146105a2578063313ce5671461051557806361bc221a146104f85780636bc7b7cd146103f457806370a082311461039757806395d89b411461031f578063a9059cbb1461028a578063d0fedf551461018d578063dd62ed3e146100e15763fc0c546a146100b6575f80fd5b346100dd575f3660031901126100dd575f546040516001600160a01b039091168152602090f35b5f80fd5b346100dd5760403660031901126100dd576100fa610869565b602061010461087f565b5f54604051636eb1769f60e11b81526001600160a01b0394851660048201529184166024830152909283916044918391165afa8015610182575f9061014f575b602090604051908152f35b506020813d60201161017a575b8161016960209383610895565b810103126100dd5760209051610144565b3d915061015c565b6040513d5f823e3d90fd5b60803660031901126100dd576101a1610869565b60443580151581036100dd576064359081151582036100dd5760206102095f946101cc600154610962565b600155855460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529687939190921691839182906044820190565b03925af1928315610182575f93610259575b50610240576001548015610245575f1901600155610240576020906040519015158152f35b6109f5565b634e487b7160e01b5f52601160045260245ffd5b61027c91935060203d602011610283575b6102748183610895565b81019061094a565b918361021b565b503d61026a565b346100dd5760403660031901126100dd575f60206102e36102a9610869565b835460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b03925af18015610182576020915f91610302575b506040519015158152f35b6103199150823d8411610283576102748183610895565b826102f7565b346100dd575f3660031901126100dd575f80546040516395d89b4160e01b81529190829060049082906001600160a01b03165afa801561018257610371915f91610375575b506040519182918261083f565b0390f35b61039191503d805f833e6103898183610895565b8101906108e7565b82610364565b346100dd5760203660031901126100dd576103b0610869565b5f546040516370a0823160e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610182575f9061014f57602090604051908152f35b60c03660031901126100dd57610408610869565b6084359081151582036100dd5760a4359081151582036100dd576001600160a01b038116926104485f808080604435895af1610442610970565b5061099f565b6104c6575f805460405163a9059cbb60e01b81526001600160a01b0393841660048201526024803590820152926020928492604492849291165af1801561018257610499915f916104d9575061099f565b6104c6575f808080602094606435905af16104b2610970565b506104bc8161099f565b6040519015158152f35b6104d1600154610962565b6001556109f5565b6104f2915060203d602011610283576102748183610895565b84610442565b346100dd575f3660031901126100dd576020600154604051908152f35b346100dd575f3660031901126100dd575f5460405163313ce56760e01b815290602090829060049082906001600160a01b03165afa8015610182575f90610565575b60209060ff60405191168152f35b506020813d60201161059a575b8161057f60209383610895565b810103126100dd575160ff811681036100dd57602090610557565b3d9150610572565b60603660031901126100dd576105b6610869565b6105c1600154610962565b6001555f805460405163a9059cbb60e01b81526001600160a01b03848116600483015260248035908301529092602092849260449284929091165af1908115610182575f916106b8575b50156106805760405163d0fedf5560e01b81526001600160a01b039091166004820152604480356024830152600190820181905260648201526020816084815f305af1610663575b61065e600154610962565b600155005b61067b9060203d602011610283576102748183610895565b610653565b60405162461bcd60e51b815260206004820152601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6106d1915060203d602011610283576102748183610895565b8261060b565b346100dd5760603660031901126100dd576106f0610869565b60206106fa61087f565b5f80546040516323b872dd60e01b81526001600160a01b039586166004820152928516602484015260448035908401529193849260649284929091165af18015610182576020915f9161030257506040519015158152f35b346100dd575f3660031901126100dd575f546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa8015610182575f9061014f57602090604051908152f35b346100dd5760403660031901126100dd575f60206102e36107bd610869565b835460405163095ea7b360e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b346100dd575f3660031901126100dd575f80546306fdde0360e01b8352829060049082906001600160a01b03165afa801561018257610371915f916103755750604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100dd57565b602435906001600160a01b03821682036100dd57565b90601f8019910116810190811067ffffffffffffffff8211176108b757604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116108b757601f01601f191660200190565b6020818303126100dd5780519067ffffffffffffffff82116100dd570181601f820112156100dd5780519061091b826108cb565b926109296040519485610895565b828452602083830101116100dd57815f9260208093018386015e8301015290565b908160209103126100dd575180151581036100dd5790565b5f1981146102455760010190565b3d1561099a573d90610981826108cb565b9161098f6040519384610895565b82523d5f602084013e565b606090565b156109a657565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea26469706673582212208d5aec8fdde9affd10a373070b58f1ddf0147ccba03be2e88c7e66d1102d6d1a64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/erc20/testdata/ERC20TestCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/gov/abi.json b/precompiles/gov/abi.json index c318e6a2a..fd0641335 100644 --- a/precompiles/gov/abi.json +++ b/precompiles/gov/abi.json @@ -1,1107 +1,1119 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "CancelProposal", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "indexed": false, - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "Deposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "SubmitProposal", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "uint8", - "name": "option", - "type": "uint8" - } - ], - "name": "Vote", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "indexed": false, - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - } - ], - "name": "VoteWeighted", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "cancelProposal", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "deposit", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getConstitution", - "outputs": [ - { - "internalType": "string", - "name": "constitution", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - } - ], - "name": "getDeposit", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "internalType": "struct DepositData", - "name": "deposit", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getDeposits", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "internalType": "struct DepositData[]", - "name": "deposits", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getParams", - "outputs": [ - { - "components": [ - { - "internalType": "int64", - "name": "votingPeriod", - "type": "int64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "minDeposit", - "type": "tuple[]" - }, - { - "internalType": "int64", - "name": "maxDepositPeriod", - "type": "int64" - }, - { - "internalType": "string", - "name": "quorum", - "type": "string" - }, - { - "internalType": "string", - "name": "threshold", - "type": "string" - }, - { - "internalType": "string", - "name": "vetoThreshold", - "type": "string" - }, - { - "internalType": "string", - "name": "minInitialDepositRatio", - "type": "string" - }, - { - "internalType": "string", - "name": "proposalCancelRatio", - "type": "string" - }, - { - "internalType": "string", - "name": "proposalCancelDest", - "type": "string" - }, - { - "internalType": "int64", - "name": "expeditedVotingPeriod", - "type": "int64" - }, - { - "internalType": "string", - "name": "expeditedThreshold", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "expeditedMinDeposit", - "type": "tuple[]" - }, - { - "internalType": "bool", - "name": "burnVoteQuorum", - "type": "bool" - }, - { - "internalType": "bool", - "name": "burnProposalDepositPrevote", - "type": "bool" - }, - { - "internalType": "bool", - "name": "burnVoteVeto", - "type": "bool" - }, - { - "internalType": "string", - "name": "minDepositRatio", - "type": "string" - } - ], - "internalType": "struct Params", - "name": "params", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "getProposal", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "id", - "type": "uint64" - }, - { - "internalType": "string[]", - "name": "messages", - "type": "string[]" - }, - { - "internalType": "uint32", - "name": "status", - "type": "uint32" - }, - { - "components": [ - { - "internalType": "string", - "name": "yes", - "type": "string" - }, - { - "internalType": "string", - "name": "abstain", - "type": "string" - }, - { - "internalType": "string", - "name": "no", - "type": "string" - }, - { - "internalType": "string", - "name": "noWithVeto", - "type": "string" - } - ], - "internalType": "struct TallyResultData", - "name": "finalTallyResult", - "type": "tuple" - }, - { - "internalType": "uint64", - "name": "submitTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "depositEndTime", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "totalDeposit", - "type": "tuple[]" - }, - { - "internalType": "uint64", - "name": "votingStartTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "votingEndTime", - "type": "uint64" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - }, - { - "internalType": "string", - "name": "title", - "type": "string" - }, - { - "internalType": "string", - "name": "summary", - "type": "string" - }, - { - "internalType": "address", - "name": "proposer", - "type": "address" - } - ], - "internalType": "struct ProposalData", - "name": "proposal", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint32", - "name": "proposalStatus", - "type": "uint32" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getProposals", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "id", - "type": "uint64" - }, - { - "internalType": "string[]", - "name": "messages", - "type": "string[]" - }, - { - "internalType": "uint32", - "name": "status", - "type": "uint32" - }, - { - "components": [ - { - "internalType": "string", - "name": "yes", - "type": "string" - }, - { - "internalType": "string", - "name": "abstain", - "type": "string" - }, - { - "internalType": "string", - "name": "no", - "type": "string" - }, - { - "internalType": "string", - "name": "noWithVeto", - "type": "string" - } - ], - "internalType": "struct TallyResultData", - "name": "finalTallyResult", - "type": "tuple" - }, - { - "internalType": "uint64", - "name": "submitTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "depositEndTime", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "totalDeposit", - "type": "tuple[]" - }, - { - "internalType": "uint64", - "name": "votingStartTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "votingEndTime", - "type": "uint64" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - }, - { - "internalType": "string", - "name": "title", - "type": "string" - }, - { - "internalType": "string", - "name": "summary", - "type": "string" - }, - { - "internalType": "address", - "name": "proposer", - "type": "address" - } - ], - "internalType": "struct ProposalData[]", - "name": "proposals", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "getTallyResult", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "yes", - "type": "string" - }, - { - "internalType": "string", - "name": "abstain", - "type": "string" - }, - { - "internalType": "string", - "name": "no", - "type": "string" - }, - { - "internalType": "string", - "name": "noWithVeto", - "type": "string" - } - ], - "internalType": "struct TallyResultData", - "name": "tallyResult", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - } - ], - "name": "getVote", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "internalType": "struct WeightedVote", - "name": "vote", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getVotes", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "internalType": "struct WeightedVote[]", - "name": "votes", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "internalType": "bytes", - "name": "jsonProposal", - "type": "bytes" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "deposit", - "type": "tuple[]" - } - ], - "name": "submitProposal", - "outputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "name": "vote", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "name": "voteWeighted", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "IGov", + "sourceName": "solidity/precompiles/gov/IGov.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "SubmitProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "uint8", + "name": "option", + "type": "uint8" + } + ], + "name": "Vote", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "indexed": false, + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + } + ], + "name": "VoteWeighted", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "cancelProposal", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "deposit", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getConstitution", + "outputs": [ + { + "internalType": "string", + "name": "constitution", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + } + ], + "name": "getDeposit", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "internalType": "struct DepositData", + "name": "deposit", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getDeposits", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "internalType": "struct DepositData[]", + "name": "deposits", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getParams", + "outputs": [ + { + "components": [ + { + "internalType": "int64", + "name": "votingPeriod", + "type": "int64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "minDeposit", + "type": "tuple[]" + }, + { + "internalType": "int64", + "name": "maxDepositPeriod", + "type": "int64" + }, + { + "internalType": "string", + "name": "quorum", + "type": "string" + }, + { + "internalType": "string", + "name": "threshold", + "type": "string" + }, + { + "internalType": "string", + "name": "vetoThreshold", + "type": "string" + }, + { + "internalType": "string", + "name": "minInitialDepositRatio", + "type": "string" + }, + { + "internalType": "string", + "name": "proposalCancelRatio", + "type": "string" + }, + { + "internalType": "string", + "name": "proposalCancelDest", + "type": "string" + }, + { + "internalType": "int64", + "name": "expeditedVotingPeriod", + "type": "int64" + }, + { + "internalType": "string", + "name": "expeditedThreshold", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "expeditedMinDeposit", + "type": "tuple[]" + }, + { + "internalType": "bool", + "name": "burnVoteQuorum", + "type": "bool" + }, + { + "internalType": "bool", + "name": "burnProposalDepositPrevote", + "type": "bool" + }, + { + "internalType": "bool", + "name": "burnVoteVeto", + "type": "bool" + }, + { + "internalType": "string", + "name": "minDepositRatio", + "type": "string" + } + ], + "internalType": "struct Params", + "name": "params", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "getProposal", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "id", + "type": "uint64" + }, + { + "internalType": "string[]", + "name": "messages", + "type": "string[]" + }, + { + "internalType": "uint32", + "name": "status", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "string", + "name": "yes", + "type": "string" + }, + { + "internalType": "string", + "name": "abstain", + "type": "string" + }, + { + "internalType": "string", + "name": "no", + "type": "string" + }, + { + "internalType": "string", + "name": "noWithVeto", + "type": "string" + } + ], + "internalType": "struct TallyResultData", + "name": "finalTallyResult", + "type": "tuple" + }, + { + "internalType": "uint64", + "name": "submitTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "depositEndTime", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "totalDeposit", + "type": "tuple[]" + }, + { + "internalType": "uint64", + "name": "votingStartTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "votingEndTime", + "type": "uint64" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + }, + { + "internalType": "string", + "name": "title", + "type": "string" + }, + { + "internalType": "string", + "name": "summary", + "type": "string" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + } + ], + "internalType": "struct ProposalData", + "name": "proposal", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "proposalStatus", + "type": "uint32" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getProposals", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "id", + "type": "uint64" + }, + { + "internalType": "string[]", + "name": "messages", + "type": "string[]" + }, + { + "internalType": "uint32", + "name": "status", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "string", + "name": "yes", + "type": "string" + }, + { + "internalType": "string", + "name": "abstain", + "type": "string" + }, + { + "internalType": "string", + "name": "no", + "type": "string" + }, + { + "internalType": "string", + "name": "noWithVeto", + "type": "string" + } + ], + "internalType": "struct TallyResultData", + "name": "finalTallyResult", + "type": "tuple" + }, + { + "internalType": "uint64", + "name": "submitTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "depositEndTime", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "totalDeposit", + "type": "tuple[]" + }, + { + "internalType": "uint64", + "name": "votingStartTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "votingEndTime", + "type": "uint64" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + }, + { + "internalType": "string", + "name": "title", + "type": "string" + }, + { + "internalType": "string", + "name": "summary", + "type": "string" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + } + ], + "internalType": "struct ProposalData[]", + "name": "proposals", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "getTallyResult", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "yes", + "type": "string" + }, + { + "internalType": "string", + "name": "abstain", + "type": "string" + }, + { + "internalType": "string", + "name": "no", + "type": "string" + }, + { + "internalType": "string", + "name": "noWithVeto", + "type": "string" + } + ], + "internalType": "struct TallyResultData", + "name": "tallyResult", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + } + ], + "name": "getVote", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "internalType": "struct WeightedVote", + "name": "vote", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getVotes", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "internalType": "struct WeightedVote[]", + "name": "votes", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "bytes", + "name": "jsonProposal", + "type": "bytes" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "deposit", + "type": "tuple[]" + } + ], + "name": "submitProposal", + "outputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "name": "voteWeighted", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/gov/IGov.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/ics02/abi.json b/precompiles/ics02/abi.json index 71f457ae8..69549e962 100644 --- a/precompiles/ics02/abi.json +++ b/precompiles/ics02/abi.json @@ -1,142 +1,154 @@ -[ - { - "type": "function", - "name": "getClientState", - "inputs": [ - { - "name": "clientId", - "type": "string", - "internalType": "string" - } - ], - "outputs": [ - { - "name": "", - "type": "bytes", - "internalType": "bytes" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "updateClient", - "inputs": [ - { - "name": "clientId", - "type": "string", - "internalType": "string" - }, - { - "name": "updateMsg", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [ - { - "name": "", - "type": "uint8", - "internalType": "enum ICS02I.UpdateResult" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "verifyMembership", - "inputs": [ - { - "name": "clientId", - "type": "string", - "internalType": "string" - }, - { - "name": "proof", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "proofHeight", - "type": "tuple", - "internalType": "struct Height", - "components": [ - { - "name": "revisionNumber", - "type": "uint64", - "internalType": "uint64" - }, - { - "name": "revisionHeight", - "type": "uint64", - "internalType": "uint64" - } - ] - }, - { - "name": "path", - "type": "bytes[]", - "internalType": "bytes[]" - }, - { - "name": "value", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "verifyNonMembership", - "inputs": [ - { - "name": "clientId", - "type": "string", - "internalType": "string" - }, - { - "name": "proof", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "proofHeight", - "type": "tuple", - "internalType": "struct Height", - "components": [ - { - "name": "revisionNumber", - "type": "uint64", - "internalType": "uint64" - }, - { - "name": "revisionHeight", - "type": "uint64", - "internalType": "uint64" - } - ] - }, - { - "name": "path", - "type": "bytes[]", - "internalType": "bytes[]" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "nonpayable" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "ICS02I", + "sourceName": "solidity/precompiles/ics02/ICS02I.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + } + ], + "name": "getClientState", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + }, + { + "internalType": "bytes", + "name": "updateMsg", + "type": "bytes" + } + ], + "name": "updateClient", + "outputs": [ + { + "internalType": "enum ICS02I.UpdateResult", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + }, + { + "internalType": "bytes", + "name": "proof", + "type": "bytes" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "revisionNumber", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "revisionHeight", + "type": "uint64" + } + ], + "internalType": "struct Height", + "name": "proofHeight", + "type": "tuple" + }, + { + "internalType": "bytes[]", + "name": "path", + "type": "bytes[]" + }, + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ], + "name": "verifyMembership", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + }, + { + "internalType": "bytes", + "name": "proof", + "type": "bytes" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "revisionNumber", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "revisionHeight", + "type": "uint64" + } + ], + "internalType": "struct Height", + "name": "proofHeight", + "type": "tuple" + }, + { + "internalType": "bytes[]", + "name": "path", + "type": "bytes[]" + } + ], + "name": "verifyNonMembership", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/ics02/ICS02I.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/ics20/abi.json b/precompiles/ics20/abi.json index 1fc44348b..65e580110 100644 --- a/precompiles/ics20/abi.json +++ b/precompiles/ics20/abi.json @@ -1,271 +1,283 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": true, - "internalType": "string", - "name": "receiver", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourcePort", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceChannel", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "string", - "name": "memo", - "type": "string" - } - ], - "name": "IBCTransfer", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "hash", - "type": "string" - } - ], - "name": "denom", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "base", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "string", - "name": "channelId", - "type": "string" - } - ], - "internalType": "struct Hop[]", - "name": "trace", - "type": "tuple[]" - } - ], - "internalType": "struct Denom", - "name": "denom", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "trace", - "type": "string" - } - ], - "name": "denomHash", - "outputs": [ - { - "internalType": "string", - "name": "hash", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "denoms", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "base", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "string", - "name": "channelId", - "type": "string" - } - ], - "internalType": "struct Hop[]", - "name": "trace", - "type": "tuple[]" - } - ], - "internalType": "struct Denom[]", - "name": "denoms", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "sourcePort", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceChannel", - "type": "string" - }, - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "receiver", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint64", - "name": "revisionNumber", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "revisionHeight", - "type": "uint64" - } - ], - "internalType": "struct Height", - "name": "timeoutHeight", - "type": "tuple" - }, - { - "internalType": "uint64", - "name": "timeoutTimestamp", - "type": "uint64" - }, - { - "internalType": "string", - "name": "memo", - "type": "string" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "uint64", - "name": "nextSequence", - "type": "uint64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "ICS20I", + "sourceName": "solidity/precompiles/ics20/ICS20I.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "string", + "name": "receiver", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourcePort", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceChannel", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "memo", + "type": "string" + } + ], + "name": "IBCTransfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "hash", + "type": "string" + } + ], + "name": "denom", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "base", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "string", + "name": "channelId", + "type": "string" + } + ], + "internalType": "struct Hop[]", + "name": "trace", + "type": "tuple[]" + } + ], + "internalType": "struct Denom", + "name": "denom", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "trace", + "type": "string" + } + ], + "name": "denomHash", + "outputs": [ + { + "internalType": "string", + "name": "hash", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "denoms", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "base", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "string", + "name": "channelId", + "type": "string" + } + ], + "internalType": "struct Hop[]", + "name": "trace", + "type": "tuple[]" + } + ], + "internalType": "struct Denom[]", + "name": "denoms", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "sourcePort", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceChannel", + "type": "string" + }, + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "receiver", + "type": "string" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "revisionNumber", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "revisionHeight", + "type": "uint64" + } + ], + "internalType": "struct Height", + "name": "timeoutHeight", + "type": "tuple" + }, + { + "internalType": "uint64", + "name": "timeoutTimestamp", + "type": "uint64" + }, + { + "internalType": "string", + "name": "memo", + "type": "string" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "uint64", + "name": "nextSequence", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/ics20/ICS20I.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/slashing/abi.json b/precompiles/slashing/abi.json index 041866575..4de21d23f 100644 --- a/precompiles/slashing/abi.json +++ b/precompiles/slashing/abi.json @@ -1,256 +1,268 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "validator", - "type": "address" - } - ], - "name": "ValidatorUnjailed", - "type": "event" - }, - { - "inputs": [], - "name": "getParams", - "outputs": [ - { - "components": [ - { - "internalType": "int64", - "name": "signedBlocksWindow", - "type": "int64" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "minSignedPerWindow", - "type": "tuple" - }, - { - "internalType": "int64", - "name": "downtimeJailDuration", - "type": "int64" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "slashFractionDoubleSign", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "slashFractionDowntime", - "type": "tuple" - } - ], - "internalType": "struct Params", - "name": "params", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "consAddress", - "type": "address" - } - ], - "name": "getSigningInfo", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "int64", - "name": "startHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "indexOffset", - "type": "int64" - }, - { - "internalType": "int64", - "name": "jailedUntil", - "type": "int64" - }, - { - "internalType": "bool", - "name": "tombstoned", - "type": "bool" - }, - { - "internalType": "int64", - "name": "missedBlocksCounter", - "type": "int64" - } - ], - "internalType": "struct SigningInfo", - "name": "signingInfo", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getSigningInfos", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "int64", - "name": "startHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "indexOffset", - "type": "int64" - }, - { - "internalType": "int64", - "name": "jailedUntil", - "type": "int64" - }, - { - "internalType": "bool", - "name": "tombstoned", - "type": "bool" - }, - { - "internalType": "int64", - "name": "missedBlocksCounter", - "type": "int64" - } - ], - "internalType": "struct SigningInfo[]", - "name": "signingInfos", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - } - ], - "name": "unjail", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "ISlashing", + "sourceName": "solidity/precompiles/slashing/ISlashing.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "validator", + "type": "address" + } + ], + "name": "ValidatorUnjailed", + "type": "event" + }, + { + "inputs": [], + "name": "getParams", + "outputs": [ + { + "components": [ + { + "internalType": "int64", + "name": "signedBlocksWindow", + "type": "int64" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "minSignedPerWindow", + "type": "tuple" + }, + { + "internalType": "int64", + "name": "downtimeJailDuration", + "type": "int64" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "slashFractionDoubleSign", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "slashFractionDowntime", + "type": "tuple" + } + ], + "internalType": "struct Params", + "name": "params", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "consAddress", + "type": "address" + } + ], + "name": "getSigningInfo", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "int64", + "name": "startHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "indexOffset", + "type": "int64" + }, + { + "internalType": "int64", + "name": "jailedUntil", + "type": "int64" + }, + { + "internalType": "bool", + "name": "tombstoned", + "type": "bool" + }, + { + "internalType": "int64", + "name": "missedBlocksCounter", + "type": "int64" + } + ], + "internalType": "struct SigningInfo", + "name": "signingInfo", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getSigningInfos", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "int64", + "name": "startHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "indexOffset", + "type": "int64" + }, + { + "internalType": "int64", + "name": "jailedUntil", + "type": "int64" + }, + { + "internalType": "bool", + "name": "tombstoned", + "type": "bool" + }, + { + "internalType": "int64", + "name": "missedBlocksCounter", + "type": "int64" + } + ], + "internalType": "struct SigningInfo[]", + "name": "signingInfos", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + } + ], + "name": "unjail", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/slashing/ISlashing.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/slashing/testdata/SlashingCaller.json b/precompiles/slashing/testdata/SlashingCaller.json index 0d528bc7d..f9b7fd2e5 100644 --- a/precompiles/slashing/testdata/SlashingCaller.json +++ b/precompiles/slashing/testdata/SlashingCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "SlashingCaller", "sourceName": "solidity/precompiles/slashing/testdata/SlashingCaller.sol", "abi": [ @@ -42,8 +42,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001657610129908161001c8239f35b600080fdfe6080806040526004361015601257600080fd5b600090813560e01c637327af9014602857600080fd5b3460c8576020918260031936011260c5576004356001600160a01b0381169081900360c85763224f67f360e11b835260048301528282602481846108065af191821560e6578192607f575b50506040519015158152f35b909150823d841160e0575b601f8101601f1916820167ffffffffffffffff81118382101760cc57849183916040528101031260c8575190811515820360c5575038806073565b80fd5b5080fd5b634e487b7160e01b84526041600452602484fd5b503d608a565b50604051903d90823e3d90fdfea264697066735822122030280e24435dd2b28402bc0a014d2529269028fe5e4568d417064696d65217b464736f6c63430008140033", - "deployedBytecode": "0x6080806040526004361015601257600080fd5b600090813560e01c637327af9014602857600080fd5b3460c8576020918260031936011260c5576004356001600160a01b0381169081900360c85763224f67f360e11b835260048301528282602481846108065af191821560e6578192607f575b50506040519015158152f35b909150823d841160e0575b601f8101601f1916820167ffffffffffffffff81118382101760cc57849183916040528101031260c8575190811515820360c5575038806073565b80fd5b5080fd5b634e487b7160e01b84526041600452602484fd5b503d608a565b50604051903d90823e3d90fdfea264697066735822122030280e24435dd2b28402bc0a014d2529269028fe5e4568d417064696d65217b464736f6c63430008140033", + "bytecode": "0x6080806040523460155761011e908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c637327af90146023575f80fd5b3460bf57602036600319011260bf576004356001600160a01b0381169081900360bf5763224f67f360e11b825260048201526020816024815f6108065af1801560dd575f906079575b6020906040519015158152f35b5060203d60201160d7575b601f8101601f1916820167ffffffffffffffff81118382101760c35760209183916040528101031260bf5751801515810360bf57602090606c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b503d6084565b6040513d5f823e3d90fdfea264697066735822122076ad72a07e2943051dd4f31a11bf2cc424aef0fbc323558fa3318f07e36799fb64736f6c634300081c0033", + "deployedBytecode": "0x60808060405260043610156011575f80fd5b5f3560e01c637327af90146023575f80fd5b3460bf57602036600319011260bf576004356001600160a01b0381169081900360bf5763224f67f360e11b825260048201526020816024815f6108065af1801560dd575f906079575b6020906040519015158152f35b5060203d60201160d7575b601f8101601f1916820167ffffffffffffffff81118382101760c35760209183916040528101031260bf5751801515810360bf57602090606c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b503d6084565b6040513d5f823e3d90fdfea264697066735822122076ad72a07e2943051dd4f31a11bf2cc424aef0fbc323558fa3318f07e36799fb64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/slashing/testdata/SlashingCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/staking/abi.json b/precompiles/staking/abi.json index 7871943da..de15d592c 100644 --- a/precompiles/staking/abi.json +++ b/precompiles/staking/abi.json @@ -1,1061 +1,1073 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "creationHeight", - "type": "uint256" - } - ], - "name": "CancelUnbondingDelegation", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "CreateValidator", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "newShares", - "type": "uint256" - } - ], - "name": "Delegate", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "int256", - "name": "commissionRate", - "type": "int256" - }, - { - "indexed": false, - "internalType": "int256", - "name": "minSelfDelegation", - "type": "int256" - } - ], - "name": "EditValidator", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorSrcAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorDstAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "completionTime", - "type": "uint256" - } - ], - "name": "Redelegate", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "completionTime", - "type": "uint256" - } - ], - "name": "Unbond", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creationHeight", - "type": "uint256" - } - ], - "name": "cancelUnbondingDelegation", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "rate", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxRate", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxChangeRate", - "type": "uint256" - } - ], - "internalType": "struct CommissionRates", - "name": "commissionRates", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "minSelfDelegation", - "type": "uint256" - }, - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "pubkey", - "type": "string" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "createValidator", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "delegate", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "delegation", - "outputs": [ - { - "internalType": "uint256", - "name": "shares", - "type": "uint256" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin", - "name": "balance", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "int256", - "name": "commissionRate", - "type": "int256" - }, - { - "internalType": "int256", - "name": "minSelfDelegation", - "type": "int256" - } - ], - "name": "editValidator", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorSrcAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorDstAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "redelegate", - "outputs": [ - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "srcValidatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "dstValidatorAddress", - "type": "string" - } - ], - "name": "redelegation", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "delegatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorSrcAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorDstAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "sharesDst", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntry[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct RedelegationOutput", - "name": "redelegation", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "srcValidatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "dstValidatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "redelegations", - "outputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "string", - "name": "delegatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorSrcAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorDstAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "sharesDst", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntry[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct Redelegation", - "name": "redelegation", - "type": "tuple" - }, - { - "components": [ - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "sharesDst", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntry", - "name": "redelegationEntry", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "balance", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntryResponse[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct RedelegationResponse[]", - "name": "response", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "unbondingDelegation", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "delegatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "balance", - "type": "uint256" - }, - { - "internalType": "uint64", - "name": "unbondingId", - "type": "uint64" - }, - { - "internalType": "int64", - "name": "unbondingOnHoldRefCount", - "type": "int64" - } - ], - "internalType": "struct UnbondingDelegationEntry[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct UnbondingDelegationOutput", - "name": "unbondingDelegation", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "undelegate", - "outputs": [ - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - } - ], - "name": "validator", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "operatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "consensusPubkey", - "type": "string" - }, - { - "internalType": "bool", - "name": "jailed", - "type": "bool" - }, - { - "internalType": "enum BondStatus", - "name": "status", - "type": "uint8" - }, - { - "internalType": "uint256", - "name": "tokens", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "delegatorShares", - "type": "uint256" - }, - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "internalType": "int64", - "name": "unbondingHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "unbondingTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "commission", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "minSelfDelegation", - "type": "uint256" - } - ], - "internalType": "struct Validator", - "name": "validator", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "status", - "type": "string" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "validators", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "operatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "consensusPubkey", - "type": "string" - }, - { - "internalType": "bool", - "name": "jailed", - "type": "bool" - }, - { - "internalType": "enum BondStatus", - "name": "status", - "type": "uint8" - }, - { - "internalType": "uint256", - "name": "tokens", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "delegatorShares", - "type": "uint256" - }, - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "internalType": "int64", - "name": "unbondingHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "unbondingTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "commission", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "minSelfDelegation", - "type": "uint256" - } - ], - "internalType": "struct Validator[]", - "name": "validators", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "StakingI", + "sourceName": "solidity/precompiles/staking/StakingI.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "creationHeight", + "type": "uint256" + } + ], + "name": "CancelUnbondingDelegation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "CreateValidator", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "newShares", + "type": "uint256" + } + ], + "name": "Delegate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "int256", + "name": "commissionRate", + "type": "int256" + }, + { + "indexed": false, + "internalType": "int256", + "name": "minSelfDelegation", + "type": "int256" + } + ], + "name": "EditValidator", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorSrcAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorDstAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "completionTime", + "type": "uint256" + } + ], + "name": "Redelegate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "completionTime", + "type": "uint256" + } + ], + "name": "Unbond", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "creationHeight", + "type": "uint256" + } + ], + "name": "cancelUnbondingDelegation", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "rate", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxRate", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxChangeRate", + "type": "uint256" + } + ], + "internalType": "struct CommissionRates", + "name": "commissionRates", + "type": "tuple" + }, + { + "internalType": "uint256", + "name": "minSelfDelegation", + "type": "uint256" + }, + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "pubkey", + "type": "string" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "createValidator", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "delegation", + "outputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin", + "name": "balance", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "int256", + "name": "commissionRate", + "type": "int256" + }, + { + "internalType": "int256", + "name": "minSelfDelegation", + "type": "int256" + } + ], + "name": "editValidator", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorSrcAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorDstAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "redelegate", + "outputs": [ + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "srcValidatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "dstValidatorAddress", + "type": "string" + } + ], + "name": "redelegation", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "delegatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorSrcAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorDstAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesDst", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntry[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct RedelegationOutput", + "name": "redelegation", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "srcValidatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "dstValidatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "redelegations", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "string", + "name": "delegatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorSrcAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorDstAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesDst", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntry[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct Redelegation", + "name": "redelegation", + "type": "tuple" + }, + { + "components": [ + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesDst", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntry", + "name": "redelegationEntry", + "type": "tuple" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntryResponse[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct RedelegationResponse[]", + "name": "response", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "unbondingDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "delegatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "unbondingId", + "type": "uint64" + }, + { + "internalType": "int64", + "name": "unbondingOnHoldRefCount", + "type": "int64" + } + ], + "internalType": "struct UnbondingDelegationEntry[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct UnbondingDelegationOutput", + "name": "unbondingDelegation", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [ + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + } + ], + "name": "validator", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "operatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "consensusPubkey", + "type": "string" + }, + { + "internalType": "bool", + "name": "jailed", + "type": "bool" + }, + { + "internalType": "enum BondStatus", + "name": "status", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "delegatorShares", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "internalType": "int64", + "name": "unbondingHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "unbondingTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "commission", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSelfDelegation", + "type": "uint256" + } + ], + "internalType": "struct Validator", + "name": "validator", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "status", + "type": "string" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "validators", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "operatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "consensusPubkey", + "type": "string" + }, + { + "internalType": "bool", + "name": "jailed", + "type": "bool" + }, + { + "internalType": "enum BondStatus", + "name": "status", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "delegatorShares", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "internalType": "int64", + "name": "unbondingHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "unbondingTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "commission", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSelfDelegation", + "type": "uint256" + } + ], + "internalType": "struct Validator[]", + "name": "validators", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/staking/StakingI.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/staking/testdata/StakingCaller.json b/precompiles/staking/testdata/StakingCaller.json index adb465da0..32107dfe0 100644 --- a/precompiles/staking/testdata/StakingCaller.json +++ b/precompiles/staking/testdata/StakingCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "StakingCaller", "sourceName": "solidity/precompiles/staking/testdata/StakingCaller.sol", "abi": [ @@ -1034,8 +1034,11 @@ "type": "function" } ], - "bytecode": "0x60803462000266576020906001600160401b0381830181811183821017620002505760808301818110838211176200025057604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760408401526261746560e81b60608401528252600390815492600193848455808510620001d1575b5060008381528581209095869390925b868510620000a9576040516130a69081620002c28239f35b8051908151838111620001bd5788918691620000c687546200026b565b948c601f968588821162000182575b5050508c849683116001146200011c5795829186979262000110575b5050600019828c1b1c191690841b1786555b0193019401939162000091565b015190503880620000f1565b9095601f198316898352858320925b8181106200016a575090869784889594931062000151575b505050811b01865562000103565b0151600019838e1b60f8161c1916905538808062000143565b8289015184558e978c9794019392830192016200012b565b828b620001aa945220600589808701821c830193898810620001b3575b01901c0190620002a8565b8c3885620000d5565b935082936200019f565b634e487b7160e01b8a52604160045260248afd5b6000848152858088832093840193015b838110620001f25750505062000081565b82620001ff82546200026b565b8062000211575b5050018690620001e1565b601f8082116001146200022b57505081555b823862000206565b62000246908484528c8420920160051c8201858301620002a8565b8183555562000223565b634e487b7160e01b600052604160045260246000fd5b600080fd5b90600182811c921680156200029d575b60208310146200028757565b634e487b7160e01b600052602260045260246000fd5b91607f16916200027b565b818110620002b4575050565b60008155600101620002a856fe6080604052600436101561001257600080fd5b60003560e01c8063088b32b1146101575780631904bb2e1461015257806319b16c4c1461014d5780632345e7d41461014857806329e71c821461014357806331bcbcb31461013e578063455b855114610139578063464d2d0314610134578063569c21e31461012f578063570467ac1461012a57806361bc221a1461012557806368ac3df314610120578063a4603a2e1461011b578063af9a90b214610116578063b13d424214610111578063b3e982341461010c578063b61b519714610107578063cf2753cf14610102578063ddbaf2c2146100fd5763f732b065146100f857600080fd5b611c2d565b611ab9565b611a1e565b6119af565b6118b5565b611773565b61160f565b6114ae565b611427565b6113fb565b611338565b61121d565b6111a2565b610f9f565b610d97565b610c97565b610a6d565b6107ec565b6105b2565b6103dc565b600435906001600160a01b038216820361017257565b600080fd5b60a435906001600160a01b038216820361017257565b602435906001600160a01b038216820361017257565b80548210156101bf5760005260206000209060021b0190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c92168015610205575b60208310146101ef57565b634e487b7160e01b600052602260045260246000fd5b91607f16916101e4565b634e487b7160e01b600052604160045260246000fd5b61016081019081106001600160401b0382111761024157604052565b61020f565b60a081019081106001600160401b0382111761024157604052565b606081019081106001600160401b0382111761024157604052565b60c081019081106001600160401b0382111761024157604052565b608081019081106001600160401b0382111761024157604052565b604081019081106001600160401b0382111761024157604052565b90601f801991011681019081106001600160401b0382111761024157604052565b9060405191826000825492610302846101d5565b908184526001948581169081600014610371575060011461032e575b505061032c925003836102cd565b565b9093915060005260209081600020936000915b81831061035957505061032c9350820101388061031e565b85548884018501529485019487945091830191610341565b91505061032c94506020925060ff191682840152151560051b820101388061031e565b60005b8381106103a75750506000910152565b8181015183820152602001610397565b906020916103d081518092818552858086019101610394565b601f01601f1916010190565b34610172576040366003190112610172576103f561015c565b6001600160a01b03166000908152600160205260409020805460243591908210156101725761045a91610427916101a3565b50610431816102ee565b906001810154906003600282015491015460070b906040519485946080865260808601906103b7565b926020850152604084015260608301520390f35b90600482101561047b5752565b634e487b7160e01b600052602160045260246000fd5b6104fa9160806104e96104d76104c56104b3865160a0875260a08701906103b7565b602087015186820360208801526103b7565b604086015185820360408701526103b7565b606085015184820360608601526103b7565b9201519060808184039101526103b7565b90565b9061056d61052961051784516101608086528501906103b7565b602085015184820360208601526103b7565b6040848101511515908401526105476060850151606085019061046e565b6080840151608084015260a084015160a084015260c084015183820360c0850152610491565b60e08084015160070b90830152916101008181015160070b9083015261012080820151908301526101408091015191015290565b9060206104fa9281815201906104fd565b34610172576020366003190112610172576101406106766105d161015c565b6040908151906105e082610225565b60608083528060208401526000958387949285878195015283818301528360808301528360a083015286519061061582610246565b80825260208201819052878201819052818101819052608082015260c082015260e08101839052610100810183905261012081018390520152825163111d9dbd60e11b81526001600160a01b03909116600482015292839081906024820190565b03816108005afa9182156106c4578361069b949361069f575b505051918291826105a1565b0390f35b6106bc9293503d8091833e6106b481836102cd565b8101906128d8565b90388061068f565b611e38565b6040519061032c826102b2565b6040519061032c82610246565b6040519061032c82610225565b6040519061032c82610297565b6001600160401b03811161024157601f01601f191660200190565b929192610724826106fd565b9161073260405193846102cd565b829481845281830111610172578281602093846000960137010152565b9080601f83011215610172578160206104fa93359101610718565b6060600319820112610172576004356001600160a01b038116810361017257916001600160401b0360243581811161017257836107a99160040161074f565b92604435918211610172576104fa9160040161074f565b90815260406020820152606060206107e3845160408086015260808501906103b7565b93015191015290565b34610172576107fa3661076a565b60009291926108076128fd565b506040938451916020948584019463120bba7360e11b86528461082e858460248401612a97565b0390610842601f19928381018852876102cd565b8851610861816108558b82018095611aa2565b038481018352826102cd565b5190209088518881019061088c8161085584600c906b19195b1959d85d1958d85b1b60a21b81520190565b51902082036108db575050505050916000806108cd9361069b969551906108005af4906108c06108ba612edf565b92612fa3565b8082518301019101612a37565b9290915b51928392836107c0565b8851691cdd185d1a58d8d85b1b60b21b898201908152906108ff81600a8401610855565b519020820361093b575050505050916000806109339361069b969551906108005afa906108c061092d612edf565b92612f57565b9290916108d1565b88516318d85b1b60e21b898201908152906109598160048401610855565b519020820361098e575050505050916000806109339361069b96955190826108005af1906108c0610988612edf565b92612f0f565b9193955091935086516109c487820192826109b8856008906763616c6c636f646560c01b81520190565b039081018352826102cd565b51902003610a515760a460c0926109ef6109dc612ff9565b8051908801206001600160e01b03191690565b908787870151960151885196879586948552600485015289602485015260336044850152606484015260848301526108005af291815192610100606084015193018552156101725761069b91610a436106c9565b9160608352820152926108d1565b845162461bcd60e51b815280610a6960048201612eb4565b0390fd5b34610172576060366003190112610172576001600160401b0360043581811161017257610a9e90369060040161074f565b6024359160443590811161017257610aba90369060040161074f565b91610ac3612075565b6040805160209485820192630fb6accf60e21b845282610ae886883060248501611eeb565b0391610afc601f19938481018652856102cd565b8151610b1b81610b0f8b82018095611aa2565b038581018352826102cd565b519020610b30610b2a42611f69565b60070b90565b92825189810190610b588161085584600c906b19195b1959d85d1958d85b1b60a21b81520190565b5190208203610b99575050505093600080610b9193610b979751906108005af490610b846108ba612edf565b80825183010191016121ac565b91612205565b005b8251691cdd185d1a58d8d85b1b60b21b8a820190815290610bbd81600a8401610855565b5190208203610be9575050505093600080610b9193610b979751906108005afa90610b8461092d612edf565b82516318d85b1b60e21b8a820190815290610c078160048401610855565b5190208203610c34575050505093600080610b9193610b97975190826108005af190610b84610988612edf565b9091929697610c5c845191820192826109b8856008906763616c6c636f646560c01b81520190565b51902003610c80575060009182915190826108005af21561017257610b9792612205565b5162461bcd60e51b815280610a6960048201612eb4565b34610172576040366003190112610172576004356001600160401b03811161017257610cc790369060040161074f565b602435610cd48183612377565b610cdc612075565b604051630fb6accf60e21b81529060208280610cfd84873060048501611eeb565b038160006108005af19182156106c457600092610d67575b5060008260070b1315610d2b57610b9792612205565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d8991925060203d8111610d90575b610d8181836102cd565b8101906121ac565b9038610d15565b503d610d77565b606036600319011261017257610dab61015c565b6024356001600160401b03811161017257610dca90369060040161074f565b610dd2612075565b60405163a9059cbb60e01b6020820190815233602483015260448035818401528252610e1d91610e036064826102cd565b600094859283809351925af1610e17612edf565b50613032565b6040516353266bbb60e01b81529060208280610e3e34853060048501611eeb565b0381866108005af19182156106c457610e6a92610e62918591610e6d575b50611f15565b349033611f79565b80f35b610e8e915060203d8111610e94575b610e8681836102cd565b810190611d3c565b38610e5c565b503d610e7c565b906040600319830112610172576004356001600160a01b03811681036101725791602435906001600160401b038211610172576104fa9160040161074f565b906020908183528051916060928382860152610efb608091828701906103b7565b93828401519581601f1997610f1c60409889928b86830301848701526103b7565b96015197828703019101528280875195868152019601946000925b858410610f48575050505050505090565b86518051600790810b8a5281870151810b8a880152818401518a850152818501518a860152818301516001600160401b03168a84015260a091820151900b9089015260c09097019695840195600190930192610f37565b3461017257610fad36610e9b565b906040805191610fbc83610261565b60609384845284836020958287820152015282519163a03ffee160e01b83528280610fee600094859460048401612a97565b03816108005afa9384156106c4578194611010575b83518061069b8782610eda565b90919293503d8083853e61102481856102cd565b83019080848303126111685783516001600160401b0394858211611170570193868584031261116c5785519461105986610261565b8051828111611174578461106e918301612725565b8652828101518281116111745784611087918301612725565b838701528681015191821161117057019180601f8401121561116c578251966110af88612917565b946110bc885196876102cd565b888652838601928460c0809b0287010195818711611168578501935b8685106110f8575050505050505061069b93508282015290388080611003565b8a8583031261116857858b918b5161110f8161027c565b6111188861219e565b815261112583890161219e565b838201528c8801518d82015286880151878201526080808901519061114982611b07565b82015260a0611159818a0161219e565b908201528152019401936110d8565b8280fd5b8380fd5b8480fd5b8580fd5b602060031982011261017257600435906001600160401b038211610172576104fa9160040161074f565b6111ab36611178565b6111b3612075565b6040516353266bbb60e01b8152806111d034843060048501611eeb565b039160208260009481866108005af19182156106c4576111fa92610e62918591610e6d5750611f15565b80803415611214575b8180809234903390f1156106c45780f35b506108fc611203565b61122636611178565b61122e612075565b6040516353266bbb60e01b8152906020828061124f34853060048501611eeb565b038160006108005af19182156106c457610b9792610e6291600091610e6d5750611f15565b805190611289608092838552838501906103b7565b60606112b66112a460209384860151888203868a01526103b7565b604085015187820360408901526103b7565b9201519360608184039101528080855193848152019401926000905b8382106112e157505050505090565b909192939483828261131a6001948a5160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01960194939201906112d2565b9060206104fa928181520190611274565b346101725760006113483661076a565b9092916113b46040519261135b84610297565b606080858180975281602082015281604082015201526113a26040519687958695631f67e4e760e21b875260018060a01b03166004870152602486015260648501906103b7565b838103600319016044850152906103b7565b03816108005afa80156106c45761069b916000916113da575b5060405191829182611327565b6113f5913d8091833e6113ed81836102cd565b810190612bfa565b386113cd565b34610172576000366003190112610172576020600254604051908152f35b908160a09103126101725790565b3461017257610100366003190112610172576001600160401b0360043581811161017257611459903690600401611419565b9060603660231901126101725761146e610177565b9160c4359182116101725761069b9261148e61149c93369060040161074f565b9060e4359260843590611e44565b60405190151581529081906020820190565b34610172576060366003190112610172576004356001600160401b038111610172576114de90369060040161074f565b604435906024356114ed612075565b600091825b33600052846001806020526040600020548310156115fb573360009081526001602052604090206115249084906101a3565b5061154585611532836102ee565b6020815191012090602081519101201490565b90816115e2575b5061156157505061155c90611fbf565b6114f2565b84955060209391949250600161157a915b151514612698565b611599604051968793849363096ac6ff60e11b8552306004860161252a565b038160006108005af19283156106c457610b97936115bf916000916115c4575b5061255d565b6125a9565b6115dc915060203d8111610e9457610e8681836102cd565b386115b9565b600301546115f3915060070b610b2a565b42103861154c565b5092938491509161157a6001602094611572565b34610172576080366003190112610172576004356001600160401b0381116101725761163f903690600401611419565b602061167061164c61018d565b604051632943c16b60e21b8152608060048201529384928392916084840190611da3565b6001600160a01b03909116602483015260448035908301526064803590830152038160006108005af180156106c45761069b916000916116be575b5060405190151581529081906020820190565b6116d6915060203d8111610e9457610e8681836102cd565b386116ab565b9060206001600160401b03816116fb85516040865260408601906103b7565b9401511691015290565b929160408401916040855280518093526060850160608460051b870101936020809301916000905b8282106117495750505050936104fa93948184039101526116dc565b909192958480611765600193605f198d82030186528a516104fd565b98019201920190929161172d565b346101725760406003198181360112610172576001600160401b03600435818111610172576117a690369060040161074f565b60243590828211610172576000926117c56117f3933690600401611419565b946117ce6128fd565b506080808851978896879663186b216760e01b88528b600489015260448801906103b7565b9386850301602487015261181861180a8280611d51565b60a0875260a0870191611d82565b9480602083013561182881611b07565b1660208601528a82013561183b81611b07565b168a850152606081013561184e81611b23565b15156060850152013561186081611b23565b151591015203816108005afa9182156106c457600091829361188c575b5061069b905192839283611705565b6118ad91935061069b923d8091833e6118a581836102cd565b81019061298d565b92909161187d565b3461017257600319606036820112610172576001600160401b0390600435828111610172576118e890369060040161074f565b916024359081116101725761190190369060040161074f565b61194f6020604435936119148587612377565b604051809381926354b826f560e01b83523060048401526080602484015261193f608484018a6103b7565b90838203016044840152866103b7565b866064830152038160006108005af19081156106c457610b9794611985600061198b9487948291611991575b5060070b13612419565b3361245c565b33611f79565b6119a9915060203d8111610d9057610d8181836102cd565b3861197b565b6119b836611178565b6119c0612075565b6040516353266bbb60e01b815290602082806119e134853060048501611eeb565b038160006108005af19182156106c457611a0692610e6291600091610e6d5750611f15565b60025460018101809111611a1957600255005b611f53565b3461017257611a566000611a3136610e9b565b90611a3a6128fd565b5060405163120bba7360e11b8152938492839260048401612a97565b03816108005afa9081156106c4576000908192611a7e575b5061069b604051928392836107c0565b90611a9b92503d8091833e611a9381836102cd565b810190612a37565b9038611a6e565b90611ab560209282815194859201610394565b0190565b34610172576020611af581611acd36610e9b565b9060018060a01b03166000526000825260406000208260405194838680955193849201610394565b82019081520301902054604051908152f35b6001600160401b0381160361017257565b359061032c82611b07565b8015150361017257565b359061032c82611b23565b92916040918285018386528151809152606086019060608160051b88010194602080940192600091825b848410611b8057505050505050936104fa93948184039101526116dc565b9091929394978690605f198c8203018552895182611ba5825187855287850190611274565b910151918381830391015282808351928381520192019084905b808210611bde5750505090806001929a01940194019294939190611b62565b919360a060019294828751611c1883825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920189939291611bbf565b346101725760031960803682011261017257611c4761015c565b6001600160401b039060243582811161017257611c6890369060040161074f565b60443583811161017257611c8090369060040161074f565b91606435948486116101725760a09086360301126101725760405193611ca585610246565b85600401359081116101725785019436602387011215610172576084611d1791611cdc611d21983690602460048201359101610718565b8752611cea60248201611b18565b6020880152611cfb60448201611b18565b6040880152611d0c60648201611b2d565b606088015201611b2d565b6080850152612dc6565b9061069b60405192839283611b38565b519061032c82611b23565b9081602091031261017257516104fa81611b23565b9035601e19823603018112156101725701602081359101916001600160401b03821161017257813603831361017257565b908060209392818452848401376000828201840152601f01601f1916010190565b6104fa91611e2a611e1f611e04611de9611dce611dc08780611d51565b60a0885260a0880191611d82565b611ddb6020880188611d51565b908783036020890152611d82565b611df66040870187611d51565b908683036040880152611d82565b611e116060860186611d51565b908583036060870152611d82565b926080810190611d51565b916080818503910152611d82565b6040513d6000823e3d90fd5b9093611eb2611e7693956020956040519788968796637be6aa8b60e11b88526101006004890152610104880190611da3565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c48601526103b7565b9060e4830152038160006108005af19081156106c457600091611ed3575090565b6104fa915060203d8111610e9457610e8681836102cd565b939291611f109060409260018060a01b031686526060602087015260608601906103b7565b930152565b15611f1c57565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b634e487b7160e01b600052601160045260246000fd5b90621baf808201809211611a1957565b611fa79160209160018060a01b03166000526000825260406000208260405194838680955193849201610394565b8201908152030190208054918201809211611a195755565b6000198114611a195760010190565b818110611fd9575050565b60008155600101611fce565b634e487b7160e01b600052600060045260246000fd5b906120635760038161200f600093546101d5565b80612026575b508260018201558260028201550155565b601f811160011461203c57508281555b38612015565b839082825261205a601f60208420920160051c820160018301611fce565b81835555612036565b611fe5565b91908203918211611a1957565b60005b336000526001602090808252604091826000208054851015612197578461209e916101a3565b509142600384015460070b11156120c2575b505050506120bd90611fbf565b612078565b3360009081526001602052604090206120e6906120e09087906101a3565b90611ffb565b828101543360009081526020819052604090209094519360009281549161210c836101d5565b9282811690811561217c5750600114612146575b505050815282900301902080546120bd939261213b91612068565b9055903880806120b0565b600090815285812093945091925b83831061216b5750505083019083816120bd612120565b805487840152918501918101612154565b60ff19168852505050801515028401915083816120bd612120565b5050505050565b51908160070b820361017257565b90816020910312610172576104fa9061219e565b9190601f81116121cf57505050565b61032c926000526020600020906020601f840160051c830193106121fb575b601f0160051c0190611fce565b90915081906121ee565b91903360005260016020918183526040600020926040519561222687610297565b86528086019182526040860193438552606087019560070b86528054600160401b8110156102415761225c9185820181556101a3565b9690966120635751908151916001600160401b0383116102415761228a836122848a546101d5565b8a6121c0565b81601f84116001146122fd57509282600396936122d4969361032c9a99966000926122f2575b505060001982891b1c191690831b1787555b51908601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b0151905038806122b0565b9190601f1984166123138a600052602060002090565b936000905b82821061236057505093869361032c9a9996936122d498938360039b9810612348575b505050811b0187556122c2565b0151600019838b1b60f8161c1916905538808061233b565b808986978294978701518155019601940190612318565b602061239d91336000526000825260406000208260405194838680955193849201610394565b82019081520301902054106123ae57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b1561242057565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b9060018060a01b0382166000526000602052604060002091836040516020818551968287019761248d81848b610394565b82019081520301902054106124e5576001600160a01b03166000908152602081815260409091206124e1936124d093909190604051948593849251928391610394565b820190815203019020918254612068565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fd5b6001600160a01b03909116815260806020820181905292949392606092612553918301906103b7565b9460408201520152565b1561256457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b3360005260019160209083825260408481600020946000965b6125d0575b50505050505050565b8554871015612693576125e387876101a3565b509080600283015403612681575001928354918383106126305750509061260991612068565b8091551561261c575b80808080806125c7565b612629916120e0916101a3565b3880612612565b60849250519062461bcd60e51b82526004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152fd5b905061268d8297611fbf565b966125c2565b6125c7565b1561269f57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b909291926126fd816106fd565b9161270b60405193846102cd565b82948284528282011161017257602061032c930190610394565b9080601f830112156101725781516104fa926020016126f0565b5190600482101561017257565b91909160a081840312610172576127616106d6565b9281516001600160401b03908181116101725782612780918501612725565b85526020830151818111610172578261279a918501612725565b6020860152604083015181811161017257826127b7918501612725565b6040860152606083015181811161017257826127d4918501612725565b60608601526080830151908111610172576127ef9201612725565b6080830152565b919091610160818403126101725761280c6106e3565b928151906001600160401b0391828111610172578161282c918501612725565b855260208301518281116101725781612846918501612725565b602086015261285760408401611d31565b60408601526128686060840161273f565b60608601526080830151608086015260a083015160a086015260c08301519182116101725761289891830161274c565b60c08401526128a960e0820161219e565b60e08401526101006128bc81830161219e565b9084015261012080820151908401526101408091015190830152565b906020828203126101725781516001600160401b038111610172576104fa92016127f6565b6040519061290a826102b2565b6000602083606081520152565b6001600160401b0381116102415760051b60200190565b9190916040818403126101725760405190612948826102b2565b819381516001600160401b0381116101725782019181601f840112156101725761297b60209392838580955191016126f0565b845201519161298983611b07565b0152565b919091604081840312610172578051926001600160401b03938481116101725782019381601f860112156101725784516129c681612917565b906129d460405192836102cd565b808252602096878084019260051b8201019185831161017257888201905b838210612a12575050505094830151908111610172576104fa920161292e565b8151868111610172578a91612a2c898480948801016127f6565b8152019101906129f2565b9190916040818403126101725780519260208201516001600160401b039283821161017257016040818303126101725760405192612a74846102b2565b815190811161017257602092612a8b918301612725565b83520151602082015290565b6001600160a01b0390911681526040602082018190526104fa929101906103b7565b919082608091031261017257604051612ad181610297565b6060808294612adf8161219e565b8452612aed6020820161219e565b6020850152604081015160408501520151910152565b81601f8201121561017257805191612b1a83612917565b92612b2860405194856102cd565b808452602091828086019260071b85010193818511610172578301915b848310612b5457505050505090565b83608091612b628486612ab9565b815201920191612b45565b91909160808184031261017257612b826106f0565b9281516001600160401b03908181116101725782612ba1918501612725565b855260208301518181116101725782612bbb918501612725565b602086015260408301518181116101725782612bd8918501612725565b6040860152606083015190811161017257612bf39201612b03565b6060830152565b906020828203126101725781516001600160401b038111610172576104fa9201612b6d565b919091604080828503126101725781516001600160401b0381116101725784601f828501011215610172578083015190612c5882612917565b92612c65815194856102cd565b82845260208401918760208560051b83890101011161017257602081870101925b60208560051b83890101018410612cba5750505050509260208201516001600160401b038111610172576104fa920161292e565b83516001600160401b038111610172578288010183601f19828c03011261017257835190612ce7826102b2565b60208101516001600160401b038111610172578b6020612d0992840101612b6d565b825284810151906001600160401b03821161017257018a603f82011215610172576020810151612d3881612917565b91612d45875193846102cd565b818352602083018d8860a085028401011161017257818801908e5b8960a086028501018310612d895750505050506020828101919091529082529384019301612c86565b8260a09103126101725760208f9160a092612daf8c5191612da9836102b2565b86612ab9565b81526080850151838201528152019101908e612d60565b612e109493600093612dd66128fd565b50604051630428a14760e21b81526001600160a01b0390931660048401526080602484015291958693849391612e239160848601906103b7565b60031992838683030160448701526103b7565b90838203016064840152608080612e43845160a0855260a08501906103b7565b936001600160401b0380602083015116602086015260408201511660408501526060810151151560608501520151151591015203816108005afa9182156106c4576000908193612e9257509190565b90612eb09293503d8091833e612ea881836102cd565b810190612c1f565b9091565b60609060208152601060208201526f696e76616c69642063616c6c7479706560801b60408201520190565b3d15612f0a573d90612ef0826106fd565b91612efe60405193846102cd565b82523d6000602084013e565b606090565b15612f1657565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b15612f5e57565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b15612faa57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b60405190613006826102b2565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b1561303957565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fdfea2646970667358221220d1e8c1d6b1ef8b01471c4ab06fb8583615d477c90c9b7811388bad4cc56ef39d64736f6c63430008140033", - "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c8063088b32b1146101575780631904bb2e1461015257806319b16c4c1461014d5780632345e7d41461014857806329e71c821461014357806331bcbcb31461013e578063455b855114610139578063464d2d0314610134578063569c21e31461012f578063570467ac1461012a57806361bc221a1461012557806368ac3df314610120578063a4603a2e1461011b578063af9a90b214610116578063b13d424214610111578063b3e982341461010c578063b61b519714610107578063cf2753cf14610102578063ddbaf2c2146100fd5763f732b065146100f857600080fd5b611c2d565b611ab9565b611a1e565b6119af565b6118b5565b611773565b61160f565b6114ae565b611427565b6113fb565b611338565b61121d565b6111a2565b610f9f565b610d97565b610c97565b610a6d565b6107ec565b6105b2565b6103dc565b600435906001600160a01b038216820361017257565b600080fd5b60a435906001600160a01b038216820361017257565b602435906001600160a01b038216820361017257565b80548210156101bf5760005260206000209060021b0190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c92168015610205575b60208310146101ef57565b634e487b7160e01b600052602260045260246000fd5b91607f16916101e4565b634e487b7160e01b600052604160045260246000fd5b61016081019081106001600160401b0382111761024157604052565b61020f565b60a081019081106001600160401b0382111761024157604052565b606081019081106001600160401b0382111761024157604052565b60c081019081106001600160401b0382111761024157604052565b608081019081106001600160401b0382111761024157604052565b604081019081106001600160401b0382111761024157604052565b90601f801991011681019081106001600160401b0382111761024157604052565b9060405191826000825492610302846101d5565b908184526001948581169081600014610371575060011461032e575b505061032c925003836102cd565b565b9093915060005260209081600020936000915b81831061035957505061032c9350820101388061031e565b85548884018501529485019487945091830191610341565b91505061032c94506020925060ff191682840152151560051b820101388061031e565b60005b8381106103a75750506000910152565b8181015183820152602001610397565b906020916103d081518092818552858086019101610394565b601f01601f1916010190565b34610172576040366003190112610172576103f561015c565b6001600160a01b03166000908152600160205260409020805460243591908210156101725761045a91610427916101a3565b50610431816102ee565b906001810154906003600282015491015460070b906040519485946080865260808601906103b7565b926020850152604084015260608301520390f35b90600482101561047b5752565b634e487b7160e01b600052602160045260246000fd5b6104fa9160806104e96104d76104c56104b3865160a0875260a08701906103b7565b602087015186820360208801526103b7565b604086015185820360408701526103b7565b606085015184820360608601526103b7565b9201519060808184039101526103b7565b90565b9061056d61052961051784516101608086528501906103b7565b602085015184820360208601526103b7565b6040848101511515908401526105476060850151606085019061046e565b6080840151608084015260a084015160a084015260c084015183820360c0850152610491565b60e08084015160070b90830152916101008181015160070b9083015261012080820151908301526101408091015191015290565b9060206104fa9281815201906104fd565b34610172576020366003190112610172576101406106766105d161015c565b6040908151906105e082610225565b60608083528060208401526000958387949285878195015283818301528360808301528360a083015286519061061582610246565b80825260208201819052878201819052818101819052608082015260c082015260e08101839052610100810183905261012081018390520152825163111d9dbd60e11b81526001600160a01b03909116600482015292839081906024820190565b03816108005afa9182156106c4578361069b949361069f575b505051918291826105a1565b0390f35b6106bc9293503d8091833e6106b481836102cd565b8101906128d8565b90388061068f565b611e38565b6040519061032c826102b2565b6040519061032c82610246565b6040519061032c82610225565b6040519061032c82610297565b6001600160401b03811161024157601f01601f191660200190565b929192610724826106fd565b9161073260405193846102cd565b829481845281830111610172578281602093846000960137010152565b9080601f83011215610172578160206104fa93359101610718565b6060600319820112610172576004356001600160a01b038116810361017257916001600160401b0360243581811161017257836107a99160040161074f565b92604435918211610172576104fa9160040161074f565b90815260406020820152606060206107e3845160408086015260808501906103b7565b93015191015290565b34610172576107fa3661076a565b60009291926108076128fd565b506040938451916020948584019463120bba7360e11b86528461082e858460248401612a97565b0390610842601f19928381018852876102cd565b8851610861816108558b82018095611aa2565b038481018352826102cd565b5190209088518881019061088c8161085584600c906b19195b1959d85d1958d85b1b60a21b81520190565b51902082036108db575050505050916000806108cd9361069b969551906108005af4906108c06108ba612edf565b92612fa3565b8082518301019101612a37565b9290915b51928392836107c0565b8851691cdd185d1a58d8d85b1b60b21b898201908152906108ff81600a8401610855565b519020820361093b575050505050916000806109339361069b969551906108005afa906108c061092d612edf565b92612f57565b9290916108d1565b88516318d85b1b60e21b898201908152906109598160048401610855565b519020820361098e575050505050916000806109339361069b96955190826108005af1906108c0610988612edf565b92612f0f565b9193955091935086516109c487820192826109b8856008906763616c6c636f646560c01b81520190565b039081018352826102cd565b51902003610a515760a460c0926109ef6109dc612ff9565b8051908801206001600160e01b03191690565b908787870151960151885196879586948552600485015289602485015260336044850152606484015260848301526108005af291815192610100606084015193018552156101725761069b91610a436106c9565b9160608352820152926108d1565b845162461bcd60e51b815280610a6960048201612eb4565b0390fd5b34610172576060366003190112610172576001600160401b0360043581811161017257610a9e90369060040161074f565b6024359160443590811161017257610aba90369060040161074f565b91610ac3612075565b6040805160209485820192630fb6accf60e21b845282610ae886883060248501611eeb565b0391610afc601f19938481018652856102cd565b8151610b1b81610b0f8b82018095611aa2565b038581018352826102cd565b519020610b30610b2a42611f69565b60070b90565b92825189810190610b588161085584600c906b19195b1959d85d1958d85b1b60a21b81520190565b5190208203610b99575050505093600080610b9193610b979751906108005af490610b846108ba612edf565b80825183010191016121ac565b91612205565b005b8251691cdd185d1a58d8d85b1b60b21b8a820190815290610bbd81600a8401610855565b5190208203610be9575050505093600080610b9193610b979751906108005afa90610b8461092d612edf565b82516318d85b1b60e21b8a820190815290610c078160048401610855565b5190208203610c34575050505093600080610b9193610b97975190826108005af190610b84610988612edf565b9091929697610c5c845191820192826109b8856008906763616c6c636f646560c01b81520190565b51902003610c80575060009182915190826108005af21561017257610b9792612205565b5162461bcd60e51b815280610a6960048201612eb4565b34610172576040366003190112610172576004356001600160401b03811161017257610cc790369060040161074f565b602435610cd48183612377565b610cdc612075565b604051630fb6accf60e21b81529060208280610cfd84873060048501611eeb565b038160006108005af19182156106c457600092610d67575b5060008260070b1315610d2b57610b9792612205565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d8991925060203d8111610d90575b610d8181836102cd565b8101906121ac565b9038610d15565b503d610d77565b606036600319011261017257610dab61015c565b6024356001600160401b03811161017257610dca90369060040161074f565b610dd2612075565b60405163a9059cbb60e01b6020820190815233602483015260448035818401528252610e1d91610e036064826102cd565b600094859283809351925af1610e17612edf565b50613032565b6040516353266bbb60e01b81529060208280610e3e34853060048501611eeb565b0381866108005af19182156106c457610e6a92610e62918591610e6d575b50611f15565b349033611f79565b80f35b610e8e915060203d8111610e94575b610e8681836102cd565b810190611d3c565b38610e5c565b503d610e7c565b906040600319830112610172576004356001600160a01b03811681036101725791602435906001600160401b038211610172576104fa9160040161074f565b906020908183528051916060928382860152610efb608091828701906103b7565b93828401519581601f1997610f1c60409889928b86830301848701526103b7565b96015197828703019101528280875195868152019601946000925b858410610f48575050505050505090565b86518051600790810b8a5281870151810b8a880152818401518a850152818501518a860152818301516001600160401b03168a84015260a091820151900b9089015260c09097019695840195600190930192610f37565b3461017257610fad36610e9b565b906040805191610fbc83610261565b60609384845284836020958287820152015282519163a03ffee160e01b83528280610fee600094859460048401612a97565b03816108005afa9384156106c4578194611010575b83518061069b8782610eda565b90919293503d8083853e61102481856102cd565b83019080848303126111685783516001600160401b0394858211611170570193868584031261116c5785519461105986610261565b8051828111611174578461106e918301612725565b8652828101518281116111745784611087918301612725565b838701528681015191821161117057019180601f8401121561116c578251966110af88612917565b946110bc885196876102cd565b888652838601928460c0809b0287010195818711611168578501935b8685106110f8575050505050505061069b93508282015290388080611003565b8a8583031261116857858b918b5161110f8161027c565b6111188861219e565b815261112583890161219e565b838201528c8801518d82015286880151878201526080808901519061114982611b07565b82015260a0611159818a0161219e565b908201528152019401936110d8565b8280fd5b8380fd5b8480fd5b8580fd5b602060031982011261017257600435906001600160401b038211610172576104fa9160040161074f565b6111ab36611178565b6111b3612075565b6040516353266bbb60e01b8152806111d034843060048501611eeb565b039160208260009481866108005af19182156106c4576111fa92610e62918591610e6d5750611f15565b80803415611214575b8180809234903390f1156106c45780f35b506108fc611203565b61122636611178565b61122e612075565b6040516353266bbb60e01b8152906020828061124f34853060048501611eeb565b038160006108005af19182156106c457610b9792610e6291600091610e6d5750611f15565b805190611289608092838552838501906103b7565b60606112b66112a460209384860151888203868a01526103b7565b604085015187820360408901526103b7565b9201519360608184039101528080855193848152019401926000905b8382106112e157505050505090565b909192939483828261131a6001948a5160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01960194939201906112d2565b9060206104fa928181520190611274565b346101725760006113483661076a565b9092916113b46040519261135b84610297565b606080858180975281602082015281604082015201526113a26040519687958695631f67e4e760e21b875260018060a01b03166004870152602486015260648501906103b7565b838103600319016044850152906103b7565b03816108005afa80156106c45761069b916000916113da575b5060405191829182611327565b6113f5913d8091833e6113ed81836102cd565b810190612bfa565b386113cd565b34610172576000366003190112610172576020600254604051908152f35b908160a09103126101725790565b3461017257610100366003190112610172576001600160401b0360043581811161017257611459903690600401611419565b9060603660231901126101725761146e610177565b9160c4359182116101725761069b9261148e61149c93369060040161074f565b9060e4359260843590611e44565b60405190151581529081906020820190565b34610172576060366003190112610172576004356001600160401b038111610172576114de90369060040161074f565b604435906024356114ed612075565b600091825b33600052846001806020526040600020548310156115fb573360009081526001602052604090206115249084906101a3565b5061154585611532836102ee565b6020815191012090602081519101201490565b90816115e2575b5061156157505061155c90611fbf565b6114f2565b84955060209391949250600161157a915b151514612698565b611599604051968793849363096ac6ff60e11b8552306004860161252a565b038160006108005af19283156106c457610b97936115bf916000916115c4575b5061255d565b6125a9565b6115dc915060203d8111610e9457610e8681836102cd565b386115b9565b600301546115f3915060070b610b2a565b42103861154c565b5092938491509161157a6001602094611572565b34610172576080366003190112610172576004356001600160401b0381116101725761163f903690600401611419565b602061167061164c61018d565b604051632943c16b60e21b8152608060048201529384928392916084840190611da3565b6001600160a01b03909116602483015260448035908301526064803590830152038160006108005af180156106c45761069b916000916116be575b5060405190151581529081906020820190565b6116d6915060203d8111610e9457610e8681836102cd565b386116ab565b9060206001600160401b03816116fb85516040865260408601906103b7565b9401511691015290565b929160408401916040855280518093526060850160608460051b870101936020809301916000905b8282106117495750505050936104fa93948184039101526116dc565b909192958480611765600193605f198d82030186528a516104fd565b98019201920190929161172d565b346101725760406003198181360112610172576001600160401b03600435818111610172576117a690369060040161074f565b60243590828211610172576000926117c56117f3933690600401611419565b946117ce6128fd565b506080808851978896879663186b216760e01b88528b600489015260448801906103b7565b9386850301602487015261181861180a8280611d51565b60a0875260a0870191611d82565b9480602083013561182881611b07565b1660208601528a82013561183b81611b07565b168a850152606081013561184e81611b23565b15156060850152013561186081611b23565b151591015203816108005afa9182156106c457600091829361188c575b5061069b905192839283611705565b6118ad91935061069b923d8091833e6118a581836102cd565b81019061298d565b92909161187d565b3461017257600319606036820112610172576001600160401b0390600435828111610172576118e890369060040161074f565b916024359081116101725761190190369060040161074f565b61194f6020604435936119148587612377565b604051809381926354b826f560e01b83523060048401526080602484015261193f608484018a6103b7565b90838203016044840152866103b7565b866064830152038160006108005af19081156106c457610b9794611985600061198b9487948291611991575b5060070b13612419565b3361245c565b33611f79565b6119a9915060203d8111610d9057610d8181836102cd565b3861197b565b6119b836611178565b6119c0612075565b6040516353266bbb60e01b815290602082806119e134853060048501611eeb565b038160006108005af19182156106c457611a0692610e6291600091610e6d5750611f15565b60025460018101809111611a1957600255005b611f53565b3461017257611a566000611a3136610e9b565b90611a3a6128fd565b5060405163120bba7360e11b8152938492839260048401612a97565b03816108005afa9081156106c4576000908192611a7e575b5061069b604051928392836107c0565b90611a9b92503d8091833e611a9381836102cd565b810190612a37565b9038611a6e565b90611ab560209282815194859201610394565b0190565b34610172576020611af581611acd36610e9b565b9060018060a01b03166000526000825260406000208260405194838680955193849201610394565b82019081520301902054604051908152f35b6001600160401b0381160361017257565b359061032c82611b07565b8015150361017257565b359061032c82611b23565b92916040918285018386528151809152606086019060608160051b88010194602080940192600091825b848410611b8057505050505050936104fa93948184039101526116dc565b9091929394978690605f198c8203018552895182611ba5825187855287850190611274565b910151918381830391015282808351928381520192019084905b808210611bde5750505090806001929a01940194019294939190611b62565b919360a060019294828751611c1883825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920189939291611bbf565b346101725760031960803682011261017257611c4761015c565b6001600160401b039060243582811161017257611c6890369060040161074f565b60443583811161017257611c8090369060040161074f565b91606435948486116101725760a09086360301126101725760405193611ca585610246565b85600401359081116101725785019436602387011215610172576084611d1791611cdc611d21983690602460048201359101610718565b8752611cea60248201611b18565b6020880152611cfb60448201611b18565b6040880152611d0c60648201611b2d565b606088015201611b2d565b6080850152612dc6565b9061069b60405192839283611b38565b519061032c82611b23565b9081602091031261017257516104fa81611b23565b9035601e19823603018112156101725701602081359101916001600160401b03821161017257813603831361017257565b908060209392818452848401376000828201840152601f01601f1916010190565b6104fa91611e2a611e1f611e04611de9611dce611dc08780611d51565b60a0885260a0880191611d82565b611ddb6020880188611d51565b908783036020890152611d82565b611df66040870187611d51565b908683036040880152611d82565b611e116060860186611d51565b908583036060870152611d82565b926080810190611d51565b916080818503910152611d82565b6040513d6000823e3d90fd5b9093611eb2611e7693956020956040519788968796637be6aa8b60e11b88526101006004890152610104880190611da3565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c48601526103b7565b9060e4830152038160006108005af19081156106c457600091611ed3575090565b6104fa915060203d8111610e9457610e8681836102cd565b939291611f109060409260018060a01b031686526060602087015260608601906103b7565b930152565b15611f1c57565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b634e487b7160e01b600052601160045260246000fd5b90621baf808201809211611a1957565b611fa79160209160018060a01b03166000526000825260406000208260405194838680955193849201610394565b8201908152030190208054918201809211611a195755565b6000198114611a195760010190565b818110611fd9575050565b60008155600101611fce565b634e487b7160e01b600052600060045260246000fd5b906120635760038161200f600093546101d5565b80612026575b508260018201558260028201550155565b601f811160011461203c57508281555b38612015565b839082825261205a601f60208420920160051c820160018301611fce565b81835555612036565b611fe5565b91908203918211611a1957565b60005b336000526001602090808252604091826000208054851015612197578461209e916101a3565b509142600384015460070b11156120c2575b505050506120bd90611fbf565b612078565b3360009081526001602052604090206120e6906120e09087906101a3565b90611ffb565b828101543360009081526020819052604090209094519360009281549161210c836101d5565b9282811690811561217c5750600114612146575b505050815282900301902080546120bd939261213b91612068565b9055903880806120b0565b600090815285812093945091925b83831061216b5750505083019083816120bd612120565b805487840152918501918101612154565b60ff19168852505050801515028401915083816120bd612120565b5050505050565b51908160070b820361017257565b90816020910312610172576104fa9061219e565b9190601f81116121cf57505050565b61032c926000526020600020906020601f840160051c830193106121fb575b601f0160051c0190611fce565b90915081906121ee565b91903360005260016020918183526040600020926040519561222687610297565b86528086019182526040860193438552606087019560070b86528054600160401b8110156102415761225c9185820181556101a3565b9690966120635751908151916001600160401b0383116102415761228a836122848a546101d5565b8a6121c0565b81601f84116001146122fd57509282600396936122d4969361032c9a99966000926122f2575b505060001982891b1c191690831b1787555b51908601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b0151905038806122b0565b9190601f1984166123138a600052602060002090565b936000905b82821061236057505093869361032c9a9996936122d498938360039b9810612348575b505050811b0187556122c2565b0151600019838b1b60f8161c1916905538808061233b565b808986978294978701518155019601940190612318565b602061239d91336000526000825260406000208260405194838680955193849201610394565b82019081520301902054106123ae57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b1561242057565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b9060018060a01b0382166000526000602052604060002091836040516020818551968287019761248d81848b610394565b82019081520301902054106124e5576001600160a01b03166000908152602081815260409091206124e1936124d093909190604051948593849251928391610394565b820190815203019020918254612068565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fd5b6001600160a01b03909116815260806020820181905292949392606092612553918301906103b7565b9460408201520152565b1561256457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b3360005260019160209083825260408481600020946000965b6125d0575b50505050505050565b8554871015612693576125e387876101a3565b509080600283015403612681575001928354918383106126305750509061260991612068565b8091551561261c575b80808080806125c7565b612629916120e0916101a3565b3880612612565b60849250519062461bcd60e51b82526004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152fd5b905061268d8297611fbf565b966125c2565b6125c7565b1561269f57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b909291926126fd816106fd565b9161270b60405193846102cd565b82948284528282011161017257602061032c930190610394565b9080601f830112156101725781516104fa926020016126f0565b5190600482101561017257565b91909160a081840312610172576127616106d6565b9281516001600160401b03908181116101725782612780918501612725565b85526020830151818111610172578261279a918501612725565b6020860152604083015181811161017257826127b7918501612725565b6040860152606083015181811161017257826127d4918501612725565b60608601526080830151908111610172576127ef9201612725565b6080830152565b919091610160818403126101725761280c6106e3565b928151906001600160401b0391828111610172578161282c918501612725565b855260208301518281116101725781612846918501612725565b602086015261285760408401611d31565b60408601526128686060840161273f565b60608601526080830151608086015260a083015160a086015260c08301519182116101725761289891830161274c565b60c08401526128a960e0820161219e565b60e08401526101006128bc81830161219e565b9084015261012080820151908401526101408091015190830152565b906020828203126101725781516001600160401b038111610172576104fa92016127f6565b6040519061290a826102b2565b6000602083606081520152565b6001600160401b0381116102415760051b60200190565b9190916040818403126101725760405190612948826102b2565b819381516001600160401b0381116101725782019181601f840112156101725761297b60209392838580955191016126f0565b845201519161298983611b07565b0152565b919091604081840312610172578051926001600160401b03938481116101725782019381601f860112156101725784516129c681612917565b906129d460405192836102cd565b808252602096878084019260051b8201019185831161017257888201905b838210612a12575050505094830151908111610172576104fa920161292e565b8151868111610172578a91612a2c898480948801016127f6565b8152019101906129f2565b9190916040818403126101725780519260208201516001600160401b039283821161017257016040818303126101725760405192612a74846102b2565b815190811161017257602092612a8b918301612725565b83520151602082015290565b6001600160a01b0390911681526040602082018190526104fa929101906103b7565b919082608091031261017257604051612ad181610297565b6060808294612adf8161219e565b8452612aed6020820161219e565b6020850152604081015160408501520151910152565b81601f8201121561017257805191612b1a83612917565b92612b2860405194856102cd565b808452602091828086019260071b85010193818511610172578301915b848310612b5457505050505090565b83608091612b628486612ab9565b815201920191612b45565b91909160808184031261017257612b826106f0565b9281516001600160401b03908181116101725782612ba1918501612725565b855260208301518181116101725782612bbb918501612725565b602086015260408301518181116101725782612bd8918501612725565b6040860152606083015190811161017257612bf39201612b03565b6060830152565b906020828203126101725781516001600160401b038111610172576104fa9201612b6d565b919091604080828503126101725781516001600160401b0381116101725784601f828501011215610172578083015190612c5882612917565b92612c65815194856102cd565b82845260208401918760208560051b83890101011161017257602081870101925b60208560051b83890101018410612cba5750505050509260208201516001600160401b038111610172576104fa920161292e565b83516001600160401b038111610172578288010183601f19828c03011261017257835190612ce7826102b2565b60208101516001600160401b038111610172578b6020612d0992840101612b6d565b825284810151906001600160401b03821161017257018a603f82011215610172576020810151612d3881612917565b91612d45875193846102cd565b818352602083018d8860a085028401011161017257818801908e5b8960a086028501018310612d895750505050506020828101919091529082529384019301612c86565b8260a09103126101725760208f9160a092612daf8c5191612da9836102b2565b86612ab9565b81526080850151838201528152019101908e612d60565b612e109493600093612dd66128fd565b50604051630428a14760e21b81526001600160a01b0390931660048401526080602484015291958693849391612e239160848601906103b7565b60031992838683030160448701526103b7565b90838203016064840152608080612e43845160a0855260a08501906103b7565b936001600160401b0380602083015116602086015260408201511660408501526060810151151560608501520151151591015203816108005afa9182156106c4576000908193612e9257509190565b90612eb09293503d8091833e612ea881836102cd565b810190612c1f565b9091565b60609060208152601060208201526f696e76616c69642063616c6c7479706560801b60408201520190565b3d15612f0a573d90612ef0826106fd565b91612efe60405193846102cd565b82523d6000602084013e565b606090565b15612f1657565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b15612f5e57565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b15612faa57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b60405190613006826102b2565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b1561303957565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fdfea2646970667358221220d1e8c1d6b1ef8b01471c4ab06fb8583615d477c90c9b7811388bad4cc56ef39d64736f6c63430008140033", + "bytecode": "0x60806040523461027e57604051602081016001600160401b038111828210176101cc576040819052606081016001600160401b038111828210176101cc57604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760208201526261746560e81b604082015281526003546001600355806001106101e0575b5060035f9081525f51602061327d5f395f51905f52915b600182106100b757604051612fac90816102d18239f35b80518051906001600160401b0382116101cc576100d48554610282565b601f8111610191575b50602090601f83116001146101285792826001949360209386955f9261011d575b50505f19600383901b1c191690841b1786555b019301910190916100a0565b015190505f806100fe565b90601f19831691865f52815f20925f5b8181106101795750936020936001969387969383889510610161575b505050811b018655610111565b01515f1960f88460031b161c191690555f8080610154565b82840151855560019094019360209384019301610138565b6101bc90865f5260205f20601f850160051c810191602086106101c2575b601f0160051c01906102ba565b5f6100dd565b90915081906101af565b634e487b7160e01b5f52604160045260245ffd5b60035f525f51602061327d5f395f51905f52017fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85c5b8181106102225750610089565b8061022f60019254610282565b8061023c575b5001610215565b601f8111831461025157505f81555b5f610235565b61026d90825f5283601f60205f20920160051c820191016102ba565b805f525f602081208183555561024b565b5f80fd5b90600182811c921680156102b0575b602083101461029c57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610291565b8181106102c5575050565b5f81556001016102ba56fe60806040526004361015610011575f80fd5b5f3560e01c8063088b32b1146101545780631904bb2e1461014f57806319b16c4c1461014a5780632345e7d41461014557806329e71c821461014057806331bcbcb31461013b578063455b855114610136578063464d2d0314610131578063569c21e31461012c578063570467ac1461012757806361bc221a1461012257806368ac3df31461011d578063a4603a2e14610118578063af9a90b214610113578063b13d42421461010e578063b3e9823414610109578063b61b519714610104578063cf2753cf146100ff578063ddbaf2c2146100fa5763f732b065146100f5575f80fd5b611b57565b6119f8565b611963565b6118f6565b6117fa565b6116a6565b611543565b6113f1565b611365565b61133a565b611279565b6111ac565b611135565b610f2e565b610d2f565b610c31565b610a2e565b6107b5565b610578565b6103d0565b600435906001600160a01b038216820361016f57565b5f80fd5b60a435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b80548210156101b8575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b90600182811c921680156101fa575b60208310146101e657565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101db565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b0382111761023457604052565b610204565b60a081019081106001600160401b0382111761023457604052565b606081019081106001600160401b0382111761023457604052565b60c081019081106001600160401b0382111761023457604052565b608081019081106001600160401b0382111761023457604052565b604081019081106001600160401b0382111761023457604052565b90601f801991011681019081106001600160401b0382111761023457604052565b9060405191825f8254926102f4846101cc565b808452936001811690811561035f575060011461031b575b50610319925003836102c0565b565b90505f9291925260205f20905f915b818310610343575050906020610319928201015f61030c565b602091935080600191548385890101520191019091849261032a565b90506020925061031994915060ff191682840152151560051b8201015f61030c565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b926103bd606093969592608086526080860190610381565b956020850152604084015260070b910152565b3461016f57604036600319011261016f576103e9610159565b6001600160a01b03165f90815260016020526040902080546024359081101561016f576104159161019f565b5061041f816102e1565b6104426001830154926003600282015491015460070b90604051948594856103a5565b0390f35b9060048210156104535752565b634e487b7160e01b5f52602160045260245ffd5b6104d09160806104bf6104ad61049b610489865160a0875260a0870190610381565b60208701518682036020880152610381565b60408601518582036040870152610381565b60608501518482036060860152610381565b920151906080818403910152610381565b90565b90610140806105376104f361048986516101608752610160870190610381565b60408681015115159086015261051160608701516060870190610446565b6080860151608086015260a086015160a086015260c086015185820360c0870152610467565b60e08086015160070b90850152936101008181015160070b90850152610120810151610120850152015191015290565b9060206104d09281815201906104d3565b3461016f57602036600319011261016f576106375f610595610159565b816101406040516105a581610218565b60608152606060208201528260408201528260608201528260808201528260a08201526040516105d481610239565b6060815260606020820152606060408201526060808201526060608082015260c08201528260e0820152826101008201528261012082015201526040518093819263111d9dbd60e11b835260048301919091602081019260018060a01b03169052565b03816108005afa801561067e57610442915f9161065c575b5060405191829182610567565b61067891503d805f833e61067081836102c0565b810190611e98565b5f61064f565b611ebd565b604051906103196040836102c0565b6040519061031960a0836102c0565b60405190610319610160836102c0565b604051906103196080836102c0565b6001600160401b03811161023457601f01601f191660200190565b9291926106e7826106c0565b916106f560405193846102c0565b82948184528183011161016f578281602093845f960137010152565b9080601f8301121561016f578160206104d0933591016106db565b606060031982011261016f576004356001600160a01b038116810361016f57916024356001600160401b03811161016f578261076a91600401610711565b91604435906001600160401b03821161016f576104d091600401610711565b90815260406020820152606060206107ac84516040808601526080850190610381565b93015191015290565b3461016f576107c33661072c565b91906107cd611ec8565b5060405191602083019363120bba7360e11b8552610801846107f3858560248401611ee1565b03601f1981018652856102c0565b604051610824816108166020820180956119e6565b03601f1981018352826102c0565b5190206040516b19195b1959d85d1958d85b1b60a21b602082019081529061084f81602c8101610816565b519020810361089a575050505f61088992819251906108005af461087a610874611f3e565b91612067565b60208082518301019101611fb5565b905b61044260405192839283610789565b604051691cdd185d1a58d8d85b1b60b21b60208201908152906108c081602a8101610816565b51902081036108f1575050505f6108eb92819251906108005afa61087a6108e5611f3e565b9161201b565b9061088b565b6040516318d85b1b60e21b60208201908152906109118160248101610816565b519020810361093d575050505f6108eb9281925190826108005af161087a610937611f3e565b91611f6d565b9193509150604051602081019061096781610816846008906763616c6c636f646560c01b81520190565b519020036109f65761098d61097a611f03565b6020815191012063ffffffff60e01b1690565b916040602082015191015191604051938452600484015260406024840152603360448401526064830152608482015260c08160a4815f6108005af290805191610100606083015192016040521561016f576109e6610683565b906060825260208201529061088b565b60405162461bcd60e51b815260206004820152601060248201526f696e76616c69642063616c6c7479706560801b6044820152606490fd5b3461016f57606036600319011261016f576004356001600160401b03811161016f57610a5e903690600401610711565b602435906044356001600160401b03811161016f57610a81903690600401610711565b91610a8a612a62565b604051630fb6accf60e21b602082019081529093610abf85610ab1858730602485016120bd565b03601f1981018752866102c0565b604051610ad4816108166020820180956119e6565b51902093610aea610ae4426120fb565b60070b90565b6040516b19195b1959d85d1958d85b1b60a21b6020820190815290610b1281602c8101610816565b5190208603610b515750610b4f94505f610b4992819251906108005af4610b3a610874611f3e565b6020808251830101910161210b565b91612b54565b005b604051691cdd185d1a58d8d85b1b60b21b6020820190815290610b7781602a8101610816565b5190208603610b9f5750610b4f94505f610b4992819251906108005afa610b3a6108e5611f3e565b6040516318d85b1b60e21b6020820190815290610bbf8160248101610816565b5190208603610be85750610b4f94505f610b499281925190826108005af1610b3a610937611f3e565b93946040516020810190610c0f81610816846008906763616c6c636f646560c01b81520190565b519020036109f6575f9182915190826108005af21561016f57610b4f92612b54565b3461016f57604036600319011261016f576004356001600160401b03811161016f57610c61903690600401610711565b602435610c6e8183612cc3565b610c76612a62565b604051630fb6accf60e21b81529060208280610c97848730600485016120bd565b03815f6108005af191821561067e575f92610cfe575b505f8260070b1315610cc257610b4f92612b54565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d2191925060203d602011610d28575b610d1981836102c0565b81019061210b565b905f610cad565b503d610d0f565b606036600319011261016f57610d43610159565b6024356001600160401b03811161016f575f80610d67610db4933690600401610711565b93604435610d73612a62565b60405163a9059cbb60e01b6020820190815233602483015260448201929092528390610da28160648101610816565b51925af1610dae611f3e565b5061211f565b6040516353266bbb60e01b81529060208280610dd5348530600485016120bd565b03815f6108005af191821561067e57610b4f92610df9915f91610e01575b50612172565b349033612d59565b610e23915060203d602011610e29575b610e1b81836102c0565b81019061215d565b5f610df3565b503d610e11565b90604060031983011261016f576004356001600160a01b038116810361016f5791602435906001600160401b03821161016f576104d091600401610711565b90602082526040610ea4610e8f8351606060208701526080860190610381565b6020840151858203601f190184870152610381565b910151916060601f1982840301910152602080835192838152019201905f5b818110610ed05750505090565b909192602060c060019260a08751805160070b83528481015160070b8584015260408101516040840152606081015160608401526001600160401b036080820151166080840152015160070b60a08201520194019101919091610ec3565b3461016f57610f775f610f4036610e30565b90606060408051610f5081610254565b82815260208101839052015260405163a03ffee160e01b8152938492839260048401611ee1565b03816108005afa801561067e575f90610f9b575b6104429060405191829182610e6f565b503d805f833e610fab81836102c0565b81019060208183031261016f578051906001600160401b03821161016f570160608183031261016f5760405190610fe182610254565b80516001600160401b03811161016f5783610ffd918301611ca5565b825260208101516001600160401b03811161016f578361101e918301611ca5565b60208301526040810151906001600160401b03821161016f57019180601f8401121561016f57825192611050846121b0565b9161105e60405193846102c0565b848352602060c081850196028301019181831161016f57602001945b8286106110935750505061044292506040820152610f8b565b60c08683031261016f57602060c0916040516110ae8161026f565b6110b789611d9b565b81526110c4838a01611d9b565b83820152604089015160408201526060890151606082015260808901516110ea81611a3a565b60808201526110fb60a08a01611d9b565b60a082015281520195019461107a565b602060031982011261016f57600435906001600160401b03821161016f576104d091600401610711565b61113e3661110b565b611146612a62565b6040516353266bbb60e01b81529060208280611167348530600485016120bd565b03815f6108005af191821561067e5761118a92610df9915f91610e015750612172565b5f34156111a3575b5f8080809334903390f11561067e57005b506108fc611192565b6111b53661110b565b610db4612a62565b60606111fc6111ea6111d88451608087526080870190610381565b60208501518682036020880152610381565b60408401518582036040870152610381565b910151916060818303910152602080835192838152019201905f5b8181106112245750505090565b909192602060808261125d600194885160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b019401929101611217565b9060206104d09281815201906111bd565b3461016f576112e15f6112f361128e3661072c565b6060806040959395516112a08161028a565b81815281602082015281604082015201526040519586948594631f67e4e760e21b865260018060a01b03166004860152606060248601526064850190610381565b83810360031901604485015290610381565b03816108005afa801561067e57610442915f91611318575b5060405191829182611268565b61133491503d805f833e61132c81836102c0565b810190612319565b5f61130b565b3461016f575f36600319011261016f576020600254604051908152f35b908160a091031261016f5790565b3461016f5761010036600319011261016f576004356001600160401b03811161016f57611396903690600401611357565b606036602319011261016f576084356113ad610173565b9160c435916001600160401b03831161016f57610442936113d56113df943690600401610711565b9160e43593612424565b60405190151581529081906020820190565b3461016f57606036600319011261016f576004356001600160401b03811161016f57611421903690600401610711565b60243560443561142f612a62565b5f915f5b335f52600160205260405f205481101561153157335f90815260016020526040902061146590829061019f565b61019f565b5061148686611473836102e1565b6020815191012090602081519101201490565b9081611518575b5061149a57600101611433565b50915060208282946114b16001805b151514612d93565b6114d0604051968793849363096ac6ff60e11b855230600486016124ca565b03815f6108005af192831561067e57610b4f936114f4915f916114f9575b506124fd565b612e45565b611512915060203d602011610e2957610e1b81836102c0565b5f6114ee565b60030154611529915060070b610ae4565b42105f61148d565b50918282946114b160016020946114a9565b3461016f57608036600319011261016f576004356001600160401b03811161016f57611573903690600401611357565b60206115ab611580610189565b9260443593606435604051632943c16b60e21b8152608060048201529586948594608486019061238f565b6001600160a01b0390931660248501526044840152606483015203815f6108005af1801561067e57610442915f916115f1575b5060405190151581529081906020820190565b61160a915060203d602011610e2957610e1b81836102c0565b5f6115de565b9060206001600160401b038161162f8551604086526040860190610381565b9401511691015290565b929160408401936040815282518095526060810194602060608260051b8401019401905f5b81811061167b575050506104d09394506020818403910152611610565b909194602080611697600193605f19888203018c5289516104d3565b9701980191019691909661165e565b3461016f57604036600319011261016f576004356001600160401b03811161016f576116d6903690600401610711565b6024356001600160401b03811161016f576117266116f95f923690600401611357565b92611702611ec8565b50604051938492839263186b216760e01b8452604060048501526044840190610381565b828103600319016024840152608080611750611742858061233e565b60a0865260a086019161236f565b936001600160401b03602082013561176781611a3a565b1660208501526001600160401b03604082013561178381611a3a565b166040850152606081013561179781611a56565b1515606085015201356117a981611a56565b151591015203816108005afa90811561067e575f905f926117d5575b5061044260405192839283611639565b90506117f391503d805f833e6117eb81836102c0565b8101906125a8565b905f6117c5565b3461016f57606036600319011261016f576004356001600160401b03811161016f5761182a903690600401610711565b6024356001600160401b03811161016f57611849903690600401610711565b604435906118578284612cc3565b6040516354b826f560e01b815230600482015260806024820152602081806118976118856084830189610381565b82810360031901604484015286610381565b86606483015203815f6108005af190811561067e57610b4f946118cb5f6118d194879482916118d7575b5060070b1361265e565b33612ebd565b33612d59565b6118f0915060203d602011610d2857610d1981836102c0565b5f6118c1565b6118ff3661110b565b611907612a62565b6040516353266bbb60e01b81529060208280611928348530600485016120bd565b03815f6108005af191821561067e5761194b92610df9915f91610e015750612172565b6002546001810180911161195e57600255005b6120e7565b3461016f5761199a5f61197536610e30565b9061197e611ec8565b5060405163120bba7360e11b8152938492839260048401611ee1565b03816108005afa90811561067e575f905f926119c1575b5061044260405192839283610789565b90506119df91503d805f833e6119d781836102c0565b810190611fb5565b905f6119b1565b805191908290602001825e015f815290565b3461016f576020611a2a81611a0c36610e30565b9060018060a01b03165f525f825260405f20604051938480936119e6565b9081520301902054604051908152f35b6001600160401b0381160361016f57565b359061031982611a3a565b8015150361016f57565b359061031982611a56565b9291604084016040855282518091526060850190602060608260051b8801019401915f905b828210611aad57505050508360206104d094958403910152611610565b90919294605f1988820301825285516020611ad182516040855260408501906111bd565b91015182820360209384015280518083529183019201905f905b808210611b0957505050602080600192970192019201909291611a90565b909192602060a0600192828751611b4583825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920190611aeb565b3461016f57608036600319011261016f57611b70610159565b6024356001600160401b03811161016f57611b8f903690600401610711565b906044356001600160401b03811161016f57611baf903690600401610711565b606435926001600160401b03841161016f5760a0600319853603011261016f5760405192611bdc84610239565b84600401356001600160401b03811161016f578501943660238701121561016f576084611c5591611c1a611c5f9836906024600482013591016106db565b8752611c2860248201611a4b565b6020880152611c3960448201611a4b565b6040880152611c4a60648201611a60565b606088015201611a60565b6080850152612831565b9061044260405192839283611a6b565b929192611c7b826106c0565b91611c8960405193846102c0565b82948184528183011161016f578281602093845f96015e010152565b9080601f8301121561016f5781516104d092602001611c6f565b519061031982611a56565b5190600482101561016f57565b91909160a08184031261016f57611cec610692565b9281516001600160401b03811161016f5781611d09918401611ca5565b845260208201516001600160401b03811161016f5781611d2a918401611ca5565b602085015260408201516001600160401b03811161016f5781611d4e918401611ca5565b604085015260608201516001600160401b03811161016f5781611d72918401611ca5565b606085015260808201516001600160401b03811161016f57611d949201611ca5565b6080830152565b51908160070b820361016f57565b91906101608382031261016f57611dbe6106a1565b9280516001600160401b03811161016f5782611ddb918301611ca5565b845260208101516001600160401b03811161016f5782611dfc918301611ca5565b6020850152611e0d60408201611cbf565b6040850152611e1e60608201611cca565b60608501526080810151608085015260a081015160a085015260c08101516001600160401b03811161016f5761014092611e59918301611cd7565b60c0850152611e6a60e08201611d9b565b60e0850152611e7c6101008201611d9b565b6101008501526101208101516101208501520151610140830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201611da9565b6040513d5f823e3d90fd5b60405190611ed5826102a5565b5f602083606081520152565b6001600160a01b0390911681526040602082018190526104d092910190610381565b60405190611f126040836102c0565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b3d15611f68573d90611f4f826106c0565b91611f5d60405193846102c0565b82523d5f602084013e565b606090565b15611f7457565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b919060408382031261016f578251926020810151906001600160401b03821161016f57019060408282031261016f5760405191611ff1836102a5565b80516001600160401b03811161016f5760209261200f918301611ca5565b83520151602082015290565b1561202257565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b1561206e57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b9392916120e29060409260018060a01b03168652606060208701526060860190610381565b930152565b634e487b7160e01b5f52601160045260245ffd5b90621baf80820180921161195e57565b9081602091031261016f576104d090611d9b565b1561212657565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b9081602091031261016f57516104d081611a56565b1561217957565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b6001600160401b0381116102345760051b60200190565b919082608091031261016f576040516121df8161028a565b60608082946121ed81611d9b565b84526121fb60208201611d9b565b6020850152604081015160408501520151910152565b81601f8201121561016f578051612227816121b0565b9261223560405194856102c0565b81845260208085019260071b8401019281841161016f57602001915b83831061225f575050505090565b602060809161226e84866121c7565b815201920191612251565b91909160808184031261016f5761228e6106b1565b9281516001600160401b03811161016f57816122ab918401611ca5565b845260208201516001600160401b03811161016f57816122cc918401611ca5565b602085015260408201516001600160401b03811161016f57816122f0918401611ca5565b604085015260608201516001600160401b03811161016f576123129201612211565b6060830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201612279565b9035601e198236030181121561016f5701602081359101916001600160401b03821161016f57813603831361016f57565b908060209392818452848401375f828201840152601f01601f1916010190565b6104d09161241661240b6123f06123d56123ba6123ac878061233e565b60a0885260a088019161236f565b6123c7602088018861233e565b90878303602089015261236f565b6123e2604087018761233e565b90868303604088015261236f565b6123fd606086018661233e565b90858303606087015261236f565b92608081019061233e565b91608081850391015261236f565b909361249261245693956020956040519788968796637be6aa8b60e11b8852610100600489015261010488019061238f565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c4860152610381565b9060e483015203815f6108005af190811561067e575f916124b1575090565b6104d0915060203d602011610e2957610e1b81836102c0565b6001600160a01b039091168152608060208201819052929493926060926124f391830190610381565b9460408201520152565b1561250457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b91909160408184031261016f5760405190612563826102a5565b819381516001600160401b03811161016f5782019181601f8401121561016f576125966020939283858095519101611c6f565b84520151916125a483611a3a565b0152565b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f5780516125dd816121b0565b916125eb60405193846102c0565b81835260208084019260051b8201019186831161016f5760208201905b83821061263157505050509260208201516001600160401b03811161016f576104d09201612549565b81516001600160401b03811161016f576020916126538a848094880101611da9565b815201910190612608565b1561266557565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f578051906126d7826121b0565b916126e560405193846102c0565b80835260208084019160051b8301019186831161016f5760208101915b83831061272b57505050509260208201516001600160401b03811161016f576104d09201612549565b82516001600160401b03811161016f5782016040818a03601f19011261016f5760405190612758826102a5565b60208101516001600160401b03811161016f578a602061277a92840101612279565b825260408101516001600160401b03811161016f57602091010189601f8201121561016f5780516127aa816121b0565b916127b860405193846102c0565b818352602060a08185019302820101908c821161016f57602001915b8c8284106127f5575050505091816020938480940152815201920191612702565b8360a091031261016f57602060a0918e61281b60405191612815836102a5565b876121c7565b81526080860151838201528152019201916127d4565b61287a949361288c5f94612843611ec8565b50604051630428a14760e21b81526001600160a01b0390941660048501526080602485015292968794859491906084860190610381565b84810360031901604486015290610381565b6003198382030160648401526080806128ae845160a0855260a0850190610381565b936001600160401b0360208201511660208501526001600160401b0360408201511660408501526060810151151560608501520151151591015203816108005afa91821561067e575f905f9361290357509190565b90506129229192503d805f833e61291a81836102c0565b8101906126a1565b9091565b818110612931575050565b5f8155600101612926565b634e487b7160e01b5f525f60045260245ffd5b906129cb576003816129625f93546101cc565b80612979575b508260018201558260028201550155565b601f811160011461298f57508281555b5f612968565b818452602084206129ab91601f0160051c810190600101612926565b808352826020812080548260011b90831984871b1c191617835555612989565b61293c565b9060405180925f908054906129e4826101cc565b9160018116908115612a3d5750600114612a07575b505060209281520301902090565b9091505f5260205f205f905b828210612a26575050810160205f6129f9565b805482870152859350602090910190600101612a13565b60ff191685525050801515028201905060205f6129f9565b9190820391821161195e57565b5f5b335f52600160205260405f2054811015612b0e5780612a996001926114603360018060a01b03165f52600160205260405f2090565b50600381015460070b421015612ab1575b5001612a64565b335f908152600160205260409020612ad490612ace90849061019f565b9061294f565b612b06612afe8483015492612af83360018060a01b03165f525f60205260405f2090565b906129d0565b918254612a55565b90555f612aaa565b50565b9190601f8111612b2057505050565b610319925f5260205f20906020601f840160051c83019310612b4a575b601f0160051c0190612926565b9091508190612b3d565b909291335f52600160205260405f2060405192612b708461028a565b8352602083019485526040830190438252606084019260070b83528054600160401b81101561023457612ba89160018201815561019f565b9390936129cb57519485516001600160401b03811161023457612bd581612bcf87546101cc565b87612b11565b6020601f8211600114612c4f5791612c1082612c269593600397956103199a9b5f92612c44575b50508160011b915f199060031b1c19161790565b86555b5160018601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b015190505f80612bfc565b601f19821697612c62875f5260205f2090565b985f5b818110612cab5750926103199899600397959360019383612c26999710612c94575b505050811b018655612c13565b01515f19838a1b60f8161c191690555f8080612c87565b838301518b556001909a019960209384019301612c65565b6020612cdf91335f525f825260405f20604051938480936119e6565b908152030190205410612cee57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b612d7d9160209160018060a01b03165f525f825260405f20604051938480936119e6565b90815203019020805491820180921161195e5755565b15612d9a57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b15612df257565b60405162461bcd60e51b815260206004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152608490fd5b90335f52600160205260405f20905f925b8254841015612eb757612e69848461019f565b509080600283015403612eab57506001612e929101918254612e8d82821015612deb565b612a55565b81555415612e9e575050565b61031991612ace9161019f565b93600191500192612e56565b50505050565b9060018060a01b0382165f525f6020528260405f2060206040518092612ee382876119e6565b908152030190205410612f31576020612f1e91612f12612f2d9460018060a01b03165f525f60205260405f2090565b604051938480936119e6565b90815203019020918254612a55565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fdfea2646970667358221220384e62817f17bd4369dd405c5c4b4e4f46276f274516e89765a2049539c965c964736f6c634300081c0033c2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063088b32b1146101545780631904bb2e1461014f57806319b16c4c1461014a5780632345e7d41461014557806329e71c821461014057806331bcbcb31461013b578063455b855114610136578063464d2d0314610131578063569c21e31461012c578063570467ac1461012757806361bc221a1461012257806368ac3df31461011d578063a4603a2e14610118578063af9a90b214610113578063b13d42421461010e578063b3e9823414610109578063b61b519714610104578063cf2753cf146100ff578063ddbaf2c2146100fa5763f732b065146100f5575f80fd5b611b57565b6119f8565b611963565b6118f6565b6117fa565b6116a6565b611543565b6113f1565b611365565b61133a565b611279565b6111ac565b611135565b610f2e565b610d2f565b610c31565b610a2e565b6107b5565b610578565b6103d0565b600435906001600160a01b038216820361016f57565b5f80fd5b60a435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b80548210156101b8575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b90600182811c921680156101fa575b60208310146101e657565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101db565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b0382111761023457604052565b610204565b60a081019081106001600160401b0382111761023457604052565b606081019081106001600160401b0382111761023457604052565b60c081019081106001600160401b0382111761023457604052565b608081019081106001600160401b0382111761023457604052565b604081019081106001600160401b0382111761023457604052565b90601f801991011681019081106001600160401b0382111761023457604052565b9060405191825f8254926102f4846101cc565b808452936001811690811561035f575060011461031b575b50610319925003836102c0565b565b90505f9291925260205f20905f915b818310610343575050906020610319928201015f61030c565b602091935080600191548385890101520191019091849261032a565b90506020925061031994915060ff191682840152151560051b8201015f61030c565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b926103bd606093969592608086526080860190610381565b956020850152604084015260070b910152565b3461016f57604036600319011261016f576103e9610159565b6001600160a01b03165f90815260016020526040902080546024359081101561016f576104159161019f565b5061041f816102e1565b6104426001830154926003600282015491015460070b90604051948594856103a5565b0390f35b9060048210156104535752565b634e487b7160e01b5f52602160045260245ffd5b6104d09160806104bf6104ad61049b610489865160a0875260a0870190610381565b60208701518682036020880152610381565b60408601518582036040870152610381565b60608501518482036060860152610381565b920151906080818403910152610381565b90565b90610140806105376104f361048986516101608752610160870190610381565b60408681015115159086015261051160608701516060870190610446565b6080860151608086015260a086015160a086015260c086015185820360c0870152610467565b60e08086015160070b90850152936101008181015160070b90850152610120810151610120850152015191015290565b9060206104d09281815201906104d3565b3461016f57602036600319011261016f576106375f610595610159565b816101406040516105a581610218565b60608152606060208201528260408201528260608201528260808201528260a08201526040516105d481610239565b6060815260606020820152606060408201526060808201526060608082015260c08201528260e0820152826101008201528261012082015201526040518093819263111d9dbd60e11b835260048301919091602081019260018060a01b03169052565b03816108005afa801561067e57610442915f9161065c575b5060405191829182610567565b61067891503d805f833e61067081836102c0565b810190611e98565b5f61064f565b611ebd565b604051906103196040836102c0565b6040519061031960a0836102c0565b60405190610319610160836102c0565b604051906103196080836102c0565b6001600160401b03811161023457601f01601f191660200190565b9291926106e7826106c0565b916106f560405193846102c0565b82948184528183011161016f578281602093845f960137010152565b9080601f8301121561016f578160206104d0933591016106db565b606060031982011261016f576004356001600160a01b038116810361016f57916024356001600160401b03811161016f578261076a91600401610711565b91604435906001600160401b03821161016f576104d091600401610711565b90815260406020820152606060206107ac84516040808601526080850190610381565b93015191015290565b3461016f576107c33661072c565b91906107cd611ec8565b5060405191602083019363120bba7360e11b8552610801846107f3858560248401611ee1565b03601f1981018652856102c0565b604051610824816108166020820180956119e6565b03601f1981018352826102c0565b5190206040516b19195b1959d85d1958d85b1b60a21b602082019081529061084f81602c8101610816565b519020810361089a575050505f61088992819251906108005af461087a610874611f3e565b91612067565b60208082518301019101611fb5565b905b61044260405192839283610789565b604051691cdd185d1a58d8d85b1b60b21b60208201908152906108c081602a8101610816565b51902081036108f1575050505f6108eb92819251906108005afa61087a6108e5611f3e565b9161201b565b9061088b565b6040516318d85b1b60e21b60208201908152906109118160248101610816565b519020810361093d575050505f6108eb9281925190826108005af161087a610937611f3e565b91611f6d565b9193509150604051602081019061096781610816846008906763616c6c636f646560c01b81520190565b519020036109f65761098d61097a611f03565b6020815191012063ffffffff60e01b1690565b916040602082015191015191604051938452600484015260406024840152603360448401526064830152608482015260c08160a4815f6108005af290805191610100606083015192016040521561016f576109e6610683565b906060825260208201529061088b565b60405162461bcd60e51b815260206004820152601060248201526f696e76616c69642063616c6c7479706560801b6044820152606490fd5b3461016f57606036600319011261016f576004356001600160401b03811161016f57610a5e903690600401610711565b602435906044356001600160401b03811161016f57610a81903690600401610711565b91610a8a612a62565b604051630fb6accf60e21b602082019081529093610abf85610ab1858730602485016120bd565b03601f1981018752866102c0565b604051610ad4816108166020820180956119e6565b51902093610aea610ae4426120fb565b60070b90565b6040516b19195b1959d85d1958d85b1b60a21b6020820190815290610b1281602c8101610816565b5190208603610b515750610b4f94505f610b4992819251906108005af4610b3a610874611f3e565b6020808251830101910161210b565b91612b54565b005b604051691cdd185d1a58d8d85b1b60b21b6020820190815290610b7781602a8101610816565b5190208603610b9f5750610b4f94505f610b4992819251906108005afa610b3a6108e5611f3e565b6040516318d85b1b60e21b6020820190815290610bbf8160248101610816565b5190208603610be85750610b4f94505f610b499281925190826108005af1610b3a610937611f3e565b93946040516020810190610c0f81610816846008906763616c6c636f646560c01b81520190565b519020036109f6575f9182915190826108005af21561016f57610b4f92612b54565b3461016f57604036600319011261016f576004356001600160401b03811161016f57610c61903690600401610711565b602435610c6e8183612cc3565b610c76612a62565b604051630fb6accf60e21b81529060208280610c97848730600485016120bd565b03815f6108005af191821561067e575f92610cfe575b505f8260070b1315610cc257610b4f92612b54565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d2191925060203d602011610d28575b610d1981836102c0565b81019061210b565b905f610cad565b503d610d0f565b606036600319011261016f57610d43610159565b6024356001600160401b03811161016f575f80610d67610db4933690600401610711565b93604435610d73612a62565b60405163a9059cbb60e01b6020820190815233602483015260448201929092528390610da28160648101610816565b51925af1610dae611f3e565b5061211f565b6040516353266bbb60e01b81529060208280610dd5348530600485016120bd565b03815f6108005af191821561067e57610b4f92610df9915f91610e01575b50612172565b349033612d59565b610e23915060203d602011610e29575b610e1b81836102c0565b81019061215d565b5f610df3565b503d610e11565b90604060031983011261016f576004356001600160a01b038116810361016f5791602435906001600160401b03821161016f576104d091600401610711565b90602082526040610ea4610e8f8351606060208701526080860190610381565b6020840151858203601f190184870152610381565b910151916060601f1982840301910152602080835192838152019201905f5b818110610ed05750505090565b909192602060c060019260a08751805160070b83528481015160070b8584015260408101516040840152606081015160608401526001600160401b036080820151166080840152015160070b60a08201520194019101919091610ec3565b3461016f57610f775f610f4036610e30565b90606060408051610f5081610254565b82815260208101839052015260405163a03ffee160e01b8152938492839260048401611ee1565b03816108005afa801561067e575f90610f9b575b6104429060405191829182610e6f565b503d805f833e610fab81836102c0565b81019060208183031261016f578051906001600160401b03821161016f570160608183031261016f5760405190610fe182610254565b80516001600160401b03811161016f5783610ffd918301611ca5565b825260208101516001600160401b03811161016f578361101e918301611ca5565b60208301526040810151906001600160401b03821161016f57019180601f8401121561016f57825192611050846121b0565b9161105e60405193846102c0565b848352602060c081850196028301019181831161016f57602001945b8286106110935750505061044292506040820152610f8b565b60c08683031261016f57602060c0916040516110ae8161026f565b6110b789611d9b565b81526110c4838a01611d9b565b83820152604089015160408201526060890151606082015260808901516110ea81611a3a565b60808201526110fb60a08a01611d9b565b60a082015281520195019461107a565b602060031982011261016f57600435906001600160401b03821161016f576104d091600401610711565b61113e3661110b565b611146612a62565b6040516353266bbb60e01b81529060208280611167348530600485016120bd565b03815f6108005af191821561067e5761118a92610df9915f91610e015750612172565b5f34156111a3575b5f8080809334903390f11561067e57005b506108fc611192565b6111b53661110b565b610db4612a62565b60606111fc6111ea6111d88451608087526080870190610381565b60208501518682036020880152610381565b60408401518582036040870152610381565b910151916060818303910152602080835192838152019201905f5b8181106112245750505090565b909192602060808261125d600194885160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b019401929101611217565b9060206104d09281815201906111bd565b3461016f576112e15f6112f361128e3661072c565b6060806040959395516112a08161028a565b81815281602082015281604082015201526040519586948594631f67e4e760e21b865260018060a01b03166004860152606060248601526064850190610381565b83810360031901604485015290610381565b03816108005afa801561067e57610442915f91611318575b5060405191829182611268565b61133491503d805f833e61132c81836102c0565b810190612319565b5f61130b565b3461016f575f36600319011261016f576020600254604051908152f35b908160a091031261016f5790565b3461016f5761010036600319011261016f576004356001600160401b03811161016f57611396903690600401611357565b606036602319011261016f576084356113ad610173565b9160c435916001600160401b03831161016f57610442936113d56113df943690600401610711565b9160e43593612424565b60405190151581529081906020820190565b3461016f57606036600319011261016f576004356001600160401b03811161016f57611421903690600401610711565b60243560443561142f612a62565b5f915f5b335f52600160205260405f205481101561153157335f90815260016020526040902061146590829061019f565b61019f565b5061148686611473836102e1565b6020815191012090602081519101201490565b9081611518575b5061149a57600101611433565b50915060208282946114b16001805b151514612d93565b6114d0604051968793849363096ac6ff60e11b855230600486016124ca565b03815f6108005af192831561067e57610b4f936114f4915f916114f9575b506124fd565b612e45565b611512915060203d602011610e2957610e1b81836102c0565b5f6114ee565b60030154611529915060070b610ae4565b42105f61148d565b50918282946114b160016020946114a9565b3461016f57608036600319011261016f576004356001600160401b03811161016f57611573903690600401611357565b60206115ab611580610189565b9260443593606435604051632943c16b60e21b8152608060048201529586948594608486019061238f565b6001600160a01b0390931660248501526044840152606483015203815f6108005af1801561067e57610442915f916115f1575b5060405190151581529081906020820190565b61160a915060203d602011610e2957610e1b81836102c0565b5f6115de565b9060206001600160401b038161162f8551604086526040860190610381565b9401511691015290565b929160408401936040815282518095526060810194602060608260051b8401019401905f5b81811061167b575050506104d09394506020818403910152611610565b909194602080611697600193605f19888203018c5289516104d3565b9701980191019691909661165e565b3461016f57604036600319011261016f576004356001600160401b03811161016f576116d6903690600401610711565b6024356001600160401b03811161016f576117266116f95f923690600401611357565b92611702611ec8565b50604051938492839263186b216760e01b8452604060048501526044840190610381565b828103600319016024840152608080611750611742858061233e565b60a0865260a086019161236f565b936001600160401b03602082013561176781611a3a565b1660208501526001600160401b03604082013561178381611a3a565b166040850152606081013561179781611a56565b1515606085015201356117a981611a56565b151591015203816108005afa90811561067e575f905f926117d5575b5061044260405192839283611639565b90506117f391503d805f833e6117eb81836102c0565b8101906125a8565b905f6117c5565b3461016f57606036600319011261016f576004356001600160401b03811161016f5761182a903690600401610711565b6024356001600160401b03811161016f57611849903690600401610711565b604435906118578284612cc3565b6040516354b826f560e01b815230600482015260806024820152602081806118976118856084830189610381565b82810360031901604484015286610381565b86606483015203815f6108005af190811561067e57610b4f946118cb5f6118d194879482916118d7575b5060070b1361265e565b33612ebd565b33612d59565b6118f0915060203d602011610d2857610d1981836102c0565b5f6118c1565b6118ff3661110b565b611907612a62565b6040516353266bbb60e01b81529060208280611928348530600485016120bd565b03815f6108005af191821561067e5761194b92610df9915f91610e015750612172565b6002546001810180911161195e57600255005b6120e7565b3461016f5761199a5f61197536610e30565b9061197e611ec8565b5060405163120bba7360e11b8152938492839260048401611ee1565b03816108005afa90811561067e575f905f926119c1575b5061044260405192839283610789565b90506119df91503d805f833e6119d781836102c0565b810190611fb5565b905f6119b1565b805191908290602001825e015f815290565b3461016f576020611a2a81611a0c36610e30565b9060018060a01b03165f525f825260405f20604051938480936119e6565b9081520301902054604051908152f35b6001600160401b0381160361016f57565b359061031982611a3a565b8015150361016f57565b359061031982611a56565b9291604084016040855282518091526060850190602060608260051b8801019401915f905b828210611aad57505050508360206104d094958403910152611610565b90919294605f1988820301825285516020611ad182516040855260408501906111bd565b91015182820360209384015280518083529183019201905f905b808210611b0957505050602080600192970192019201909291611a90565b909192602060a0600192828751611b4583825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920190611aeb565b3461016f57608036600319011261016f57611b70610159565b6024356001600160401b03811161016f57611b8f903690600401610711565b906044356001600160401b03811161016f57611baf903690600401610711565b606435926001600160401b03841161016f5760a0600319853603011261016f5760405192611bdc84610239565b84600401356001600160401b03811161016f578501943660238701121561016f576084611c5591611c1a611c5f9836906024600482013591016106db565b8752611c2860248201611a4b565b6020880152611c3960448201611a4b565b6040880152611c4a60648201611a60565b606088015201611a60565b6080850152612831565b9061044260405192839283611a6b565b929192611c7b826106c0565b91611c8960405193846102c0565b82948184528183011161016f578281602093845f96015e010152565b9080601f8301121561016f5781516104d092602001611c6f565b519061031982611a56565b5190600482101561016f57565b91909160a08184031261016f57611cec610692565b9281516001600160401b03811161016f5781611d09918401611ca5565b845260208201516001600160401b03811161016f5781611d2a918401611ca5565b602085015260408201516001600160401b03811161016f5781611d4e918401611ca5565b604085015260608201516001600160401b03811161016f5781611d72918401611ca5565b606085015260808201516001600160401b03811161016f57611d949201611ca5565b6080830152565b51908160070b820361016f57565b91906101608382031261016f57611dbe6106a1565b9280516001600160401b03811161016f5782611ddb918301611ca5565b845260208101516001600160401b03811161016f5782611dfc918301611ca5565b6020850152611e0d60408201611cbf565b6040850152611e1e60608201611cca565b60608501526080810151608085015260a081015160a085015260c08101516001600160401b03811161016f5761014092611e59918301611cd7565b60c0850152611e6a60e08201611d9b565b60e0850152611e7c6101008201611d9b565b6101008501526101208101516101208501520151610140830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201611da9565b6040513d5f823e3d90fd5b60405190611ed5826102a5565b5f602083606081520152565b6001600160a01b0390911681526040602082018190526104d092910190610381565b60405190611f126040836102c0565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b3d15611f68573d90611f4f826106c0565b91611f5d60405193846102c0565b82523d5f602084013e565b606090565b15611f7457565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b919060408382031261016f578251926020810151906001600160401b03821161016f57019060408282031261016f5760405191611ff1836102a5565b80516001600160401b03811161016f5760209261200f918301611ca5565b83520151602082015290565b1561202257565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b1561206e57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b9392916120e29060409260018060a01b03168652606060208701526060860190610381565b930152565b634e487b7160e01b5f52601160045260245ffd5b90621baf80820180921161195e57565b9081602091031261016f576104d090611d9b565b1561212657565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b9081602091031261016f57516104d081611a56565b1561217957565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b6001600160401b0381116102345760051b60200190565b919082608091031261016f576040516121df8161028a565b60608082946121ed81611d9b565b84526121fb60208201611d9b565b6020850152604081015160408501520151910152565b81601f8201121561016f578051612227816121b0565b9261223560405194856102c0565b81845260208085019260071b8401019281841161016f57602001915b83831061225f575050505090565b602060809161226e84866121c7565b815201920191612251565b91909160808184031261016f5761228e6106b1565b9281516001600160401b03811161016f57816122ab918401611ca5565b845260208201516001600160401b03811161016f57816122cc918401611ca5565b602085015260408201516001600160401b03811161016f57816122f0918401611ca5565b604085015260608201516001600160401b03811161016f576123129201612211565b6060830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201612279565b9035601e198236030181121561016f5701602081359101916001600160401b03821161016f57813603831361016f57565b908060209392818452848401375f828201840152601f01601f1916010190565b6104d09161241661240b6123f06123d56123ba6123ac878061233e565b60a0885260a088019161236f565b6123c7602088018861233e565b90878303602089015261236f565b6123e2604087018761233e565b90868303604088015261236f565b6123fd606086018661233e565b90858303606087015261236f565b92608081019061233e565b91608081850391015261236f565b909361249261245693956020956040519788968796637be6aa8b60e11b8852610100600489015261010488019061238f565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c4860152610381565b9060e483015203815f6108005af190811561067e575f916124b1575090565b6104d0915060203d602011610e2957610e1b81836102c0565b6001600160a01b039091168152608060208201819052929493926060926124f391830190610381565b9460408201520152565b1561250457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b91909160408184031261016f5760405190612563826102a5565b819381516001600160401b03811161016f5782019181601f8401121561016f576125966020939283858095519101611c6f565b84520151916125a483611a3a565b0152565b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f5780516125dd816121b0565b916125eb60405193846102c0565b81835260208084019260051b8201019186831161016f5760208201905b83821061263157505050509260208201516001600160401b03811161016f576104d09201612549565b81516001600160401b03811161016f576020916126538a848094880101611da9565b815201910190612608565b1561266557565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f578051906126d7826121b0565b916126e560405193846102c0565b80835260208084019160051b8301019186831161016f5760208101915b83831061272b57505050509260208201516001600160401b03811161016f576104d09201612549565b82516001600160401b03811161016f5782016040818a03601f19011261016f5760405190612758826102a5565b60208101516001600160401b03811161016f578a602061277a92840101612279565b825260408101516001600160401b03811161016f57602091010189601f8201121561016f5780516127aa816121b0565b916127b860405193846102c0565b818352602060a08185019302820101908c821161016f57602001915b8c8284106127f5575050505091816020938480940152815201920191612702565b8360a091031261016f57602060a0918e61281b60405191612815836102a5565b876121c7565b81526080860151838201528152019201916127d4565b61287a949361288c5f94612843611ec8565b50604051630428a14760e21b81526001600160a01b0390941660048501526080602485015292968794859491906084860190610381565b84810360031901604486015290610381565b6003198382030160648401526080806128ae845160a0855260a0850190610381565b936001600160401b0360208201511660208501526001600160401b0360408201511660408501526060810151151560608501520151151591015203816108005afa91821561067e575f905f9361290357509190565b90506129229192503d805f833e61291a81836102c0565b8101906126a1565b9091565b818110612931575050565b5f8155600101612926565b634e487b7160e01b5f525f60045260245ffd5b906129cb576003816129625f93546101cc565b80612979575b508260018201558260028201550155565b601f811160011461298f57508281555b5f612968565b818452602084206129ab91601f0160051c810190600101612926565b808352826020812080548260011b90831984871b1c191617835555612989565b61293c565b9060405180925f908054906129e4826101cc565b9160018116908115612a3d5750600114612a07575b505060209281520301902090565b9091505f5260205f205f905b828210612a26575050810160205f6129f9565b805482870152859350602090910190600101612a13565b60ff191685525050801515028201905060205f6129f9565b9190820391821161195e57565b5f5b335f52600160205260405f2054811015612b0e5780612a996001926114603360018060a01b03165f52600160205260405f2090565b50600381015460070b421015612ab1575b5001612a64565b335f908152600160205260409020612ad490612ace90849061019f565b9061294f565b612b06612afe8483015492612af83360018060a01b03165f525f60205260405f2090565b906129d0565b918254612a55565b90555f612aaa565b50565b9190601f8111612b2057505050565b610319925f5260205f20906020601f840160051c83019310612b4a575b601f0160051c0190612926565b9091508190612b3d565b909291335f52600160205260405f2060405192612b708461028a565b8352602083019485526040830190438252606084019260070b83528054600160401b81101561023457612ba89160018201815561019f565b9390936129cb57519485516001600160401b03811161023457612bd581612bcf87546101cc565b87612b11565b6020601f8211600114612c4f5791612c1082612c269593600397956103199a9b5f92612c44575b50508160011b915f199060031b1c19161790565b86555b5160018601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b015190505f80612bfc565b601f19821697612c62875f5260205f2090565b985f5b818110612cab5750926103199899600397959360019383612c26999710612c94575b505050811b018655612c13565b01515f19838a1b60f8161c191690555f8080612c87565b838301518b556001909a019960209384019301612c65565b6020612cdf91335f525f825260405f20604051938480936119e6565b908152030190205410612cee57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b612d7d9160209160018060a01b03165f525f825260405f20604051938480936119e6565b90815203019020805491820180921161195e5755565b15612d9a57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b15612df257565b60405162461bcd60e51b815260206004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152608490fd5b90335f52600160205260405f20905f925b8254841015612eb757612e69848461019f565b509080600283015403612eab57506001612e929101918254612e8d82821015612deb565b612a55565b81555415612e9e575050565b61031991612ace9161019f565b93600191500192612e56565b50505050565b9060018060a01b0382165f525f6020528260405f2060206040518092612ee382876119e6565b908152030190205410612f31576020612f1e91612f12612f2d9460018060a01b03165f525f60205260405f2090565b604051938480936119e6565b90815203019020918254612a55565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fdfea2646970667358221220384e62817f17bd4369dd405c5c4b4e4f46276f274516e89765a2049539c965c964736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/staking/testdata/StakingCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/staking/testdata/StakingCallerTwo.json b/precompiles/staking/testdata/StakingCallerTwo.json index fca2c09b9..97f47aeb2 100644 --- a/precompiles/staking/testdata/StakingCallerTwo.json +++ b/precompiles/staking/testdata/StakingCallerTwo.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "StakingCallerTwo", "sourceName": "solidity/precompiles/staking/testdata/StakingCallerTwo.sol", "abi": [ @@ -184,8 +184,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234610016576108e6908161001c8239f35b600080fdfe6040608081526004908136101561001557600080fd5b600091823560e01c8063241774e6146105b057806361bc221a146105935783816366dafc7a1461042e57508063b9a6bbca146101ba5763c5b75f011461005a57600080fd5b60603660031901126101b65780356001600160401b0381116101b2576100839036908301610694565b6024359081151582036101ae576044359283151584036101aa576100c692610185575b8451906353266bbb60e01b825281806020958693863491309085016107e6565b0381896108005af190811561017b576101089495916100ec91889161014e575b50610810565b33865260018352828187209151948386809551938492016106db565b82019081520301902061011c348254610851565b90556101255780f35b61012f81546106fe565b815561014b81808080600f335af1610145610723565b50610753565b80f35b61016e9150853d8711610174575b6101668183610642565b8101906107a9565b386100e6565b503d61015c565b85513d88823e3d90fd5b61018f86546106fe565b86556101a586808080600f335af1610145610723565b6100a6565b8580fd5b8480fd5b8380fd5b8280fd5b506003199190610120368401126101b2576001600160401b039181358381116101aa57858184019160a087823603011261042a57606036602319011261042a5760a435966001600160a01b038816968789036101b25760c4359081116101b2576102279036908801610694565b60e4359788151589036101ae57610104928335998a15158b0361042657868c9161040c575b50508751637be6aa8b60e11b81526101008a8201529687958695610270838061085e565b9091880160a090526101a48801906102879261088f565b91610295602483018261085e565b936101031994858a8303016101248b01526102af9261088f565b6102bc604484018361085e565b89830386016101448b01526102d1929161088f565b6102de606484018361085e565b89830386016101648b01526102f3929161088f565b916084016103009161085e565b9092878303016101848801526103159261088f565b91602435602486015260443560448601526064356064860152608435608486015260a48501528382030160c484015261034d916107c1565b3460e483015203815a93610800602095f19081156104025786916103e4575b50156103a1575050829061037d5780f35b808080600f61039c9561039083546106fe565b83555af1610145610723565b388180f35b906020606492519162461bcd60e51b8352820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152fd5b6103fc915060203d8111610174576101668183610642565b3861036c565b82513d88823e3d90fd5b808080600f61041f9561039083546106fe565b8a8661024c565b8680fd5b5080fd5b82818560a036600319011261042a57610445610627565b926001600160a01b039160243583811691908290036101ae576044356001600160401b0381116101aa5761047c9036908501610694565b906064359283151584036104265760843594851515860361058f578888886104c697610573575b5050508251906353266bbb60e01b825281806020978893883491309085016107e6565b03818b6108005af19081156105695761050895949392916104ed918a9161054c5750610810565b875260018352828188209151948386809551938492016106db565b82019081520301902061051c348254610851565b9055610526575080f35b8180600f81936105479661053a84546106fe565b8455165af1610145610723565b818180f35b6105639150863d8811610174576101668183610642565b8c6100e6565b83513d8a823e3d90fd5b8180600f81936105879661053a84546106fe565b8888886104a3565b8780fd5b50503461042a578160031936011261042a57602091549051908152f35b50346101b657816003193601126101b6576105c9610627565b906024356001600160401b0381116101ae5791836020956105f1879461061696369101610694565b6001600160a01b039093168152600184522084518251909485938290859087016106db565b820190815203019020549051908152f35b600435906001600160a01b038216820361063d57565b600080fd5b90601f801991011681019081106001600160401b0382111761066357604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161066357601f01601f191660200190565b81601f8201121561063d578035906106ab82610679565b926106b96040519485610642565b8284526020838301011161063d57816000926020809301838601378301015290565b60005b8381106106ee5750506000910152565b81810151838201526020016106de565b600019811461070d5760010190565b634e487b7160e01b600052601160045260246000fd5b3d1561074e573d9061073482610679565b916107426040519384610642565b82523d6000602084013e565b606090565b1561075a57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261063d5751801515810361063d5790565b906020916107da815180928185528580860191016106db565b601f01601f1916010190565b93929161080b9060409260018060a01b031686526060602087015260608601906107c1565b930152565b1561081757565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b9190820180921161070d57565b9035601e198236030181121561063d5701602081359101916001600160401b03821161063d57813603831361063d57565b908060209392818452848401376000828201840152601f01601f191601019056fea2646970667358221220350184501da67e3a98092e2f26eaf00d4ee07508f6998e67fcb8e6a420f1682264736f6c63430008140033", - "deployedBytecode": "0x6040608081526004908136101561001557600080fd5b600091823560e01c8063241774e6146105b057806361bc221a146105935783816366dafc7a1461042e57508063b9a6bbca146101ba5763c5b75f011461005a57600080fd5b60603660031901126101b65780356001600160401b0381116101b2576100839036908301610694565b6024359081151582036101ae576044359283151584036101aa576100c692610185575b8451906353266bbb60e01b825281806020958693863491309085016107e6565b0381896108005af190811561017b576101089495916100ec91889161014e575b50610810565b33865260018352828187209151948386809551938492016106db565b82019081520301902061011c348254610851565b90556101255780f35b61012f81546106fe565b815561014b81808080600f335af1610145610723565b50610753565b80f35b61016e9150853d8711610174575b6101668183610642565b8101906107a9565b386100e6565b503d61015c565b85513d88823e3d90fd5b61018f86546106fe565b86556101a586808080600f335af1610145610723565b6100a6565b8580fd5b8480fd5b8380fd5b8280fd5b506003199190610120368401126101b2576001600160401b039181358381116101aa57858184019160a087823603011261042a57606036602319011261042a5760a435966001600160a01b038816968789036101b25760c4359081116101b2576102279036908801610694565b60e4359788151589036101ae57610104928335998a15158b0361042657868c9161040c575b50508751637be6aa8b60e11b81526101008a8201529687958695610270838061085e565b9091880160a090526101a48801906102879261088f565b91610295602483018261085e565b936101031994858a8303016101248b01526102af9261088f565b6102bc604484018361085e565b89830386016101448b01526102d1929161088f565b6102de606484018361085e565b89830386016101648b01526102f3929161088f565b916084016103009161085e565b9092878303016101848801526103159261088f565b91602435602486015260443560448601526064356064860152608435608486015260a48501528382030160c484015261034d916107c1565b3460e483015203815a93610800602095f19081156104025786916103e4575b50156103a1575050829061037d5780f35b808080600f61039c9561039083546106fe565b83555af1610145610723565b388180f35b906020606492519162461bcd60e51b8352820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152fd5b6103fc915060203d8111610174576101668183610642565b3861036c565b82513d88823e3d90fd5b808080600f61041f9561039083546106fe565b8a8661024c565b8680fd5b5080fd5b82818560a036600319011261042a57610445610627565b926001600160a01b039160243583811691908290036101ae576044356001600160401b0381116101aa5761047c9036908501610694565b906064359283151584036104265760843594851515860361058f578888886104c697610573575b5050508251906353266bbb60e01b825281806020978893883491309085016107e6565b03818b6108005af19081156105695761050895949392916104ed918a9161054c5750610810565b875260018352828188209151948386809551938492016106db565b82019081520301902061051c348254610851565b9055610526575080f35b8180600f81936105479661053a84546106fe565b8455165af1610145610723565b818180f35b6105639150863d8811610174576101668183610642565b8c6100e6565b83513d8a823e3d90fd5b8180600f81936105879661053a84546106fe565b8888886104a3565b8780fd5b50503461042a578160031936011261042a57602091549051908152f35b50346101b657816003193601126101b6576105c9610627565b906024356001600160401b0381116101ae5791836020956105f1879461061696369101610694565b6001600160a01b039093168152600184522084518251909485938290859087016106db565b820190815203019020549051908152f35b600435906001600160a01b038216820361063d57565b600080fd5b90601f801991011681019081106001600160401b0382111761066357604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161066357601f01601f191660200190565b81601f8201121561063d578035906106ab82610679565b926106b96040519485610642565b8284526020838301011161063d57816000926020809301838601378301015290565b60005b8381106106ee5750506000910152565b81810151838201526020016106de565b600019811461070d5760010190565b634e487b7160e01b600052601160045260246000fd5b3d1561074e573d9061073482610679565b916107426040519384610642565b82523d6000602084013e565b606090565b1561075a57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261063d5751801515810361063d5790565b906020916107da815180928185528580860191016106db565b601f01601f1916010190565b93929161080b9060409260018060a01b031686526060602087015260608601906107c1565b930152565b1561081757565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b9190820180921161070d57565b9035601e198236030181121561063d5701602081359101916001600160401b03821161063d57813603831361063d57565b908060209392818452848401376000828201840152601f01601f191601019056fea2646970667358221220350184501da67e3a98092e2f26eaf00d4ee07508f6998e67fcb8e6a420f1682264736f6c63430008140033", + "bytecode": "0x60808060405234601557610874908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063241774e61461057557806361bc221a1461055957806366dafc7a14610403578063b9a6bbca1461019e5763c5b75f0114610050575f80fd5b606036600319011261019a576004356001600160401b03811161019a5761007b90369060040161064c565b60243590811515820361019a5760443591821515830361019a57610175575b6040516353266bbb60e01b815290602082806100bb34853060048501610775565b03815f6108005af190811561016a576100e06020939284935f9161013d575b5061079f565b335f526001825260405f20604051938285935191829101845e82019081520301902061010d3482546107e0565b905561011557005b61011f5f54610692565b5f5561013b5f808080600f335af16101356106b4565b506106e3565b005b61015d9150843d8611610163575b61015581836105fc565b810190610739565b5f6100da565b503d61014b565b6040513d5f823e3d90fd5b61017f5f54610692565b5f556101955f808080600f335af16101356106b4565b61009a565b5f80fd5b61012036600319011261019a576004356001600160401b03811161019a578060040160a0600319833603011261019a57606036602319011261019a5760a435916001600160a01b03831680840361019a5760c4356001600160401b03811161019a5761020e90369060040161064c565b60e43593841515850361019a576101043594851515860361019a576020936102f2938861033d936103e9575b506103066040519788968796637be6aa8b60e11b8852610100600489015260846102ea6102c96102a86102868c6101a461027488806107ed565b91909260a0610104820152019161081e565b8c61029460248a01886107ed565b91610124610103198286030191015261081e565b6102b560448801866107ed565b8d830361010319016101448f01529061081e565b6102d660648701856107ed565b8c830361010319016101648e01529061081e565b9301906107ed565b87830361010319016101848901529061081e565b91602435602486015260443560448601526064356064860152608435608486015260a48501526003198483030160c4850152610751565b3460e483015203815f6108005af190811561016a575f916103ca575b50156103855761036557005b5f808080600f61013b956103798354610692565b83555af16101356106b4565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152606490fd5b6103e3915060203d6020116101635761015581836105fc565b83610359565b5f808080600f6103fd956103798354610692565b8861023a565b60a036600319011261019a576104176105e6565b6024356001600160a01b0381169081900361019a576044356001600160401b03811161019a5761044b90369060040161064c565b60643591821515830361019a5760843592831515840361019a57610529575b6040516353266bbb60e01b8152916020838061048b34853060048501610775565b03815f6108005af191821561016a576104af6020949385945f9161050c575061079f565b5f526001825260405f20604051938285935191829101845e8201908152030190206104db3482546107e0565b90556104e357005b5f808080600f61013b956104f78354610692565b83556001600160a01b03165af16101356106b4565b6105239150853d87116101635761015581836105fc565b886100da565b6105335f54610692565b5f90815561055490808080600f6001600160a01b038a165af16101356106b4565b61046a565b3461019a575f36600319011261019a5760205f54604051908152f35b3461019a57604036600319011261019a5761058e6105e6565b602435906001600160401b03821161019a5760208080926105b385369060040161064c565b9060018060a01b03165f526001825260405f20604051938285935191829101845e82019081520301902054604051908152f35b600435906001600160a01b038216820361019a57565b90601f801991011681019081106001600160401b0382111761061d57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161061d57601f01601f191660200190565b81601f8201121561019a5780359061066382610631565b9261067160405194856105fc565b8284526020838301011161019a57815f926020809301838601378301015290565b5f1981146106a05760010190565b634e487b7160e01b5f52601160045260245ffd5b3d156106de573d906106c582610631565b916106d360405193846105fc565b82523d5f602084013e565b606090565b156106ea57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261019a5751801515810361019a5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b93929161079a9060409260018060a01b03168652606060208701526060860190610751565b930152565b156107a657565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b919082018092116106a057565b9035601e198236030181121561019a5701602081359101916001600160401b03821161019a57813603831361019a57565b908060209392818452848401375f828201840152601f01601f191601019056fea26469706673582212201afb25f8f9d5d304c79f87329c5830756768daf174aa40ca3be05d012bf4f3e164736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063241774e61461057557806361bc221a1461055957806366dafc7a14610403578063b9a6bbca1461019e5763c5b75f0114610050575f80fd5b606036600319011261019a576004356001600160401b03811161019a5761007b90369060040161064c565b60243590811515820361019a5760443591821515830361019a57610175575b6040516353266bbb60e01b815290602082806100bb34853060048501610775565b03815f6108005af190811561016a576100e06020939284935f9161013d575b5061079f565b335f526001825260405f20604051938285935191829101845e82019081520301902061010d3482546107e0565b905561011557005b61011f5f54610692565b5f5561013b5f808080600f335af16101356106b4565b506106e3565b005b61015d9150843d8611610163575b61015581836105fc565b810190610739565b5f6100da565b503d61014b565b6040513d5f823e3d90fd5b61017f5f54610692565b5f556101955f808080600f335af16101356106b4565b61009a565b5f80fd5b61012036600319011261019a576004356001600160401b03811161019a578060040160a0600319833603011261019a57606036602319011261019a5760a435916001600160a01b03831680840361019a5760c4356001600160401b03811161019a5761020e90369060040161064c565b60e43593841515850361019a576101043594851515860361019a576020936102f2938861033d936103e9575b506103066040519788968796637be6aa8b60e11b8852610100600489015260846102ea6102c96102a86102868c6101a461027488806107ed565b91909260a0610104820152019161081e565b8c61029460248a01886107ed565b91610124610103198286030191015261081e565b6102b560448801866107ed565b8d830361010319016101448f01529061081e565b6102d660648701856107ed565b8c830361010319016101648e01529061081e565b9301906107ed565b87830361010319016101848901529061081e565b91602435602486015260443560448601526064356064860152608435608486015260a48501526003198483030160c4850152610751565b3460e483015203815f6108005af190811561016a575f916103ca575b50156103855761036557005b5f808080600f61013b956103798354610692565b83555af16101356106b4565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152606490fd5b6103e3915060203d6020116101635761015581836105fc565b83610359565b5f808080600f6103fd956103798354610692565b8861023a565b60a036600319011261019a576104176105e6565b6024356001600160a01b0381169081900361019a576044356001600160401b03811161019a5761044b90369060040161064c565b60643591821515830361019a5760843592831515840361019a57610529575b6040516353266bbb60e01b8152916020838061048b34853060048501610775565b03815f6108005af191821561016a576104af6020949385945f9161050c575061079f565b5f526001825260405f20604051938285935191829101845e8201908152030190206104db3482546107e0565b90556104e357005b5f808080600f61013b956104f78354610692565b83556001600160a01b03165af16101356106b4565b6105239150853d87116101635761015581836105fc565b886100da565b6105335f54610692565b5f90815561055490808080600f6001600160a01b038a165af16101356106b4565b61046a565b3461019a575f36600319011261019a5760205f54604051908152f35b3461019a57604036600319011261019a5761058e6105e6565b602435906001600160401b03821161019a5760208080926105b385369060040161064c565b9060018060a01b03165f526001825260405f20604051938285935191829101845e82019081520301902054604051908152f35b600435906001600160a01b038216820361019a57565b90601f801991011681019081106001600160401b0382111761061d57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161061d57601f01601f191660200190565b81601f8201121561019a5780359061066382610631565b9261067160405194856105fc565b8284526020838301011161019a57815f926020809301838601378301015290565b5f1981146106a05760010190565b634e487b7160e01b5f52601160045260245ffd5b3d156106de573d906106c582610631565b916106d360405193846105fc565b82523d5f602084013e565b606090565b156106ea57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261019a5751801515810361019a5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b93929161079a9060409260018060a01b03168652606060208701526060860190610751565b930152565b156107a657565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b919082018092116106a057565b9035601e198236030181121561019a5701602081359101916001600160401b03821161019a57813603831361019a57565b908060209392818452848401375f828201840152601f01601f191601019056fea26469706673582212201afb25f8f9d5d304c79f87329c5830756768daf174aa40ca3be05d012bf4f3e164736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/staking/testdata/StakingCallerTwo.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/Counter.json b/precompiles/testutil/contracts/Counter.json index 144c81bfe..eda43ad5d 100644 --- a/precompiles/testutil/contracts/Counter.json +++ b/precompiles/testutil/contracts/Counter.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "Counter", "sourceName": "solidity/precompiles/testutil/contracts/Counter.sol", "abi": [ @@ -57,8 +57,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001a576000805561022190816100208239f35b600080fdfe60806040818152600436101561001457600080fd5b600091823560e01c9081634f2be91f1461015a575080636deebae31461006257638ada066e1461004357600080fd5b3461005e578160031936011261005e57602091549051908152f35b5080fd5b50903461015757806003193601126101575780549180519080820182811067ffffffffffffffff821117610143578152600f82526020916e434f554e5445525f544f4f5f4c4f5760881b8382015284156100ea57507f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8299293600019019081855551908152a180f35b9192905192839162461bcd60e51b8352816004840152835191826024850152815b83811061012c57505060448094508284010152601f80199101168101030190fd5b80860182015187820160440152869450810161010b565b634e487b7160e01b84526041600452602484fd5b80fd5b919050346101e757826003193601126101e757825460001981146101d357916020917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619418360017f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829960193848855848152a151908152a180f35b634e487b7160e01b84526011600452602484fd5b8280fdfea26469706673582212208cda3063e5b6f9e0bcc39dda3f7fdb292885a257124e36733c773a00c2fa7eb164736f6c63430008140033", - "deployedBytecode": "0x60806040818152600436101561001457600080fd5b600091823560e01c9081634f2be91f1461015a575080636deebae31461006257638ada066e1461004357600080fd5b3461005e578160031936011261005e57602091549051908152f35b5080fd5b50903461015757806003193601126101575780549180519080820182811067ffffffffffffffff821117610143578152600f82526020916e434f554e5445525f544f4f5f4c4f5760881b8382015284156100ea57507f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8299293600019019081855551908152a180f35b9192905192839162461bcd60e51b8352816004840152835191826024850152815b83811061012c57505060448094508284010152601f80199101168101030190fd5b80860182015187820160440152869450810161010b565b634e487b7160e01b84526041600452602484fd5b80fd5b919050346101e757826003193601126101e757825460001981146101d357916020917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619418360017f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829960193848855848152a151908152a180f35b634e487b7160e01b84526011600452602484fd5b8280fdfea26469706673582212208cda3063e5b6f9e0bcc39dda3f7fdb292885a257124e36733c773a00c2fa7eb164736f6c63430008140033", + "bytecode": "0x608080604052346018575f80556101f1908161001d8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c9081634f2be91f14610132575080636deebae31461005d57638ada066e1461003d575f80fd5b34610059575f3660031901126100595760205f54604051908152f35b5f80fd5b34610059575f366003190112610059575f5480156040516040810181811067ffffffffffffffff82111761011e57604052600f815260208101916e434f554e5445525f544f4f5f4c4f5760881b83526100e3577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8296020845f1901805f55604051908152a1005b60449060405192839162461bcd60e51b8352602060048401525180918160248501528484015e5f828201840152601f01601f19168101030190fd5b634e487b7160e01b5f52604160045260245ffd5b34610059575f366003190112610059575f545f1981146101a7577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619416020600181940192835f55838152a1604051908152a1005b634e487b7160e01b5f52601160045260245ffdfea2646970667358221220d0741b239fe99ad8ff4739e1d6b00bcaef8160666b242e48b73f76a5f541a15564736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c9081634f2be91f14610132575080636deebae31461005d57638ada066e1461003d575f80fd5b34610059575f3660031901126100595760205f54604051908152f35b5f80fd5b34610059575f366003190112610059575f5480156040516040810181811067ffffffffffffffff82111761011e57604052600f815260208101916e434f554e5445525f544f4f5f4c4f5760881b83526100e3577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8296020845f1901805f55604051908152a1005b60449060405192839162461bcd60e51b8352602060048401525180918160248501528484015e5f828201840152601f01601f19168101030190fd5b634e487b7160e01b5f52604160045260245ffd5b34610059575f366003190112610059575f545f1981146101a7577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619416020600181940192835f55838152a1604051908152a1005b634e487b7160e01b5f52601160045260245ffdfea2646970667358221220d0741b239fe99ad8ff4739e1d6b00bcaef8160666b242e48b73f76a5f541a15564736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/Counter.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/DistributionCaller.json b/precompiles/testutil/contracts/DistributionCaller.json index e9b32c489..63effb1ac 100644 --- a/precompiles/testutil/contracts/DistributionCaller.json +++ b/precompiles/testutil/contracts/DistributionCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "DistributionCaller", "sourceName": "solidity/precompiles/testutil/contracts/DistributionCaller.sol", "abi": [ @@ -1081,8 +1081,11 @@ "type": "function" } ], - "bytecode": "0x60803462000260576020906001600160401b03818301818111838210176200024a5760808301818110838211176200024a57604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760408401526261746560e81b60608401528252600092835492600193848655808510620001ce575b509084805280852085925b858410620000a45760405161240b9081620002bc8239f35b8051908151868111620001ba5787918591620000c1865462000265565b948b601f96858882116200017f575b505050839582116001146200011857849582918d926200010c575b5050600019600383901b1c191690841b1785555b019201930192906200008c565b015190503880620000eb565b868c52838c209095601f1983168d5b8181106200016757509086978488959493106200014d575b505050811b018555620000ff565b015160001960f88460031b161c191690553880806200013f565b8289015184558d978b97940193928301920162000127565b828a620001a7945220600589808701821c830193898810620001b0575b01901c0190620002a2565b8b3885620000d0565b935082936200019c565b634e487b7160e01b89526041600452602489fd5b858052848084882092830192015b828110620001ec57505062000081565b87620001f9825462000265565b806200020b575b5050018590620001dc565b601f8082116001146200022557505081555b873862000200565b6200024090848452888420920160051c8201858301620002a2565b818355556200021d565b634e487b7160e01b600052604160045260246000fd5b600080fd5b90600182811c9216801562000297575b60208310146200028157565b634e487b7160e01b600052602260045260246000fd5b91607f169162000275565b818110620002ae575050565b60008155600101620002a256fe6080604081815260048036101561001557600080fd5b600092833560e01c90816301b6800014611b43575080630c05e9e4146119c85780630da847681461199b578063151732ec1461186c578381631b0502071461177e57508063201139a21461172e5780632947221b146115f8578063296c60aa1461155a578063382d823c1461150e57806346e16d34146114e0578063613d4de81461136257806361bc221a146113405780636b7a547c146112b15780636f669da41461127157806378a5dfd114611244578063796b96d2146111e75780637c9db0bb1461119257806388b2d58114610e7257806393574cd114610de9578063963516e414610d58578063ad5c4cdd14610d00578063b2d1788314610b8e578063b6a216ae14610a27578063be4efc57146108c8578063cb85aa0a1461080f578063d0e30db014610800578063d3f831be14610759578063dd987c20146106b9578063ddbfa271146105ba578063e0421e3914610508578063e236c7a6146102fc5763f9ed9b671461018557600080fd5b8290346102f85760803660031901126102f8576101a0611bbf565b6001600160401b03936024358581116102f45760206101c56102109236908701611e4b565b6101cd611efd565b946101d6611f0c565b956102af575b8451630b4ac1e760e21b81526001600160a01b03909116968101879052602481018590529283918291906044830190611dc5565b0381886108015af19182156102a657508491610278575b501561027457610235575080f35b8180600f819361026f966001549061024f8260070b612126565b16906001600160401b031916176001555af1610269612154565b50612184565b388180f35b8280fd5b610299915060203d811161029f575b6102918183611c84565b810190611fd3565b38610227565b503d610287565b513d86823e3d90fd5b6001546102be8160070b612126565b67ffffffffffffffff19909116908a16176001556102ef88808080600f6001600160a01b0387165af1610269612154565b6101dc565b8480fd5b5080fd5b508234610505576020806003193601126102f857610318611bbf565b8451630a97c34560e31b81526001600160a01b039091169381019390935281836024816108015afa9182156104fa57809381936103e8575b50929093918251948386948501908086528451809252606086018360608460051b890101960197915b838310610397578787038589015287806103938989611f37565b0390f35b919360019193959750806103d48198605f198d82030187528b5190836103c4835189845289840190611c13565b9201519084818403910152611d07565b990193019301909288969492979593610379565b935091503d8083853e6103fb8185611c84565b830184848203126102745783516001600160401b03908181116102f45785019482601f870112156102f45785519561043287611e34565b9661043f89519889611c84565b808852858089019160051b830101918583116104f657868101915b8383106104825750505050838101519182116102f45761047b929101612289565b9185610350565b82518681116104f25782018b601f19828a0301126104f2578b51906104a682611c69565b898101518881116104ee57898b6104bf92840101612044565b82528c810151908882116104ee57916104df8a8c80969481960101612289565b8382015281520192019161045a565b8b80fd5b8980fd5b8780fd5b8451903d90823e3d90fd5b80fd5b509034610274576020366003190112610274578282356001600160401b0381116102f85761053b60209136908601611cc0565b9361055d84519586938493631e7271df60e11b85528401526024830190611c13565b0381836108015af19182156105b05783610393949361058b575b505051918291602083526020830190611dc5565b6105a89293503d8091833e6105a08183611c84565b81019061205e565b903880610577565b81513d85823e3d90fd5b509034610274576060366003190112610274576105d5611bbf565b916001600160401b03906024358281116106b5576105f69036908301611cc0565b93604435908382116106b15761061160209236908501611e4b565b92610650600154946106258660070b6121fa565b871667ffffffffffffffff19968716176001558751631758efa960e11b815298899485948501612245565b0381886108015af19384156106a75760209594610688575b50600154916106798360070b61221f565b16911617600155519015158152f35b6106a0919450853d811161029f576102918183611c84565b9238610668565b83513d87823e3d90fd5b8680fd5b8580fd5b5090806003193601126102745781356001600160401b03811161075557610711926106e960209236908301611cc0565b90835194859283926353266bbb60e01b84523090840152606060248401526064830190611c13565b60243560448301520381866108005af190811561074c5750610731575080f35b6107489060203d811161029f576102918183611c84565b5080f35b513d84823e3d90fd5b8380fd5b509034610274576020366003190112610274578282356001600160401b0381116102f85761078c60209136908601611cc0565b936107ae845195869384936342d9696d60e11b85528401526024830190611c13565b03816108015afa9182156105b0578361039394936107db575b505051918291602083526020830190611f37565b6107f89293503d8091833e6107f08183611c84565b810190612350565b9038806107c7565b83806003193601126105055780f35b509190346102f85760203660031901126102f85761082b611bbf565b81516305431f4560e41b81526001600160a01b039091169381019390935281836024816108015afa9182156108bd578092610876575b81516020808252819061039390820186611c13565b9091503d8082853e6108888185611c84565b8301926020818503126102f8578051916001600160401b0383116105055750926108b6916103939401612044565b9038610861565b9051903d90823e3d90fd5b50346102745760603660031901126102745780359163ffffffff831683036107555761091f60206108f7611f1b565b94610900611efd565b956109e7575b835180938192632efe8a5f60e01b8352308884016121da565b0381886108015af19081156109dd5785916109bf575b50156109825750506109445780f35b6001546109538160070b612126565b6001600160401b0316906001600160401b0319161760015561097f81808080600f335af1610269612154565b80f35b906020606492519162461bcd60e51b835282015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152fd5b6109d7915060203d811161029f576102918183611c84565b38610935565b82513d87823e3d90fd5b6001546109f68160070b612126565b6001600160401b0316906001600160401b03191617600155610a2287808080600f335af1610269612154565b610906565b508290346102f8576020918260031936011261050557610a45611bbf565b845163a66cb60560e01b81526001600160a01b039091169281019290925280826024816108015afa918215610b82578192610ad5575b5083519280840190808552835180925280868601968360051b870101940192955b828710610aa95785850386f35b909192938280610ac5600193603f198a82030186528851611c13565b9601920196019592919092610a9c565b9091503d8083833e610ae78183611c84565b810183828203126102745781516001600160401b03928382116102f457019080601f8301121561075557815190610b1d82611e34565b93610b2a88519586611c84565b828552868086019360051b850101938285116106b157878101935b858510610b59575050505050509084610a7b565b8451838111610b7e578991610b7386848094870101612044565b815201940193610b45565b8880fd5b508351903d90823e3d90fd5b509034610274576060366003190112610274576001600160401b0382358181116102f457610bbf9036908501611cc0565b92610bc8611bda565b916044359081116106b557610be09036908301611cc0565b91835191632d4ecd4b60e11b835282610bfe60209733848401611feb565b0392868161080195818b885af1908115610cf6578891610cd9575b5015610c965791610c42939187809487519687958694859363b46a8d6160e01b85528401611feb565b03925af1938415610c8b578094610c69575b50506103939051928284938452830190611dc5565b61039392945090610c83913d8091833e6105a08183611c84565b929038610c54565b8251903d90823e3d90fd5b845162461bcd60e51b8152908101869052601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610cf09150873d891161029f576102918183611c84565b38610c19565b86513d8a823e3d90fd5b5090346102745782610d1136611d83565b93610d2d8451958693849363b46a8d6160e01b85528401611feb565b0381836108015af190811561074c5750610d45575080fd5b6102f8903d8084833e6105a08183611c84565b5090346102745760203660031901126102745781356001600160401b03811161075557610da992610d8e60209236908301611cc0565b8351632d4ecd4b60e11b815294859283929030908401611feb565b0381866108015af19182156105b05760209392610dca575b50519015158152f35b610de2919250833d811161029f576102918183611c84565b9038610dc1565b50346102745781600319360112610274579160209283610e07611bbf565b610e0f611fac565b92610e2b86519485938493632efe8a5f60e01b855284016121da565b0381856108015af1829181610e53575b50610e4b5750905b519015158152f35b905090610e43565b610e6b919250853d811161029f576102918183611c84565b9038610e3b565b508290346102f857600319608036820112610274576001600160401b0382358181116102f457610ea59036908501611cc0565b926024358281168091036106b557604435918383168093036106b1576064358481116104f65780360360a087820112610b7e57895196610ee488611c69565b6060958689528a6020809a0152610f118c519a63479239e760e11b8c526080878d015260848c0190611c13565b9560248b015260448a0152888503016064890152818301359060221901811215610b7e5781019182013591602401858311610b7e578236038113610b7e57878484610fb6608484968f8f9960c098601f9f9e9d9c60a090528160a089015289880137898886880101528b610f8760248401611fbf565b168d8701528b610f9960448401611fbf565b1690860152610faa60648201611f2a565b15158a86015201611f2a565b15156080830152891999018916010301816108015afa9485156111885786948796611054575b5050865187815284518189018190529096878301958501925b82821061102657505050508161101b869787860383890152865190808752860190611c13565b940151169101520390f35b835180518616885286015180518789015286015160ff168a8801529586019592850192600190910190610ff5565b91955093503d8087863e6110688186611c84565b84019387818603126106b15780518381116104f657810185601f820112156104f657805161109581611e34565b936110a28b519586611c84565b8185528689818701930284010192888411611184578701915b838310611127575050505083810151908382116104f6570187818603126106b1578751946110e886611c69565b8151848111610b7e57820181601f82011215610b7e57916111128692848461111a9651910161200d565b875201612375565b8385015292938780610fdc565b8289038a81126104ee578c8381519261113f84611c69565b61114887612375565b845201126104ee578a9189918e61117181519161116483611c69565b858901518352880161227b565b84820152838201528152019201916110bb565b8a80fd5b87513d88823e3d90fd5b509034610274576020366003190112610274578282356001600160401b0381116102f8576111c560209136908601611cc0565b936107ae845195869384936307ba81ef60e31b85528401526024830190611c13565b50508134610505578061097f9261122161122f61120336611d83565b9093519283916020830195632d4ecd4b60e11b875260248401611feb565b03601f198101835282611c84565b51906108015afa61123e612154565b50612389565b509034610274578261125536611d83565b936107ae845195869384936326b558ed60e21b85528401611feb565b509034610274578060031936011261027457602061128d611bbf565b611295611fac565b93610da984519586938493632efe8a5f60e01b855284016121da565b5090346102745780600319360112610274576112cb611bbf565b6001600160401b03906024358281116106b5576112ed60209136908701611e4b565b94600154926112fe8460070b6121fa565b85166001600160401b03198095161760015561065086519788938493630b4ac1e760e21b855260018060a01b0316908401528760248401526044830190611dc5565b5050346102f857816003193601126102f85760209060015460070b9051908152f35b509034610274576080366003190112610274576001600160401b039282358481116102f8576113949036908501611cc0565b9361139d611bda565b908260206113a9611efd565b966113b2611f0c565b97611489575b6113d98751998a938493631e7271df60e11b85528401526024830190611c13565b0381836108015af194851561147f57610393968496611463575b5061140e575b50505051918291602083526020830190611dc5565b6001549061141e8260070b612126565b67ffffffffffffffff199092169116176001556001600160a01b031690308203611449575b806113f9565b808080600f61145c955af1610269612154565b3880611443565b6114789196503d8086833e6105a08183611c84565b94386113f3565b84513d85823e3d90fd5b6001546114988160070b612126565b67ffffffffffffffff19909116908516176001556001600160a01b038516833082036114c6575b50506113b8565b808080600f6114d9955af1610269612154565b38836114bf565b5090346102745760206114f236611d83565b93610da984519586938493632d4ecd4b60e11b85528401611feb565b509034610274578260031936011261027457828151809363014d140b60e41b8252816108015afa9182156105b0578361039394936107db57505051918291602083526020830190611f37565b50903461027457828061159261122161157236611d83565b86939193519283916020830195632d4ecd4b60e11b875260248401611feb565b51906108015af46115a1612154565b50156115ab578280f35b906020608492519162461bcd60e51b8352820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152fd5b509034610274576060366003190112610274576001600160401b0382358181116102f457938061162e61165f9636908701611cc0565b611636611f1b565b9561163f611efd565b966116f5575b855163b46a8d6160e01b8152978892839230908401611feb565b0381836108015af19384156116e9576103939582956116cd575b5061169257505051918291602083526020830190611dc5565b6116c691600154906116a68260070b612126565b16906001600160401b03191617600155808080600f335af1610269612154565b3880610577565b6116e29195503d8084833e6105a08183611c84565b9338611679565b508251903d90823e3d90fd5b6001546117048160070b612126565b8616906001600160401b0319161760015561172983808080600f335af1610269612154565b611645565b50903461027457602036600319011261027457828235926001600160401b0384116102f85761176361055d9436908301611cc0565b835163b46a8d6160e01b815294859283929030908401611feb565b828185346102f85760803660031901126102f85761179a611bbf565b6117a2611bda565b936001600160401b03926044358481116106b5576117c4869136908501611cc0565b916117cd611f0c565b936117ff8251948593849363ad5c4cdd60e01b855260018060a01b03809a169085015260248401526044830190611c13565b038183305af1611852575b50611813578280f35b82600f81939261184a9683946001549061182f8260070b612126565b16906001600160401b03191617600155165af1610269612154565b818181808280f35b611865903d8087833e6105a08183611c84565b508661180a565b5034610274576080366003190112610274576001600160401b039181358381116102f45761189d9036908401611cc0565b6024358481116106b5576118b660209136908601611e4b565b916118bf611efd565b946118c8611f0c565b95611962575b6118eb85519485938493631758efa960e11b855230908501612245565b0381886108015af19182156102a657508491611944575b501561027457611910575080f35b600154906119208260070b612126565b16906001600160401b0319161760015561097f81808080600f335af1610269612154565b61195c915060203d811161029f576102918183611c84565b38611902565b6001546119718160070b612126565b8816906001600160401b0319161760015561199688808080600f335af1610269612154565b6118ce565b50903461027457826119ac36611d83565b9361055d8451958693849363b46a8d6160e01b85528401611feb565b50346102745760209081600319360112610755578035936001600160401b03918286116102f85781846119ff879836908501611cc0565b928751611a0b81611c38565b606099818b80935282858201520152611a3b885194859384936354212a8960e01b85528401526024830190611c13565b03816108015afa928315611b39578293611a9e575b505050610393918351948594828652611a8d611a76855184868a01526080890190611c13565b9385015193601f19948589830301848a0152611d07565b930151918584030190850152611d07565b909192503d8084843e611ab18184611c84565b8201918481840312610755578051908282116102f45701868184031261075557855193611add85611c38565b81518381116102f85784611af2918401612044565b8552858201518381116102f85784611b0b918401612289565b8686015286820151928311610505575091611b2c9161039395949301612289565b8482015290913880611a50565b85513d84823e3d90fd5b9150503461027457602036600319011261027457918061039393611b65611bbf565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611b9481611c38565b51906108015afa90611bad611ba7612154565b92612389565b51918291602083526020830190611c13565b600435906001600160a01b0382168203611bd557565b600080fd5b602435906001600160a01b0382168203611bd557565b60005b838110611c035750506000910152565b8181015183820152602001611bf3565b90602091611c2c81518092818552858086019101611bf0565b601f01601f1916010190565b606081019081106001600160401b03821117611c5357604052565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b03821117611c5357604052565b90601f801991011681019081106001600160401b03821117611c5357604052565b6001600160401b038111611c5357601f01601f191660200190565b81601f82011215611bd557803590611cd782611ca5565b92611ce56040519485611c84565b82845260208383010111611bd557816000926020809301838601378301015290565b908082519081815260208091019281808460051b8301019501936000915b848310611d355750505050505090565b9091929394958480600192601f19858203018652895190611d5e82516060808452830190611c13565b91838101518483015260ff604080920151169101529801930193019194939290611d25565b906040600319830112611bd5576004356001600160a01b0381168103611bd55791602435906001600160401b038211611bd557611dc291600401611cc0565b90565b908082519081815260208091019281808460051b8301019501936000915b848310611df35750505050505090565b9091929394958480600192601f198582030186528951908280611e1e84516040808652850190611c13565b9301519101529801930193019194939290611de3565b6001600160401b038111611c535760051b60200190565b81601f82011215611bd5578035611e6181611e34565b92604091611e7183519586611c84565b808552602093848087019260051b82010193838511611bd557858201925b858410611ea0575050505050505090565b6001600160401b03908435828111611bd55784019083601f198389030112611bd5578351611ecd81611c69565b89830135938411611bd5578483611eea8a8d809881980101611cc0565b8352013583820152815201930192611e8f565b604435908115158203611bd557565b606435908115158203611bd557565b602435908115158203611bd557565b35908115158203611bd557565b90815180825260208092019182818360051b82019501936000915b848310611f625750505050505090565b90919293949584808284600194038652895190611f8782516060808452830190611c13565b91838101518483015260ff604080920151169101529801930193019194939290611f52565b6024359063ffffffff82168203611bd557565b35906001600160401b0382168203611bd557565b90816020910312611bd557518015158103611bd55790565b6001600160a01b039091168152604060208201819052611dc292910190611c13565b9092919261201a81611ca5565b916120286040519384611c84565b829482845282820111611bd5576020612042930190611bf0565b565b9080601f83011215611bd5578151611dc29260200161200d565b906020908183820312611bd55782516001600160401b0393848211611bd557019080601f83011215611bd557815161209581611e34565b9460406120a481519788611c84565b828752858088019360051b86010194848611611bd557868101935b8685106120d157505050505050505090565b8451848111611bd557820183601f198289030112611bd5578351916120f583611c69565b8982015192868411611bd55785836121138b8e809881980101612044565b83520151838201528152019401936120bf565b60070b677fffffffffffffff811461213e5760010190565b634e487b7160e01b600052601160045260246000fd5b3d1561217f573d9061216582611ca5565b916121736040519384611c84565b82523d6000602084013e565b606090565b1561218b57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6001600160a01b03909116815263ffffffff909116602082015260400190565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213e57565b60070b6000190190677fffffffffffffff198212677fffffffffffffff83131761213e57565b6001600160a01b039091168152606060208201819052611dc293919261226d91840190611c13565b916040818403910152611dc5565b519060ff82168203611bd557565b9080601f83011215611bd55781516122a081611e34565b926040916122b083519586611c84565b808552602093848087019260051b84010193818511611bd557858401925b8584106122df575050505050505090565b8351906001600160401b0391828111611bd55786019060609283601f198488030112611bd55784519061231182611c38565b8a840151908111611bd5578a948461233189886123419581990101612044565b845287810151868501520161227b565b858201528152019301926122ce565b90602082820312611bd55781516001600160401b038111611bd557611dc29201612289565b51906001600160401b0382168203611bd557565b1561239057565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fdfea2646970667358221220c29b806ba0c5393e3d3328caa418ca6534f2dcf4f200fd01cb544b8d104e1e3564736f6c63430008140033", - "deployedBytecode": "0x6080604081815260048036101561001557600080fd5b600092833560e01c90816301b6800014611b43575080630c05e9e4146119c85780630da847681461199b578063151732ec1461186c578381631b0502071461177e57508063201139a21461172e5780632947221b146115f8578063296c60aa1461155a578063382d823c1461150e57806346e16d34146114e0578063613d4de81461136257806361bc221a146113405780636b7a547c146112b15780636f669da41461127157806378a5dfd114611244578063796b96d2146111e75780637c9db0bb1461119257806388b2d58114610e7257806393574cd114610de9578063963516e414610d58578063ad5c4cdd14610d00578063b2d1788314610b8e578063b6a216ae14610a27578063be4efc57146108c8578063cb85aa0a1461080f578063d0e30db014610800578063d3f831be14610759578063dd987c20146106b9578063ddbfa271146105ba578063e0421e3914610508578063e236c7a6146102fc5763f9ed9b671461018557600080fd5b8290346102f85760803660031901126102f8576101a0611bbf565b6001600160401b03936024358581116102f45760206101c56102109236908701611e4b565b6101cd611efd565b946101d6611f0c565b956102af575b8451630b4ac1e760e21b81526001600160a01b03909116968101879052602481018590529283918291906044830190611dc5565b0381886108015af19182156102a657508491610278575b501561027457610235575080f35b8180600f819361026f966001549061024f8260070b612126565b16906001600160401b031916176001555af1610269612154565b50612184565b388180f35b8280fd5b610299915060203d811161029f575b6102918183611c84565b810190611fd3565b38610227565b503d610287565b513d86823e3d90fd5b6001546102be8160070b612126565b67ffffffffffffffff19909116908a16176001556102ef88808080600f6001600160a01b0387165af1610269612154565b6101dc565b8480fd5b5080fd5b508234610505576020806003193601126102f857610318611bbf565b8451630a97c34560e31b81526001600160a01b039091169381019390935281836024816108015afa9182156104fa57809381936103e8575b50929093918251948386948501908086528451809252606086018360608460051b890101960197915b838310610397578787038589015287806103938989611f37565b0390f35b919360019193959750806103d48198605f198d82030187528b5190836103c4835189845289840190611c13565b9201519084818403910152611d07565b990193019301909288969492979593610379565b935091503d8083853e6103fb8185611c84565b830184848203126102745783516001600160401b03908181116102f45785019482601f870112156102f45785519561043287611e34565b9661043f89519889611c84565b808852858089019160051b830101918583116104f657868101915b8383106104825750505050838101519182116102f45761047b929101612289565b9185610350565b82518681116104f25782018b601f19828a0301126104f2578b51906104a682611c69565b898101518881116104ee57898b6104bf92840101612044565b82528c810151908882116104ee57916104df8a8c80969481960101612289565b8382015281520192019161045a565b8b80fd5b8980fd5b8780fd5b8451903d90823e3d90fd5b80fd5b509034610274576020366003190112610274578282356001600160401b0381116102f85761053b60209136908601611cc0565b9361055d84519586938493631e7271df60e11b85528401526024830190611c13565b0381836108015af19182156105b05783610393949361058b575b505051918291602083526020830190611dc5565b6105a89293503d8091833e6105a08183611c84565b81019061205e565b903880610577565b81513d85823e3d90fd5b509034610274576060366003190112610274576105d5611bbf565b916001600160401b03906024358281116106b5576105f69036908301611cc0565b93604435908382116106b15761061160209236908501611e4b565b92610650600154946106258660070b6121fa565b871667ffffffffffffffff19968716176001558751631758efa960e11b815298899485948501612245565b0381886108015af19384156106a75760209594610688575b50600154916106798360070b61221f565b16911617600155519015158152f35b6106a0919450853d811161029f576102918183611c84565b9238610668565b83513d87823e3d90fd5b8680fd5b8580fd5b5090806003193601126102745781356001600160401b03811161075557610711926106e960209236908301611cc0565b90835194859283926353266bbb60e01b84523090840152606060248401526064830190611c13565b60243560448301520381866108005af190811561074c5750610731575080f35b6107489060203d811161029f576102918183611c84565b5080f35b513d84823e3d90fd5b8380fd5b509034610274576020366003190112610274578282356001600160401b0381116102f85761078c60209136908601611cc0565b936107ae845195869384936342d9696d60e11b85528401526024830190611c13565b03816108015afa9182156105b0578361039394936107db575b505051918291602083526020830190611f37565b6107f89293503d8091833e6107f08183611c84565b810190612350565b9038806107c7565b83806003193601126105055780f35b509190346102f85760203660031901126102f85761082b611bbf565b81516305431f4560e41b81526001600160a01b039091169381019390935281836024816108015afa9182156108bd578092610876575b81516020808252819061039390820186611c13565b9091503d8082853e6108888185611c84565b8301926020818503126102f8578051916001600160401b0383116105055750926108b6916103939401612044565b9038610861565b9051903d90823e3d90fd5b50346102745760603660031901126102745780359163ffffffff831683036107555761091f60206108f7611f1b565b94610900611efd565b956109e7575b835180938192632efe8a5f60e01b8352308884016121da565b0381886108015af19081156109dd5785916109bf575b50156109825750506109445780f35b6001546109538160070b612126565b6001600160401b0316906001600160401b0319161760015561097f81808080600f335af1610269612154565b80f35b906020606492519162461bcd60e51b835282015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152fd5b6109d7915060203d811161029f576102918183611c84565b38610935565b82513d87823e3d90fd5b6001546109f68160070b612126565b6001600160401b0316906001600160401b03191617600155610a2287808080600f335af1610269612154565b610906565b508290346102f8576020918260031936011261050557610a45611bbf565b845163a66cb60560e01b81526001600160a01b039091169281019290925280826024816108015afa918215610b82578192610ad5575b5083519280840190808552835180925280868601968360051b870101940192955b828710610aa95785850386f35b909192938280610ac5600193603f198a82030186528851611c13565b9601920196019592919092610a9c565b9091503d8083833e610ae78183611c84565b810183828203126102745781516001600160401b03928382116102f457019080601f8301121561075557815190610b1d82611e34565b93610b2a88519586611c84565b828552868086019360051b850101938285116106b157878101935b858510610b59575050505050509084610a7b565b8451838111610b7e578991610b7386848094870101612044565b815201940193610b45565b8880fd5b508351903d90823e3d90fd5b509034610274576060366003190112610274576001600160401b0382358181116102f457610bbf9036908501611cc0565b92610bc8611bda565b916044359081116106b557610be09036908301611cc0565b91835191632d4ecd4b60e11b835282610bfe60209733848401611feb565b0392868161080195818b885af1908115610cf6578891610cd9575b5015610c965791610c42939187809487519687958694859363b46a8d6160e01b85528401611feb565b03925af1938415610c8b578094610c69575b50506103939051928284938452830190611dc5565b61039392945090610c83913d8091833e6105a08183611c84565b929038610c54565b8251903d90823e3d90fd5b845162461bcd60e51b8152908101869052601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610cf09150873d891161029f576102918183611c84565b38610c19565b86513d8a823e3d90fd5b5090346102745782610d1136611d83565b93610d2d8451958693849363b46a8d6160e01b85528401611feb565b0381836108015af190811561074c5750610d45575080fd5b6102f8903d8084833e6105a08183611c84565b5090346102745760203660031901126102745781356001600160401b03811161075557610da992610d8e60209236908301611cc0565b8351632d4ecd4b60e11b815294859283929030908401611feb565b0381866108015af19182156105b05760209392610dca575b50519015158152f35b610de2919250833d811161029f576102918183611c84565b9038610dc1565b50346102745781600319360112610274579160209283610e07611bbf565b610e0f611fac565b92610e2b86519485938493632efe8a5f60e01b855284016121da565b0381856108015af1829181610e53575b50610e4b5750905b519015158152f35b905090610e43565b610e6b919250853d811161029f576102918183611c84565b9038610e3b565b508290346102f857600319608036820112610274576001600160401b0382358181116102f457610ea59036908501611cc0565b926024358281168091036106b557604435918383168093036106b1576064358481116104f65780360360a087820112610b7e57895196610ee488611c69565b6060958689528a6020809a0152610f118c519a63479239e760e11b8c526080878d015260848c0190611c13565b9560248b015260448a0152888503016064890152818301359060221901811215610b7e5781019182013591602401858311610b7e578236038113610b7e57878484610fb6608484968f8f9960c098601f9f9e9d9c60a090528160a089015289880137898886880101528b610f8760248401611fbf565b168d8701528b610f9960448401611fbf565b1690860152610faa60648201611f2a565b15158a86015201611f2a565b15156080830152891999018916010301816108015afa9485156111885786948796611054575b5050865187815284518189018190529096878301958501925b82821061102657505050508161101b869787860383890152865190808752860190611c13565b940151169101520390f35b835180518616885286015180518789015286015160ff168a8801529586019592850192600190910190610ff5565b91955093503d8087863e6110688186611c84565b84019387818603126106b15780518381116104f657810185601f820112156104f657805161109581611e34565b936110a28b519586611c84565b8185528689818701930284010192888411611184578701915b838310611127575050505083810151908382116104f6570187818603126106b1578751946110e886611c69565b8151848111610b7e57820181601f82011215610b7e57916111128692848461111a9651910161200d565b875201612375565b8385015292938780610fdc565b8289038a81126104ee578c8381519261113f84611c69565b61114887612375565b845201126104ee578a9189918e61117181519161116483611c69565b858901518352880161227b565b84820152838201528152019201916110bb565b8a80fd5b87513d88823e3d90fd5b509034610274576020366003190112610274578282356001600160401b0381116102f8576111c560209136908601611cc0565b936107ae845195869384936307ba81ef60e31b85528401526024830190611c13565b50508134610505578061097f9261122161122f61120336611d83565b9093519283916020830195632d4ecd4b60e11b875260248401611feb565b03601f198101835282611c84565b51906108015afa61123e612154565b50612389565b509034610274578261125536611d83565b936107ae845195869384936326b558ed60e21b85528401611feb565b509034610274578060031936011261027457602061128d611bbf565b611295611fac565b93610da984519586938493632efe8a5f60e01b855284016121da565b5090346102745780600319360112610274576112cb611bbf565b6001600160401b03906024358281116106b5576112ed60209136908701611e4b565b94600154926112fe8460070b6121fa565b85166001600160401b03198095161760015561065086519788938493630b4ac1e760e21b855260018060a01b0316908401528760248401526044830190611dc5565b5050346102f857816003193601126102f85760209060015460070b9051908152f35b509034610274576080366003190112610274576001600160401b039282358481116102f8576113949036908501611cc0565b9361139d611bda565b908260206113a9611efd565b966113b2611f0c565b97611489575b6113d98751998a938493631e7271df60e11b85528401526024830190611c13565b0381836108015af194851561147f57610393968496611463575b5061140e575b50505051918291602083526020830190611dc5565b6001549061141e8260070b612126565b67ffffffffffffffff199092169116176001556001600160a01b031690308203611449575b806113f9565b808080600f61145c955af1610269612154565b3880611443565b6114789196503d8086833e6105a08183611c84565b94386113f3565b84513d85823e3d90fd5b6001546114988160070b612126565b67ffffffffffffffff19909116908516176001556001600160a01b038516833082036114c6575b50506113b8565b808080600f6114d9955af1610269612154565b38836114bf565b5090346102745760206114f236611d83565b93610da984519586938493632d4ecd4b60e11b85528401611feb565b509034610274578260031936011261027457828151809363014d140b60e41b8252816108015afa9182156105b0578361039394936107db57505051918291602083526020830190611f37565b50903461027457828061159261122161157236611d83565b86939193519283916020830195632d4ecd4b60e11b875260248401611feb565b51906108015af46115a1612154565b50156115ab578280f35b906020608492519162461bcd60e51b8352820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152fd5b509034610274576060366003190112610274576001600160401b0382358181116102f457938061162e61165f9636908701611cc0565b611636611f1b565b9561163f611efd565b966116f5575b855163b46a8d6160e01b8152978892839230908401611feb565b0381836108015af19384156116e9576103939582956116cd575b5061169257505051918291602083526020830190611dc5565b6116c691600154906116a68260070b612126565b16906001600160401b03191617600155808080600f335af1610269612154565b3880610577565b6116e29195503d8084833e6105a08183611c84565b9338611679565b508251903d90823e3d90fd5b6001546117048160070b612126565b8616906001600160401b0319161760015561172983808080600f335af1610269612154565b611645565b50903461027457602036600319011261027457828235926001600160401b0384116102f85761176361055d9436908301611cc0565b835163b46a8d6160e01b815294859283929030908401611feb565b828185346102f85760803660031901126102f85761179a611bbf565b6117a2611bda565b936001600160401b03926044358481116106b5576117c4869136908501611cc0565b916117cd611f0c565b936117ff8251948593849363ad5c4cdd60e01b855260018060a01b03809a169085015260248401526044830190611c13565b038183305af1611852575b50611813578280f35b82600f81939261184a9683946001549061182f8260070b612126565b16906001600160401b03191617600155165af1610269612154565b818181808280f35b611865903d8087833e6105a08183611c84565b508661180a565b5034610274576080366003190112610274576001600160401b039181358381116102f45761189d9036908401611cc0565b6024358481116106b5576118b660209136908601611e4b565b916118bf611efd565b946118c8611f0c565b95611962575b6118eb85519485938493631758efa960e11b855230908501612245565b0381886108015af19182156102a657508491611944575b501561027457611910575080f35b600154906119208260070b612126565b16906001600160401b0319161760015561097f81808080600f335af1610269612154565b61195c915060203d811161029f576102918183611c84565b38611902565b6001546119718160070b612126565b8816906001600160401b0319161760015561199688808080600f335af1610269612154565b6118ce565b50903461027457826119ac36611d83565b9361055d8451958693849363b46a8d6160e01b85528401611feb565b50346102745760209081600319360112610755578035936001600160401b03918286116102f85781846119ff879836908501611cc0565b928751611a0b81611c38565b606099818b80935282858201520152611a3b885194859384936354212a8960e01b85528401526024830190611c13565b03816108015afa928315611b39578293611a9e575b505050610393918351948594828652611a8d611a76855184868a01526080890190611c13565b9385015193601f19948589830301848a0152611d07565b930151918584030190850152611d07565b909192503d8084843e611ab18184611c84565b8201918481840312610755578051908282116102f45701868184031261075557855193611add85611c38565b81518381116102f85784611af2918401612044565b8552858201518381116102f85784611b0b918401612289565b8686015286820151928311610505575091611b2c9161039395949301612289565b8482015290913880611a50565b85513d84823e3d90fd5b9150503461027457602036600319011261027457918061039393611b65611bbf565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611b9481611c38565b51906108015afa90611bad611ba7612154565b92612389565b51918291602083526020830190611c13565b600435906001600160a01b0382168203611bd557565b600080fd5b602435906001600160a01b0382168203611bd557565b60005b838110611c035750506000910152565b8181015183820152602001611bf3565b90602091611c2c81518092818552858086019101611bf0565b601f01601f1916010190565b606081019081106001600160401b03821117611c5357604052565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b03821117611c5357604052565b90601f801991011681019081106001600160401b03821117611c5357604052565b6001600160401b038111611c5357601f01601f191660200190565b81601f82011215611bd557803590611cd782611ca5565b92611ce56040519485611c84565b82845260208383010111611bd557816000926020809301838601378301015290565b908082519081815260208091019281808460051b8301019501936000915b848310611d355750505050505090565b9091929394958480600192601f19858203018652895190611d5e82516060808452830190611c13565b91838101518483015260ff604080920151169101529801930193019194939290611d25565b906040600319830112611bd5576004356001600160a01b0381168103611bd55791602435906001600160401b038211611bd557611dc291600401611cc0565b90565b908082519081815260208091019281808460051b8301019501936000915b848310611df35750505050505090565b9091929394958480600192601f198582030186528951908280611e1e84516040808652850190611c13565b9301519101529801930193019194939290611de3565b6001600160401b038111611c535760051b60200190565b81601f82011215611bd5578035611e6181611e34565b92604091611e7183519586611c84565b808552602093848087019260051b82010193838511611bd557858201925b858410611ea0575050505050505090565b6001600160401b03908435828111611bd55784019083601f198389030112611bd5578351611ecd81611c69565b89830135938411611bd5578483611eea8a8d809881980101611cc0565b8352013583820152815201930192611e8f565b604435908115158203611bd557565b606435908115158203611bd557565b602435908115158203611bd557565b35908115158203611bd557565b90815180825260208092019182818360051b82019501936000915b848310611f625750505050505090565b90919293949584808284600194038652895190611f8782516060808452830190611c13565b91838101518483015260ff604080920151169101529801930193019194939290611f52565b6024359063ffffffff82168203611bd557565b35906001600160401b0382168203611bd557565b90816020910312611bd557518015158103611bd55790565b6001600160a01b039091168152604060208201819052611dc292910190611c13565b9092919261201a81611ca5565b916120286040519384611c84565b829482845282820111611bd5576020612042930190611bf0565b565b9080601f83011215611bd5578151611dc29260200161200d565b906020908183820312611bd55782516001600160401b0393848211611bd557019080601f83011215611bd557815161209581611e34565b9460406120a481519788611c84565b828752858088019360051b86010194848611611bd557868101935b8685106120d157505050505050505090565b8451848111611bd557820183601f198289030112611bd5578351916120f583611c69565b8982015192868411611bd55785836121138b8e809881980101612044565b83520151838201528152019401936120bf565b60070b677fffffffffffffff811461213e5760010190565b634e487b7160e01b600052601160045260246000fd5b3d1561217f573d9061216582611ca5565b916121736040519384611c84565b82523d6000602084013e565b606090565b1561218b57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6001600160a01b03909116815263ffffffff909116602082015260400190565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213e57565b60070b6000190190677fffffffffffffff198212677fffffffffffffff83131761213e57565b6001600160a01b039091168152606060208201819052611dc293919261226d91840190611c13565b916040818403910152611dc5565b519060ff82168203611bd557565b9080601f83011215611bd55781516122a081611e34565b926040916122b083519586611c84565b808552602093848087019260051b84010193818511611bd557858401925b8584106122df575050505050505090565b8351906001600160401b0391828111611bd55786019060609283601f198488030112611bd55784519061231182611c38565b8a840151908111611bd5578a948461233189886123419581990101612044565b845287810151868501520161227b565b858201528152019301926122ce565b90602082820312611bd55781516001600160401b038111611bd557611dc29201612289565b51906001600160401b0382168203611bd557565b1561239057565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fdfea2646970667358221220c29b806ba0c5393e3d3328caa418ca6534f2dcf4f200fd01cb544b8d104e1e3564736f6c63430008140033", + "bytecode": "0x60806040523461027957604051602081016001600160401b038111828210176101c8576040819052606081016001600160401b038111828210176101c857604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760208201526261746560e81b604082015281525f5460015f55806001106101dc575b505f8080525f5160206125905f395f51905f52915b600182106100b3576040516122c490816102cc8239f35b80518051906001600160401b0382116101c8576100d0855461027d565b601f811161018d575b50602090601f83116001146101245792826001949360209386955f92610119575b50505f19600383901b1c191690841b1786555b0193019101909161009c565b015190505f806100fa565b90601f19831691865f52815f20925f5b818110610175575093602093600196938796938388951061015d575b505050811b01865561010d565b01515f1960f88460031b161c191690555f8080610150565b82840151855560019094019360209384019301610134565b6101b890865f5260205f20601f850160051c810191602086106101be575b601f0160051c01906102b5565b5f6100d9565b90915081906101ab565b634e487b7160e01b5f52604160045260245ffd5b5f80525f5160206125905f395f51905f52017f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5645b81811061021d5750610087565b8061022a6001925461027d565b80610237575b5001610210565b601f8111831461024c57505f81555b5f610230565b61026890825f5283601f60205f20920160051c820191016102b5565b805f525f6020812081835555610246565b5f80fd5b90600182811c921680156102ab575b602083101461029757565b634e487b7160e01b5f52602260045260245ffd5b91607f169161028c565b8181106102c0575050565b5f81556001016102b556fe6080806040526004361015610012575f80fd5b5f3560e01c90816301b6800014611a8f575080630c05e9e4146119055780630da84768146118f3578063151732ec146117eb5780631b050207146116f9578063201139a2146116aa5780632947221b14611574578063296c60aa146114f8578063382d823c146114ac57806346e16d341461147d578063613d4de81461130e57806361bc221a146112ee5780636b7a547c146112585780636f669da41461123a57806378a5dfd11461120c578063796b96d2146111af5780637c9db0bb1461115957806388b2d58114610de057806393574cd114610d51578063963516e414610cc1578063ad5c4cdd14610c6a578063b2d1788314610b50578063b6a216ae146109ea578063be4efc5714610897578063cb85aa0a146107f1578063d0e30db0146107e4578063d3f831be1461073f578063dd987c20146106b3578063ddbfa271146105ac578063e0421e3914610506578063e236c7a6146102f15763f9ed9b671461017c575f80fd5b3461026757608036600319011261026757610195611b0b565b6024356001600160401b038111610267576101b4903690600401611d64565b9061020260206101c2611e1d565b926101cb611e2c565b936102a5575b60405180938192630b4ac1e760e21b835260018060a01b031696876004840152604060248401526044830190611ce1565b03815f6108015af190811561029a575f9161026b575b50156102675761022457005b5f808080600f6102659560015461023d8160070b61211b565b6001600160401b0316906001600160401b031916176001555af161025f611e7e565b50612147565b005b5f80fd5b61028d915060203d602011610293575b6102858183611ba5565b81019061219d565b5f610218565b503d61027b565b6040513d5f823e3d90fd5b6001546102b48160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556102ec5f808080600f6001600160a01b0387165af161025f611e7e565b6101d1565b346102675760203660031901126102675761030a611b0b565b604051630a97c34560e31b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f905f926103dc575b5090604051809260408201926040835281518094526060830193602060608260051b8601019301945f905b82821061038b57858061038787878382036020850152611c27565b0390f35b919360019193955060206103ca8192605f198b8203018652895190836103ba8351604084526040840190611b37565b9201519084818403910152611c27565b9701920192018694929593919561036c565b9150503d805f833e6103ee8183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019180601f840112156102675782519261042584611d4d565b936104336040519586611ba5565b80855260208086019160051b830101918383116102675760208101915b83831061047f575050505060208201516001600160401b038111610267576104789201611f57565b9082610341565b82516001600160401b038111610267578201906040828703601f19011261026757604051906104ad82611b8a565b60208301516001600160401b038111610267578760206104cf92860101611f2f565b82526040830151916001600160401b038311610267576104f788602080969581960101611f57565b83820152815201920191610450565b34610267576020366003190112610267576004356001600160401b038111610267575f61053a61055c923690600401611be1565b60405180938192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af1801561029a57610387915f9161058a575b50604051918291602083526020830190611ce1565b6105a691503d805f833e61059e8183611ba5565b810190612024565b82610575565b34610267576060366003190112610267576105c5611b0b565b6024356001600160401b038111610267576105e4903690600401611be1565b604435906001600160401b038211610267576106066020923690600401611d64565b926001546106168160070b612210565b6001600160401b0316906001600160401b0319161760015561064c6040519485938493631758efa960e11b8552600485016121b5565b03815f6108015af1801561029a576020915f91610696575b506001546106748160070b612235565b6001600160401b0316906001600160401b031916176001556040519015158152f35b6106ad9150823d8411610293576102858183611ba5565b82610664565b6040366003190112610267576004356001600160401b0381116102675760206106e361070b923690600401611be1565b604051809381926353266bbb60e01b8352306004840152606060248401526064830190611b37565b602435604483015203815f6108005af1801561029a5761072757005b6102659060203d602011610293576102858183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267575f610773610795923690600401611be1565b604051809381926342d9696d60e11b8352602060048401526024830190611b37565b03816108015afa801561029a57610387915f916107c2575b50604051918291602083526020830190611c27565b6107de91503d805f833e6107d68183611ba5565b8101906121eb565b826107ad565b5f36600319011261026757005b346102675760203660031901126102675761080a611b0b565b6040516305431f4560e41b81526001600160a01b0390911660048201525f816024816108015afa801561029a575f90610856575b61038790604051918291602083526020830190611b37565b503d805f833e6108668183611ba5565b810190602081830312610267578051916001600160401b03831161026757610387926108929201611f2f565b61083e565b346102675760603660031901126102675760043563ffffffff81168103610267576108ef60206108c5611e3b565b926108ce611e1d565b936109aa575b60405180938192632efe8a5f60e01b8352306004840161225a565b03815f6108015af190811561029a575f9161098b575b501561094c5761091157005b6001546109208160070b61211b565b6001600160401b0316906001600160401b031916176001556102655f808080600f335af161025f611e7e565b60405162461bcd60e51b81526020600482015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152606490fd5b6109a4915060203d602011610293576102858183611ba5565b82610905565b6001546109b98160070b61211b565b6001600160401b0316906001600160401b031916176001556109e55f808080600f335af161025f611e7e565b6108d4565b3461026757602036600319011261026757610a03611b0b565b60405163a66cb60560e01b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f91610a9f575b506040518091602082016020835281518091526040830190602060408260051b8601019301915f905b828210610a7057505050500390f35b91936001919395506020610a8f8192603f198a82030186528851611b37565b9601920192018594939192610a61565b90503d805f833e610ab08183611ba5565b810190602081830312610267578051906001600160401b03821161026757019080601f83011215610267578151610ae681611d4d565b92610af46040519485611ba5565b81845260208085019260051b820101918383116102675760208201905b838210610b2357505050505081610a38565b81516001600160401b03811161026757602091610b4587848094880101611f2f565b815201910190610b11565b34610267576060366003190112610267576004356001600160401b03811161026757610b80903690600401611be1565b610b88611b21565b6044356001600160401b038111610267576020610bac610bc8923690600401611be1565b9360405180938192632d4ecd4b60e11b835233600484016120f9565b03815f6108015af190811561029a575f91610c4b575b5015610c065760405163b46a8d6160e01b8152915f918391829161055c9190600484016120f9565b60405162461bcd60e51b815260206004820152601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610c64915060203d602011610293576102858183611ba5565b83610bde565b3461026757610c985f610c7c36611c9f565b60405163b46a8d6160e01b8152938492839290600484016120f9565b0381836108015af1801561029a57610cae575f80fd5b610267903d805f833e61059e8183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267576020610cf6610d11923690600401611be1565b60405180938192632d4ecd4b60e11b835230600484016120f9565b03815f6108015af1801561029a576020915f91610d34575b506040519015158152f35b610d4b9150823d8411610293576102858183611ba5565b82610d29565b3461026757604036600319011261026757610d936020610d6f611b0b565b610d77611e57565b604051632efe8a5f60e01b81529384928392906004840161225a565b03815f6108015af15f9181610dbf575b50610db7575060205f5b6040519015158152f35b602090610dad565b610dd991925060203d602011610293576102858183611ba5565b9082610da3565b34610267576080366003190112610267576004356001600160401b03811161026757610e10903690600401611be1565b6024356001600160401b038116809103610267576044356001600160401b03811680910361026757606435906001600160401b038211610267578136039060a0600319830112610267575f6020604051610e6981611b8a565b60608152015260405163479239e760e11b81526080600482015294610e92906084870190611b37565b936024860152604485015260031984840301606485015281600401359060221901811215610267578101906024600483013592016001600160401b038311610267578236038113610267578383610f4e608460c0958997889660a05f9b528160a088015288870137888785870101526001600160401b03610f1560248301611e6a565b1660208601526001600160401b03610f2f60448301611e6a565b166040860152610f4160648201611e4a565b1515606086015201611e4a565b15156080830152601f01601f1916010301816108015afa801561029a575f915f91611007575b506040519060408201926040835280518094526020606084019101935f5b818110610fcf575050828094508103602084015260206001600160401b0381610fc48551604086526040860190611b37565b940151169101520390f35b855180516001600160401b0316845260209081015180518286015281015160ff16604085015290950194606090920191600101610f92565b9150503d805f833e6110198183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019082601f8301121561026757815161104f81611d4d565b9261105d6040519485611ba5565b8184526020606081860193028201019085821161026757602001915b8183106110f5575050506020810151906001600160401b038211610267570160408184031261026757604051926110af84611b8a565b81516001600160401b0381116102675782019181601f84011215610267576110e160209284846110e996519101611ef9565b85520161227a565b60208301529082610f74565b8286036060811261026757604080519161110e83611b8a565b6111178661227a565b8352601f1901126102675760609160209160405161113481611b8a565b83870151815261114660408801611f49565b8482015283820152815201920191611079565b34610267576020366003190112610267576004356001600160401b038111610267575f61118d610795923690600401611be1565b604051809381926307ba81ef60e31b8352602060048401526024830190611b37565b34610267576102655f806111f76111e96111c836611c9f565b6040939193519283916020830195632d4ecd4b60e11b8752602484016120f9565b03601f198101835282611ba5565b51906108015afa611206611e7e565b50611ead565b34610267576107955f61121e36611c9f565b6040516326b558ed60e21b8152938492839290600484016120f9565b3461026757604036600319011261026757610d116020610d6f611b0b565b3461026757604036600319011261026757611271611b0b565b6024356001600160401b0381116102675761064c916112966020923690600401611d64565b906001546112a68160070b612210565b6001600160401b0316906001600160401b031916176001556040519384928392630b4ac1e760e21b845260018060a01b03166004840152604060248401526044830190611ce1565b34610267575f36600319011261026757602060015460070b604051908152f35b34610267576080366003190112610267576004356001600160401b03811161026757611341611383913690600401611be1565b611349611b21565b5f611352611e1d565b9261135b611e2c565b93611421575b60405180958192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af191821561029a57610387935f93611405575b506113b75750604051918291602083526020830190611ce1565b6001546113c68160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b0316308114610575575f808080600f6105a6955af161025f611e7e565b61141a9193503d805f833e61059e8183611ba5565b918461139d565b6001546114308160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b038316308103611463575b50611361565b82808080600f611477955af161025f611e7e565b8561145d565b3461026757610d11602061149036611c9f565b604051632d4ecd4b60e11b8152938492839290600484016120f9565b34610267575f3660031901126102675760405163014d140b60e41b81525f816004816108015afa801561029a57610387915f916107c25750604051918291602083526020830190611c27565b34610267575f8061150e6111e96111c836611c9f565b51906108015af461151d611e7e565b501561152557005b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b34610267576060366003190112610267576004356001600160401b038111610267576115a76115da913690600401611be1565b5f6115b0611e3b565b916115b9611e1d565b9261166a575b6040518094819263b46a8d6160e01b835230600484016120f9565b0381836108015af190811561029a57610387925f9261164e575b5061160e575b604051918291602083526020830190611ce1565b60015461161d8160070b61211b565b6001600160401b0316906001600160401b031916176001556116495f808080600f335af161025f611e7e565b6115fa565b6116639192503d805f833e61059e8183611ba5565b90836115f4565b6001546116798160070b61211b565b6001600160401b0316906001600160401b031916176001556116a582808080600f335af161025f611e7e565b6115bf565b34610267576020366003190112610267576004356001600160401b038111610267575f6116de61055c923690600401611be1565b6040518093819263b46a8d6160e01b835230600484016120f9565b3461026757608036600319011261026757611712611b0b565b61171a611b21565b906044356001600160401b038111610267575f61173e61177a923690600401611be1565b611746611e2c565b6040805163ad5c4cdd60e01b81526001600160a01b0390961660048701526024860152939283918291906044830190611b37565b038183305af16117d3575b5061178c57005b5f808080600f610265956001546117a58160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b03165af161025f611e7e565b6117e6903d805f833e61059e8183611ba5565b611785565b34610267576080366003190112610267576004356001600160401b0381116102675761181b903690600401611be1565b6024356001600160401b03811161026757602061183f611872923690600401611d64565b611847611e1d565b93611850611e2c565b946118b3575b604051631758efa960e11b8152938492839230600485016121b5565b03815f6108015af190811561029a575f91611894575b50156102675761091157005b6118ad915060203d602011610293576102858183611ba5565b82611888565b6001546118c28160070b61211b565b6001600160401b0316906001600160401b031916176001556118ee5f808080600f335af161025f611e7e565b611856565b346102675761055c5f610c7c36611c9f565b34610267576020366003190112610267576004356001600160401b038111610267575f611939611975923690600401611be1565b60606040805161194881611b5b565b8281528260208201520152604051809381926354212a8960e01b8352602060048401526024830190611b37565b03816108015afa801561029a575f906119db575b610387906040519182916020835260406119c76119b28351606060208801526080870190611b37565b6020840151868203601f190184880152611c27565b910151838203601f19016060850152611c27565b503d805f833e6119eb8183611ba5565b810190602081830312610267578051906001600160401b03821161026757016060818303126102675760405190611a2182611b5b565b80516001600160401b0381116102675783611a3d918301611f2f565b825260208101516001600160401b0381116102675783611a5e918301611f57565b60208301526040810151926001600160401b0384116102675761038793611a859201611f57565b6040820152611989565b34610267576020366003190112610267575f8061038792611aae611b0b565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611adf604482611ba5565b51906108015afa611af7611af1611e7e565b91611ead565b604051918291602083526020830190611b37565b600435906001600160a01b038216820361026757565b602435906001600160a01b038216820361026757565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b606081019081106001600160401b03821117611b7657604052565b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b03821117611b7657604052565b90601f801991011681019081106001600160401b03821117611b7657604052565b6001600160401b038111611b7657601f01601f191660200190565b81601f8201121561026757803590611bf882611bc6565b92611c066040519485611ba5565b8284526020838301011161026757815f926020809301838601378301015290565b9080602083519182815201916020808360051b8301019401925f915b838310611c5257505050505090565b9091929394602080600192601f19858203018652885190604060ff81611c818551606086526060860190611b37565b94868101518786015201511691015297019301930191939290611c43565b906040600319830112610267576004356001600160a01b03811681036102675791602435906001600160401b03821161026757611cde91600401611be1565b90565b9080602083519182815201916020808360051b8301019401925f915b838310611d0c57505050505090565b9091929394602080600192601f198582030186528851908280611d388451604085526040850190611b37565b93015191015297019301930191939290611cfd565b6001600160401b038111611b765760051b60200190565b81601f8201121561026757803590611d7b82611d4d565b92611d896040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b838510611db557505050505090565b84356001600160401b0381116102675782016040818503601f1901126102675760405191611de283611b8a565b6020820135926001600160401b03841161026757604083611e0a886020809881980101611be1565b8352013583820152815201940193611da6565b60443590811515820361026757565b60643590811515820361026757565b60243590811515820361026757565b3590811515820361026757565b6024359063ffffffff8216820361026757565b35906001600160401b038216820361026757565b3d15611ea8573d90611e8f82611bc6565b91611e9d6040519384611ba5565b82523d5f602084013e565b606090565b15611eb457565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fd5b929192611f0582611bc6565b91611f136040519384611ba5565b829481845281830111610267578281602093845f96015e010152565b9080601f83011215610267578151611cde92602001611ef9565b519060ff8216820361026757565b9080601f8301121561026757815191611f6f83611d4d565b92611f7d6040519485611ba5565b80845260208085019160051b830101918383116102675760208101915b838310611fa957505050505090565b82516001600160401b038111610267578201906060828703601f1901126102675760405190611fd782611b5b565b6020830151916001600160401b038311610267576120146060856120038b602080999881990101611f2f565b845260408101518685015201611f49565b6040820152815201920191611f9a565b602081830312610267578051906001600160401b038211610267570181601f820112156102675780519061205782611d4d565b926120656040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b83851061209157505050505090565b84516001600160401b0381116102675782016040818503601f19011261026757604051916120be83611b8a565b6020820151926001600160401b038411610267576040836120e6886020809881980101611f2f565b8352015183820152815201940193612082565b6001600160a01b039091168152604060208201819052611cde92910190611b37565b60070b677fffffffffffffff81146121335760010190565b634e487b7160e01b5f52601160045260245ffd5b1561214e57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b90816020910312610267575180151581036102675790565b6001600160a01b039091168152606060208201819052611cde9391926121dd91840190611b37565b916040818403910152611ce1565b906020828203126102675781516001600160401b03811161026757611cde9201611f57565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213357565b60070b5f190190677fffffffffffffff198212677fffffffffffffff83131761213357565b6001600160a01b03909116815263ffffffff909116602082015260400190565b51906001600160401b03821682036102675756fea26469706673582212201fdb5ca265b316e8bc6755c8728c0170fba179ac01920bc8d9f8cf20ca1ae7b564736f6c634300081c0033290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301b6800014611a8f575080630c05e9e4146119055780630da84768146118f3578063151732ec146117eb5780631b050207146116f9578063201139a2146116aa5780632947221b14611574578063296c60aa146114f8578063382d823c146114ac57806346e16d341461147d578063613d4de81461130e57806361bc221a146112ee5780636b7a547c146112585780636f669da41461123a57806378a5dfd11461120c578063796b96d2146111af5780637c9db0bb1461115957806388b2d58114610de057806393574cd114610d51578063963516e414610cc1578063ad5c4cdd14610c6a578063b2d1788314610b50578063b6a216ae146109ea578063be4efc5714610897578063cb85aa0a146107f1578063d0e30db0146107e4578063d3f831be1461073f578063dd987c20146106b3578063ddbfa271146105ac578063e0421e3914610506578063e236c7a6146102f15763f9ed9b671461017c575f80fd5b3461026757608036600319011261026757610195611b0b565b6024356001600160401b038111610267576101b4903690600401611d64565b9061020260206101c2611e1d565b926101cb611e2c565b936102a5575b60405180938192630b4ac1e760e21b835260018060a01b031696876004840152604060248401526044830190611ce1565b03815f6108015af190811561029a575f9161026b575b50156102675761022457005b5f808080600f6102659560015461023d8160070b61211b565b6001600160401b0316906001600160401b031916176001555af161025f611e7e565b50612147565b005b5f80fd5b61028d915060203d602011610293575b6102858183611ba5565b81019061219d565b5f610218565b503d61027b565b6040513d5f823e3d90fd5b6001546102b48160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556102ec5f808080600f6001600160a01b0387165af161025f611e7e565b6101d1565b346102675760203660031901126102675761030a611b0b565b604051630a97c34560e31b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f905f926103dc575b5090604051809260408201926040835281518094526060830193602060608260051b8601019301945f905b82821061038b57858061038787878382036020850152611c27565b0390f35b919360019193955060206103ca8192605f198b8203018652895190836103ba8351604084526040840190611b37565b9201519084818403910152611c27565b9701920192018694929593919561036c565b9150503d805f833e6103ee8183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019180601f840112156102675782519261042584611d4d565b936104336040519586611ba5565b80855260208086019160051b830101918383116102675760208101915b83831061047f575050505060208201516001600160401b038111610267576104789201611f57565b9082610341565b82516001600160401b038111610267578201906040828703601f19011261026757604051906104ad82611b8a565b60208301516001600160401b038111610267578760206104cf92860101611f2f565b82526040830151916001600160401b038311610267576104f788602080969581960101611f57565b83820152815201920191610450565b34610267576020366003190112610267576004356001600160401b038111610267575f61053a61055c923690600401611be1565b60405180938192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af1801561029a57610387915f9161058a575b50604051918291602083526020830190611ce1565b6105a691503d805f833e61059e8183611ba5565b810190612024565b82610575565b34610267576060366003190112610267576105c5611b0b565b6024356001600160401b038111610267576105e4903690600401611be1565b604435906001600160401b038211610267576106066020923690600401611d64565b926001546106168160070b612210565b6001600160401b0316906001600160401b0319161760015561064c6040519485938493631758efa960e11b8552600485016121b5565b03815f6108015af1801561029a576020915f91610696575b506001546106748160070b612235565b6001600160401b0316906001600160401b031916176001556040519015158152f35b6106ad9150823d8411610293576102858183611ba5565b82610664565b6040366003190112610267576004356001600160401b0381116102675760206106e361070b923690600401611be1565b604051809381926353266bbb60e01b8352306004840152606060248401526064830190611b37565b602435604483015203815f6108005af1801561029a5761072757005b6102659060203d602011610293576102858183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267575f610773610795923690600401611be1565b604051809381926342d9696d60e11b8352602060048401526024830190611b37565b03816108015afa801561029a57610387915f916107c2575b50604051918291602083526020830190611c27565b6107de91503d805f833e6107d68183611ba5565b8101906121eb565b826107ad565b5f36600319011261026757005b346102675760203660031901126102675761080a611b0b565b6040516305431f4560e41b81526001600160a01b0390911660048201525f816024816108015afa801561029a575f90610856575b61038790604051918291602083526020830190611b37565b503d805f833e6108668183611ba5565b810190602081830312610267578051916001600160401b03831161026757610387926108929201611f2f565b61083e565b346102675760603660031901126102675760043563ffffffff81168103610267576108ef60206108c5611e3b565b926108ce611e1d565b936109aa575b60405180938192632efe8a5f60e01b8352306004840161225a565b03815f6108015af190811561029a575f9161098b575b501561094c5761091157005b6001546109208160070b61211b565b6001600160401b0316906001600160401b031916176001556102655f808080600f335af161025f611e7e565b60405162461bcd60e51b81526020600482015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152606490fd5b6109a4915060203d602011610293576102858183611ba5565b82610905565b6001546109b98160070b61211b565b6001600160401b0316906001600160401b031916176001556109e55f808080600f335af161025f611e7e565b6108d4565b3461026757602036600319011261026757610a03611b0b565b60405163a66cb60560e01b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f91610a9f575b506040518091602082016020835281518091526040830190602060408260051b8601019301915f905b828210610a7057505050500390f35b91936001919395506020610a8f8192603f198a82030186528851611b37565b9601920192018594939192610a61565b90503d805f833e610ab08183611ba5565b810190602081830312610267578051906001600160401b03821161026757019080601f83011215610267578151610ae681611d4d565b92610af46040519485611ba5565b81845260208085019260051b820101918383116102675760208201905b838210610b2357505050505081610a38565b81516001600160401b03811161026757602091610b4587848094880101611f2f565b815201910190610b11565b34610267576060366003190112610267576004356001600160401b03811161026757610b80903690600401611be1565b610b88611b21565b6044356001600160401b038111610267576020610bac610bc8923690600401611be1565b9360405180938192632d4ecd4b60e11b835233600484016120f9565b03815f6108015af190811561029a575f91610c4b575b5015610c065760405163b46a8d6160e01b8152915f918391829161055c9190600484016120f9565b60405162461bcd60e51b815260206004820152601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610c64915060203d602011610293576102858183611ba5565b83610bde565b3461026757610c985f610c7c36611c9f565b60405163b46a8d6160e01b8152938492839290600484016120f9565b0381836108015af1801561029a57610cae575f80fd5b610267903d805f833e61059e8183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267576020610cf6610d11923690600401611be1565b60405180938192632d4ecd4b60e11b835230600484016120f9565b03815f6108015af1801561029a576020915f91610d34575b506040519015158152f35b610d4b9150823d8411610293576102858183611ba5565b82610d29565b3461026757604036600319011261026757610d936020610d6f611b0b565b610d77611e57565b604051632efe8a5f60e01b81529384928392906004840161225a565b03815f6108015af15f9181610dbf575b50610db7575060205f5b6040519015158152f35b602090610dad565b610dd991925060203d602011610293576102858183611ba5565b9082610da3565b34610267576080366003190112610267576004356001600160401b03811161026757610e10903690600401611be1565b6024356001600160401b038116809103610267576044356001600160401b03811680910361026757606435906001600160401b038211610267578136039060a0600319830112610267575f6020604051610e6981611b8a565b60608152015260405163479239e760e11b81526080600482015294610e92906084870190611b37565b936024860152604485015260031984840301606485015281600401359060221901811215610267578101906024600483013592016001600160401b038311610267578236038113610267578383610f4e608460c0958997889660a05f9b528160a088015288870137888785870101526001600160401b03610f1560248301611e6a565b1660208601526001600160401b03610f2f60448301611e6a565b166040860152610f4160648201611e4a565b1515606086015201611e4a565b15156080830152601f01601f1916010301816108015afa801561029a575f915f91611007575b506040519060408201926040835280518094526020606084019101935f5b818110610fcf575050828094508103602084015260206001600160401b0381610fc48551604086526040860190611b37565b940151169101520390f35b855180516001600160401b0316845260209081015180518286015281015160ff16604085015290950194606090920191600101610f92565b9150503d805f833e6110198183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019082601f8301121561026757815161104f81611d4d565b9261105d6040519485611ba5565b8184526020606081860193028201019085821161026757602001915b8183106110f5575050506020810151906001600160401b038211610267570160408184031261026757604051926110af84611b8a565b81516001600160401b0381116102675782019181601f84011215610267576110e160209284846110e996519101611ef9565b85520161227a565b60208301529082610f74565b8286036060811261026757604080519161110e83611b8a565b6111178661227a565b8352601f1901126102675760609160209160405161113481611b8a565b83870151815261114660408801611f49565b8482015283820152815201920191611079565b34610267576020366003190112610267576004356001600160401b038111610267575f61118d610795923690600401611be1565b604051809381926307ba81ef60e31b8352602060048401526024830190611b37565b34610267576102655f806111f76111e96111c836611c9f565b6040939193519283916020830195632d4ecd4b60e11b8752602484016120f9565b03601f198101835282611ba5565b51906108015afa611206611e7e565b50611ead565b34610267576107955f61121e36611c9f565b6040516326b558ed60e21b8152938492839290600484016120f9565b3461026757604036600319011261026757610d116020610d6f611b0b565b3461026757604036600319011261026757611271611b0b565b6024356001600160401b0381116102675761064c916112966020923690600401611d64565b906001546112a68160070b612210565b6001600160401b0316906001600160401b031916176001556040519384928392630b4ac1e760e21b845260018060a01b03166004840152604060248401526044830190611ce1565b34610267575f36600319011261026757602060015460070b604051908152f35b34610267576080366003190112610267576004356001600160401b03811161026757611341611383913690600401611be1565b611349611b21565b5f611352611e1d565b9261135b611e2c565b93611421575b60405180958192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af191821561029a57610387935f93611405575b506113b75750604051918291602083526020830190611ce1565b6001546113c68160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b0316308114610575575f808080600f6105a6955af161025f611e7e565b61141a9193503d805f833e61059e8183611ba5565b918461139d565b6001546114308160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b038316308103611463575b50611361565b82808080600f611477955af161025f611e7e565b8561145d565b3461026757610d11602061149036611c9f565b604051632d4ecd4b60e11b8152938492839290600484016120f9565b34610267575f3660031901126102675760405163014d140b60e41b81525f816004816108015afa801561029a57610387915f916107c25750604051918291602083526020830190611c27565b34610267575f8061150e6111e96111c836611c9f565b51906108015af461151d611e7e565b501561152557005b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b34610267576060366003190112610267576004356001600160401b038111610267576115a76115da913690600401611be1565b5f6115b0611e3b565b916115b9611e1d565b9261166a575b6040518094819263b46a8d6160e01b835230600484016120f9565b0381836108015af190811561029a57610387925f9261164e575b5061160e575b604051918291602083526020830190611ce1565b60015461161d8160070b61211b565b6001600160401b0316906001600160401b031916176001556116495f808080600f335af161025f611e7e565b6115fa565b6116639192503d805f833e61059e8183611ba5565b90836115f4565b6001546116798160070b61211b565b6001600160401b0316906001600160401b031916176001556116a582808080600f335af161025f611e7e565b6115bf565b34610267576020366003190112610267576004356001600160401b038111610267575f6116de61055c923690600401611be1565b6040518093819263b46a8d6160e01b835230600484016120f9565b3461026757608036600319011261026757611712611b0b565b61171a611b21565b906044356001600160401b038111610267575f61173e61177a923690600401611be1565b611746611e2c565b6040805163ad5c4cdd60e01b81526001600160a01b0390961660048701526024860152939283918291906044830190611b37565b038183305af16117d3575b5061178c57005b5f808080600f610265956001546117a58160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b03165af161025f611e7e565b6117e6903d805f833e61059e8183611ba5565b611785565b34610267576080366003190112610267576004356001600160401b0381116102675761181b903690600401611be1565b6024356001600160401b03811161026757602061183f611872923690600401611d64565b611847611e1d565b93611850611e2c565b946118b3575b604051631758efa960e11b8152938492839230600485016121b5565b03815f6108015af190811561029a575f91611894575b50156102675761091157005b6118ad915060203d602011610293576102858183611ba5565b82611888565b6001546118c28160070b61211b565b6001600160401b0316906001600160401b031916176001556118ee5f808080600f335af161025f611e7e565b611856565b346102675761055c5f610c7c36611c9f565b34610267576020366003190112610267576004356001600160401b038111610267575f611939611975923690600401611be1565b60606040805161194881611b5b565b8281528260208201520152604051809381926354212a8960e01b8352602060048401526024830190611b37565b03816108015afa801561029a575f906119db575b610387906040519182916020835260406119c76119b28351606060208801526080870190611b37565b6020840151868203601f190184880152611c27565b910151838203601f19016060850152611c27565b503d805f833e6119eb8183611ba5565b810190602081830312610267578051906001600160401b03821161026757016060818303126102675760405190611a2182611b5b565b80516001600160401b0381116102675783611a3d918301611f2f565b825260208101516001600160401b0381116102675783611a5e918301611f57565b60208301526040810151926001600160401b0384116102675761038793611a859201611f57565b6040820152611989565b34610267576020366003190112610267575f8061038792611aae611b0b565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611adf604482611ba5565b51906108015afa611af7611af1611e7e565b91611ead565b604051918291602083526020830190611b37565b600435906001600160a01b038216820361026757565b602435906001600160a01b038216820361026757565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b606081019081106001600160401b03821117611b7657604052565b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b03821117611b7657604052565b90601f801991011681019081106001600160401b03821117611b7657604052565b6001600160401b038111611b7657601f01601f191660200190565b81601f8201121561026757803590611bf882611bc6565b92611c066040519485611ba5565b8284526020838301011161026757815f926020809301838601378301015290565b9080602083519182815201916020808360051b8301019401925f915b838310611c5257505050505090565b9091929394602080600192601f19858203018652885190604060ff81611c818551606086526060860190611b37565b94868101518786015201511691015297019301930191939290611c43565b906040600319830112610267576004356001600160a01b03811681036102675791602435906001600160401b03821161026757611cde91600401611be1565b90565b9080602083519182815201916020808360051b8301019401925f915b838310611d0c57505050505090565b9091929394602080600192601f198582030186528851908280611d388451604085526040850190611b37565b93015191015297019301930191939290611cfd565b6001600160401b038111611b765760051b60200190565b81601f8201121561026757803590611d7b82611d4d565b92611d896040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b838510611db557505050505090565b84356001600160401b0381116102675782016040818503601f1901126102675760405191611de283611b8a565b6020820135926001600160401b03841161026757604083611e0a886020809881980101611be1565b8352013583820152815201940193611da6565b60443590811515820361026757565b60643590811515820361026757565b60243590811515820361026757565b3590811515820361026757565b6024359063ffffffff8216820361026757565b35906001600160401b038216820361026757565b3d15611ea8573d90611e8f82611bc6565b91611e9d6040519384611ba5565b82523d5f602084013e565b606090565b15611eb457565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fd5b929192611f0582611bc6565b91611f136040519384611ba5565b829481845281830111610267578281602093845f96015e010152565b9080601f83011215610267578151611cde92602001611ef9565b519060ff8216820361026757565b9080601f8301121561026757815191611f6f83611d4d565b92611f7d6040519485611ba5565b80845260208085019160051b830101918383116102675760208101915b838310611fa957505050505090565b82516001600160401b038111610267578201906060828703601f1901126102675760405190611fd782611b5b565b6020830151916001600160401b038311610267576120146060856120038b602080999881990101611f2f565b845260408101518685015201611f49565b6040820152815201920191611f9a565b602081830312610267578051906001600160401b038211610267570181601f820112156102675780519061205782611d4d565b926120656040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b83851061209157505050505090565b84516001600160401b0381116102675782016040818503601f19011261026757604051916120be83611b8a565b6020820151926001600160401b038411610267576040836120e6886020809881980101611f2f565b8352015183820152815201940193612082565b6001600160a01b039091168152604060208201819052611cde92910190611b37565b60070b677fffffffffffffff81146121335760010190565b634e487b7160e01b5f52601160045260245ffd5b1561214e57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b90816020910312610267575180151581036102675790565b6001600160a01b039091168152606060208201819052611cde9391926121dd91840190611b37565b916040818403910152611ce1565b906020828203126102675781516001600160401b03811161026757611cde9201611f57565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213357565b60070b5f190190677fffffffffffffff198212677fffffffffffffff83131761213357565b6001600160a01b03909116815263ffffffff909116602082015260400190565b51906001600160401b03821682036102675756fea26469706673582212201fdb5ca265b316e8bc6755c8728c0170fba179ac01920bc8d9f8cf20ca1ae7b564736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/DistributionCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/FlashLoan.json b/precompiles/testutil/contracts/FlashLoan.json index eae5db6db..74775848c 100644 --- a/precompiles/testutil/contracts/FlashLoan.json +++ b/precompiles/testutil/contracts/FlashLoan.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "FlashLoan", "sourceName": "solidity/precompiles/testutil/contracts/FlashLoan.sol", "abi": [ @@ -93,8 +93,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461002857600080546001600160a01b03191633179055610a4f908161002e8239f35b600080fdfe6080604081815260048036101561001557600080fd5b600092833560e01c9081638da5cb5b1461070e575080638f518430146106605780639b4f21a9146104195763b86219241461004f57600080fd5b610058366107c6565b84549094916001600160a01b03916100739083163314610809565b8451636eb1769f60e11b815233858201908152306020828101919091529793909216918790829081906040010381855afa801561040f5784906103e0575b6100be915034111561085f565b8451926370a0823160e01b92838552308686015260249488818781875afa9081156102f25783916103af575b5087516323b872dd60e01b8152338882019081523060208201523460408201528a9082908190606001038187895af19081156103885790610132918591610392575b506108bc565b875190858252308883015289828881885afa91821561038857908a92918592610352575b5061018b939161016a610170923490610919565b1461093c565b8851809381926353266bbb60e01b83523490308c850161097c565b0381856108005af190811561032b57906101ac918391610335575b506109d8565b855192808452308685015287848681865afa93841561032b5782946102fc575b50865163a9059cbb60e01b815233878201523486820152888160448186885af180156102f257908992916102c5575b50858851809581938252308a8301525afa9182156102b9578192610286575b503483039283116102745750036102345750505160018152f35b606493601b9293519362461bcd60e51b85528401528201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152fd5b634e487b7160e01b8152601185528390fd5b9091508681813d83116102b2575b61029e8183610732565b810103126102ae5751903861021a565b5080fd5b503d610294565b508551903d90823e3d90fd5b6102e490833d85116102eb575b6102dc8183610732565b8101906108a4565b50386101fb565b503d6102d2565b88513d85823e3d90fd5b9093508781813d8311610324575b6103148183610732565b810103126102ae575192386101cc565b503d61030a565b87513d84823e3d90fd5b61034c9150893d8b116102eb576102dc8183610732565b386101a6565b8092508391933d8311610381575b61036a8183610732565b8101031261037d57518991610170610156565b8380fd5b503d610360565b89513d86823e3d90fd5b6103a991508b3d8d116102eb576102dc8183610732565b3861012c565b90508881813d83116103d9575b6103c68183610732565b810103126103d55751386100ea565b8280fd5b503d6103bc565b508681813d8311610408575b6103f68183610732565b8101031261037d576100be90516100b1565b503d6103ec565b86513d86823e3d90fd5b5091610424366107c6565b82549094916001600160a01b039161043f9083163314610809565b8451636eb1769f60e11b815233848201908152306020828101919091529793909216918790829081906040010381855afa80156105c9578590610631575b61048a915034111561085f565b8451906370a0823160e01b80835230858401528783602481855afa9283156106275786936105f4575b5086516323b872dd60e01b81523386820190815230602082015234604082015289908290819060600103818a875af19081156105ea578992916104fc9189916105d357506108bc565b6024885180948193825230898301525afa9081156105c9578591610596575b5061016a61052a923490610919565b303b156103d557908261055393928551809581926308f5184360e41b835234903087850161097c565b038183305af1610568575b5050505160018152f35b67ffffffffffffffff8311610583575050815238808061055e565b634e487b7160e01b825260419052602490fd5b90508681813d83116105c2575b6105ad8183610732565b810103126105be575161016a61051b565b8480fd5b503d6105a3565b86513d87823e3d90fd5b6103a99150843d86116102eb576102dc8183610732565b88513d89823e3d90fd5b9092508781813d8311610620575b61060c8183610732565b8101031261061c575191386104b3565b8580fd5b503d610602565b87513d88823e3d90fd5b508681813d8311610659575b6106478183610732565b810103126105be5761048a905161047d565b503d61063d565b50346103d55760603660031901126103d55780356001600160a01b038116810361037d576024359067ffffffffffffffff82116105be576106a66020923690850161076a565b84516353266bbb60e01b815293849283926106c7926044359290850161097c565b0381866108005af1908115610702576106e7925083916106ea57506109d8565b80fd5b61034c915060203d81116102eb576102dc8183610732565b505051903d90823e3d90fd5b8490346102ae57816003193601126102ae5790546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075457604052565b634e487b7160e01b600052604160045260246000fd5b81601f820112156107c15780359067ffffffffffffffff8211610754576040519261079f601f8401601f191660200185610732565b828452602083830101116107c157816000926020809301838601378301015290565b600080fd5b9060406003198301126107c1576004356001600160a01b03811681036107c157916024359067ffffffffffffffff82116107c1576108069160040161076a565b90565b1561081057565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b1561086657565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b908160209103126107c1575180151581036107c15790565b156108c357565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b9190820180921161092657565b634e487b7160e01b600052601160045260246000fd5b1561094357565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fd5b9392919060018060a01b03168452602060608186015281519182606087015260005b8381106109c45750505060808160008260409488010152601f8019910116850101930152565b81810183015187820160800152820161099e565b156109df57565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fdfea2646970667358221220623c3a35889e520292f1a8bc7fd77edbb9e309cbac5c431f7a0b2f8a24f625fa64736f6c63430008140033", - "deployedBytecode": "0x6080604081815260048036101561001557600080fd5b600092833560e01c9081638da5cb5b1461070e575080638f518430146106605780639b4f21a9146104195763b86219241461004f57600080fd5b610058366107c6565b84549094916001600160a01b03916100739083163314610809565b8451636eb1769f60e11b815233858201908152306020828101919091529793909216918790829081906040010381855afa801561040f5784906103e0575b6100be915034111561085f565b8451926370a0823160e01b92838552308686015260249488818781875afa9081156102f25783916103af575b5087516323b872dd60e01b8152338882019081523060208201523460408201528a9082908190606001038187895af19081156103885790610132918591610392575b506108bc565b875190858252308883015289828881885afa91821561038857908a92918592610352575b5061018b939161016a610170923490610919565b1461093c565b8851809381926353266bbb60e01b83523490308c850161097c565b0381856108005af190811561032b57906101ac918391610335575b506109d8565b855192808452308685015287848681865afa93841561032b5782946102fc575b50865163a9059cbb60e01b815233878201523486820152888160448186885af180156102f257908992916102c5575b50858851809581938252308a8301525afa9182156102b9578192610286575b503483039283116102745750036102345750505160018152f35b606493601b9293519362461bcd60e51b85528401528201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152fd5b634e487b7160e01b8152601185528390fd5b9091508681813d83116102b2575b61029e8183610732565b810103126102ae5751903861021a565b5080fd5b503d610294565b508551903d90823e3d90fd5b6102e490833d85116102eb575b6102dc8183610732565b8101906108a4565b50386101fb565b503d6102d2565b88513d85823e3d90fd5b9093508781813d8311610324575b6103148183610732565b810103126102ae575192386101cc565b503d61030a565b87513d84823e3d90fd5b61034c9150893d8b116102eb576102dc8183610732565b386101a6565b8092508391933d8311610381575b61036a8183610732565b8101031261037d57518991610170610156565b8380fd5b503d610360565b89513d86823e3d90fd5b6103a991508b3d8d116102eb576102dc8183610732565b3861012c565b90508881813d83116103d9575b6103c68183610732565b810103126103d55751386100ea565b8280fd5b503d6103bc565b508681813d8311610408575b6103f68183610732565b8101031261037d576100be90516100b1565b503d6103ec565b86513d86823e3d90fd5b5091610424366107c6565b82549094916001600160a01b039161043f9083163314610809565b8451636eb1769f60e11b815233848201908152306020828101919091529793909216918790829081906040010381855afa80156105c9578590610631575b61048a915034111561085f565b8451906370a0823160e01b80835230858401528783602481855afa9283156106275786936105f4575b5086516323b872dd60e01b81523386820190815230602082015234604082015289908290819060600103818a875af19081156105ea578992916104fc9189916105d357506108bc565b6024885180948193825230898301525afa9081156105c9578591610596575b5061016a61052a923490610919565b303b156103d557908261055393928551809581926308f5184360e41b835234903087850161097c565b038183305af1610568575b5050505160018152f35b67ffffffffffffffff8311610583575050815238808061055e565b634e487b7160e01b825260419052602490fd5b90508681813d83116105c2575b6105ad8183610732565b810103126105be575161016a61051b565b8480fd5b503d6105a3565b86513d87823e3d90fd5b6103a99150843d86116102eb576102dc8183610732565b88513d89823e3d90fd5b9092508781813d8311610620575b61060c8183610732565b8101031261061c575191386104b3565b8580fd5b503d610602565b87513d88823e3d90fd5b508681813d8311610659575b6106478183610732565b810103126105be5761048a905161047d565b503d61063d565b50346103d55760603660031901126103d55780356001600160a01b038116810361037d576024359067ffffffffffffffff82116105be576106a66020923690850161076a565b84516353266bbb60e01b815293849283926106c7926044359290850161097c565b0381866108005af1908115610702576106e7925083916106ea57506109d8565b80fd5b61034c915060203d81116102eb576102dc8183610732565b505051903d90823e3d90fd5b8490346102ae57816003193601126102ae5790546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075457604052565b634e487b7160e01b600052604160045260246000fd5b81601f820112156107c15780359067ffffffffffffffff8211610754576040519261079f601f8401601f191660200185610732565b828452602083830101116107c157816000926020809301838601378301015290565b600080fd5b9060406003198301126107c1576004356001600160a01b03811681036107c157916024359067ffffffffffffffff82116107c1576108069160040161076a565b90565b1561081057565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b1561086657565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b908160209103126107c1575180151581036107c15790565b156108c357565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b9190820180921161092657565b634e487b7160e01b600052601160045260246000fd5b1561094357565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fd5b9392919060018060a01b03168452602060608186015281519182606087015260005b8381106109c45750505060808160008260409488010152601f8019910116850101930152565b81810183015187820160800152820161099e565b156109df57565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fdfea2646970667358221220623c3a35889e520292f1a8bc7fd77edbb9e309cbac5c431f7a0b2f8a24f625fa64736f6c63430008140033", + "bytecode": "0x608080604052346026575f80546001600160a01b03191633179055610a2d908161002b8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081638da5cb5b14610713575080638f5184301461066d5780639b4f21a91461044a5763b86219241461004a575f80fd5b610053366107c1565b919061006960018060a01b03835416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b03919091169290602081604481875afa8015610317578390610416575b6100b391503411156108f4565b6040516370a0823160e01b815230600482015290602082602481875afa9182156103175783926103e2575b506040516323b872dd60e01b815233600482015230602482015234604482015260208160648187895af19081156103b857906101219185916103c3575b50610939565b6040516370a0823160e01b815230600482015291602083602481885afa9283156103b8578493610380575b5090610168610185936101626020943490610996565b146109b7565b604051809381926353266bbb60e01b83523490306004850161081c565b0381856108005af190811561035657906101a6918391610361575b5061085d565b6040516370a0823160e01b815230600482015291602083602481845afa928315610356578293610322575b5060405163a9059cbb60e01b815233600482015234602482015260208160448186865af18015610317576024939260209290916102ec575b506040516370a0823160e01b815230600482015293849182905afa9182156102df5781926102a7575b5034830392831161029357500361024e57602060405160018152f35b60405162461bcd60e51b815260206004820152601b60248201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152606490fd5b634e487b7160e01b81526011600452602490fd5b9091506020813d6020116102d7575b816102c360209383610735565b810103126102d35751905f610232565b5f80fd5b3d91506102b6565b50604051903d90823e3d90fd5b61030b90833d8511610310575b6103038183610735565b810190610804565b610209565b503d6102f9565b6040513d85823e3d90fd5b9092506020813d60201161034e575b8161033e60209383610735565b810103126102d35751915f6101d1565b3d9150610331565b6040513d84823e3d90fd5b61037a915060203d602011610310576103038183610735565b5f6101a0565b9250906020833d6020116103b0575b8161039c60209383610735565b810103126102d3579151919061016861014c565b3d915061038f565b6040513d86823e3d90fd5b6103dc915060203d602011610310576103038183610735565b5f61011b565b9091506020813d60201161040e575b816103fe60209383610735565b810103126102d35751905f6100de565b3d91506103f1565b506020813d602011610442575b8161043060209383610735565b810103126102d3576100b390516100a6565b3d9150610423565b610453366107c1565b9061046860018060a01b035f5416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b039190911690602081604481855afa80156105df575f90610639575b6104b191503411156108f4565b6040516370a0823160e01b8152306004820152602081602481855afa9081156105df575f91610607575b506040516323b872dd60e01b8152336004820152306024820152346044820152916020836064815f855af19081156105df576105226020926024955f916105ea5750610939565b6040516370a0823160e01b815230600482015293849182905afa9182156105df575f926105a9575b509061016261055a923490610996565b303b156102d3575f61058391604051809381926308f5184360e41b83523490306004850161081c565b038183305af1610599575b602060405160018152f35b5f6105a391610735565b5f61058e565b91506020823d6020116105d7575b816105c460209383610735565b810103126102d35790519061016261054a565b3d91506105b7565b6040513d5f823e3d90fd5b6106019150843d8611610310576103038183610735565b8761011b565b90506020813d602011610631575b8161062260209383610735565b810103126102d35751836104db565b3d9150610615565b506020813d602011610665575b8161065360209383610735565b810103126102d3576104b190516104a4565b3d9150610646565b346102d35760603660031901126102d3576004356001600160a01b03811681036102d35760243567ffffffffffffffff81116102d3576106d6916106b7602092369060040161076b565b6040516353266bbb60e01b81529384928392604435916004850161081c565b03815f6108005af180156105df576102d3915f916106f4575061085d565b61070d915060203d602011610310576103038183610735565b826101a0565b346102d3575f3660031901126102d3575f546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075757604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156102d35780359067ffffffffffffffff821161075757604051926107a0601f8401601f191660200185610735565b828452602083830101116102d357815f926020809301838601378301015290565b9060406003198301126102d3576004356001600160a01b03811681036102d357916024359067ffffffffffffffff82116102d3576108019160040161076b565b90565b908160209103126102d3575180151581036102d35790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b1561086457565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fd5b156108a557565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b156108fb57565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b1561094057565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b919082018092116109a357565b634e487b7160e01b5f52601160045260245ffd5b156109be57565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fdfea2646970667358221220d02b60367bcc46753c839fb50f1a05ab25329578122c2a62c8c25e6d33d6582964736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081638da5cb5b14610713575080638f5184301461066d5780639b4f21a91461044a5763b86219241461004a575f80fd5b610053366107c1565b919061006960018060a01b03835416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b03919091169290602081604481875afa8015610317578390610416575b6100b391503411156108f4565b6040516370a0823160e01b815230600482015290602082602481875afa9182156103175783926103e2575b506040516323b872dd60e01b815233600482015230602482015234604482015260208160648187895af19081156103b857906101219185916103c3575b50610939565b6040516370a0823160e01b815230600482015291602083602481885afa9283156103b8578493610380575b5090610168610185936101626020943490610996565b146109b7565b604051809381926353266bbb60e01b83523490306004850161081c565b0381856108005af190811561035657906101a6918391610361575b5061085d565b6040516370a0823160e01b815230600482015291602083602481845afa928315610356578293610322575b5060405163a9059cbb60e01b815233600482015234602482015260208160448186865af18015610317576024939260209290916102ec575b506040516370a0823160e01b815230600482015293849182905afa9182156102df5781926102a7575b5034830392831161029357500361024e57602060405160018152f35b60405162461bcd60e51b815260206004820152601b60248201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152606490fd5b634e487b7160e01b81526011600452602490fd5b9091506020813d6020116102d7575b816102c360209383610735565b810103126102d35751905f610232565b5f80fd5b3d91506102b6565b50604051903d90823e3d90fd5b61030b90833d8511610310575b6103038183610735565b810190610804565b610209565b503d6102f9565b6040513d85823e3d90fd5b9092506020813d60201161034e575b8161033e60209383610735565b810103126102d35751915f6101d1565b3d9150610331565b6040513d84823e3d90fd5b61037a915060203d602011610310576103038183610735565b5f6101a0565b9250906020833d6020116103b0575b8161039c60209383610735565b810103126102d3579151919061016861014c565b3d915061038f565b6040513d86823e3d90fd5b6103dc915060203d602011610310576103038183610735565b5f61011b565b9091506020813d60201161040e575b816103fe60209383610735565b810103126102d35751905f6100de565b3d91506103f1565b506020813d602011610442575b8161043060209383610735565b810103126102d3576100b390516100a6565b3d9150610423565b610453366107c1565b9061046860018060a01b035f5416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b039190911690602081604481855afa80156105df575f90610639575b6104b191503411156108f4565b6040516370a0823160e01b8152306004820152602081602481855afa9081156105df575f91610607575b506040516323b872dd60e01b8152336004820152306024820152346044820152916020836064815f855af19081156105df576105226020926024955f916105ea5750610939565b6040516370a0823160e01b815230600482015293849182905afa9182156105df575f926105a9575b509061016261055a923490610996565b303b156102d3575f61058391604051809381926308f5184360e41b83523490306004850161081c565b038183305af1610599575b602060405160018152f35b5f6105a391610735565b5f61058e565b91506020823d6020116105d7575b816105c460209383610735565b810103126102d35790519061016261054a565b3d91506105b7565b6040513d5f823e3d90fd5b6106019150843d8611610310576103038183610735565b8761011b565b90506020813d602011610631575b8161062260209383610735565b810103126102d35751836104db565b3d9150610615565b506020813d602011610665575b8161065360209383610735565b810103126102d3576104b190516104a4565b3d9150610646565b346102d35760603660031901126102d3576004356001600160a01b03811681036102d35760243567ffffffffffffffff81116102d3576106d6916106b7602092369060040161076b565b6040516353266bbb60e01b81529384928392604435916004850161081c565b03815f6108005af180156105df576102d3915f916106f4575061085d565b61070d915060203d602011610310576103038183610735565b826101a0565b346102d3575f3660031901126102d3575f546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075757604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156102d35780359067ffffffffffffffff821161075757604051926107a0601f8401601f191660200185610735565b828452602083830101116102d357815f926020809301838601378301015290565b9060406003198301126102d3576004356001600160a01b03811681036102d357916024359067ffffffffffffffff82116102d3576108019160040161076b565b90565b908160209103126102d3575180151581036102d35790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b1561086457565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fd5b156108a557565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b156108fb57565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b1561094057565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b919082018092116109a357565b634e487b7160e01b5f52601160045260245ffd5b156109be57565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fdfea2646970667358221220d02b60367bcc46753c839fb50f1a05ab25329578122c2a62c8c25e6d33d6582964736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/FlashLoan.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/GovCaller.json b/precompiles/testutil/contracts/GovCaller.json index 159ac53ee..aa440bc86 100644 --- a/precompiles/testutil/contracts/GovCaller.json +++ b/precompiles/testutil/contracts/GovCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "GovCaller", "sourceName": "solidity/precompiles/testutil/contracts/GovCaller.sol", "abi": [ @@ -652,8 +652,11 @@ "type": "receive" } ], - "bytecode": "0x6080806040523461001657611db3908161001c8239f35b600080fdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c80630f6265fb14611276578063258691e21461112d57806326c11ffa14610ff65780635e615a6b14610b7557806361bc221a14610b5457806361f09ad214610ae757806372ff5ec4146109a35780637726ece0146108445780638e7431d3146107cb57806391d6d8e71461068d57806397fd84d214610601578063b94c9822146103d8578063bc7bdf7514610326578063d0e30db014610318578063e8702c34146102545763ed6c08f70361000e5760a03660031901126101f4576100e4611713565b6100ec611729565b604435916001600160401b038084116101f45761010f6020943690600401611944565b949061011961186f565b9461012261187e565b9561020d575b610147604051978893849363592581bb60e11b85523060048601611ad5565b038160006108055af1928315610201576000936101c1575b60209450610174575b50506040519015158152f35b60008080600f6101ba95829583549061018f8260070b611b02565b67ffffffffffffffff1990921691161783556001600160a01b03165af16101b4611b1a565b50611b4a565b3880610168565b92506020843d82116101f9575b816101db602093836117cf565b810103126101f4576101ee602094611aa5565b9261015f565b600080fd5b3d91506101ce565b6040513d6000823e3d90fd5b60005461021c8160070b611b02565b67ffffffffffffffff1990911690851617600090815561024f90808080600f6001600160a01b038b165af16101b4611b1a565b610128565b60603660031901126101f457610268611713565b6001600160401b036024358181116101f457610288903690600401611755565b9290604435918383116101f4576102c46102a86020943690600401611944565b90604051978895869563a8fdc91960e01b875260048701611a71565b038160006108055af1908115610201576020926000926102e9575b5060405191168152f35b61030a919250833d8111610311575b61030281836117cf565b81019061198b565b90836102df565b503d6102f8565b60003660031901126101f457005b60403660031901126101f45761033a61173f565b6024356001600160401b0381116101f45761035b6020913690600401611944565b9261037b604051948593849363592581bb60e11b85523060048601611ad5565b038160006108055af180156102015760009061039f575b6020906040519015158152f35b506020813d82116103d0575b816103b8602093836117cf565b810103126101f4576103cb602091611aa5565b610392565b3d91506103ab565b346101f45760603660031901126101f4576103f1611713565b6024356001600160401b0381116101f457610410903690600401611842565b6001600160401b03604435116101f4573660236044350112156101f457604435600401359061043e82611974565b9161044c60405193846117cf565b80835260208301903660248260051b6044350101116101f457602460443501915b60248260051b604435010183106105855750505060005460018160070b0190677fffffffffffffff1992677fffffffffffffff9584841287851317610533576020926001600160401b031980956001600160401b03169116176000556104e76040519687938493631758efa960e11b855260048501611d47565b038160006108015af192831561020157600093610549575b50600054916000198360070b0194851390851217610533576020936001600160401b03169116176000556040519015158152f35b634e487b7160e01b600052601160045260246000fd5b9092506020813d60201161057d575b81610565602093836117cf565b810103126101f45761057690611aa5565b91846104ff565b3d9150610558565b82356001600160401b0381116101f45760406044358201360360231901126101f457604051906105b482611782565b6001600160401b03602482604435010135116101f45760249260209283926044906105e93683358301808a0135018901611842565b8352813501013583820152815201930192905061046d565b6020806003193601126101f4576106358161061a61173f565b6040518093819263519f184360e11b83523060048401611ab2565b038160006108055af190811561020157600091610658575b506040519015158152f35b90508181813d8311610686575b61066f81836117cf565b810103126101f45761068090611aa5565b8261064d565b503d610665565b60803660031901126101f4576001600160401b036004358181116101f4576106b9903690600401611755565b90916024358181116101f4576106d56020913690600401611944565b93909461070e6106e3611860565b956106ec61186f565b96610791575b60405163a8fdc91960e01b815297889485943060048701611a71565b038160006108055af191821561020157602093600093610772575b50610738575b60405191168152f35b6000546107478160070b611b02565b8216906001600160401b0319161760005561076d6000808080600f335af16101b4611b1a565b61072f565b61078a919350843d81116103115761030281836117cf565b9184610729565b6000546107a08160070b611b02565b8716906001600160401b031916176000556107c66000808080600f335af16101b4611b1a565b6106f2565b60603660031901126101f4576107df611713565b6107e7611729565b604435906001600160401b03928383116101f45761037b61080e6020943690600401611944565b604051968795869563592581bb60e11b875260018060a01b031660048701521660248501526060604485015260648401916119cb565b60a03660031901126101f457610858611713565b6001600160401b036024358181116101f457610878903690600401611755565b9190926044358281116101f4576108956020913690600401611944565b9490956108ce6108a361186f565b966108ac61187e565b9761095c575b60405163a8fdc91960e01b815298899485943060048701611a71565b038160006108055af19283156102015760209460009461093d575b506108f8575060405191168152f35b6000808080600f6109379582546109118160070b611b02565b67ffffffffffffffff199091169089161783556001600160a01b03165af16101b4611b1a565b836102df565b610955919450853d81116103115761030281836117cf565b92856108e9565b60005461096b8160070b611b02565b67ffffffffffffffff1990911690881617600090815561099e90808080600f6001600160a01b038c165af16101b4611b1a565b6108b2565b60803660031901126101f4576109b761173f565b602435906001600160401b038083116101f4576109da6020933690600401611944565b93906109e4611860565b936109ed61186f565b94610aad575b610a12604051968793849363592581bb60e11b85523060048601611ad5565b038160006108055af191821561020157600092610a72575b60209350610a3d57506040519015158152f35b60005490610a4d8260070b611b02565b16906001600160401b031916176000556106806000808080600f335af16101b4611b1a565b91506020833d8211610aa5575b81610a8c602093836117cf565b810103126101f457610a9f602093611aa5565b91610a2a565b3d9150610a7f565b600054610abc8160070b611b02565b8516906001600160401b03191617600055610ae26000808080600f335af16101b4611b1a565b6109f3565b60403660031901126101f4576001600160401b036004358181116101f457610b13903690600401611755565b602492919235908282116101f4576102c493610b356020933690600401611944565b60405163a8fdc91960e01b815296879485949193913060048701611a71565b346101f45760003660031901126101f457602060005460070b604051908152f35b346101f45760003660031901126101f45760606101e0604051610b97816117b3565b600081528260208201526000604082015282808201528260808201528260a08201528260c08201528260e08201528261010082015260006101208201528261014082015282610160820152600061018082015260006101a082015260006101c08201520152604051635e615a6b60e01b81526000816004816108055afa801561020157600090610d7b575b610d779060405191829160208352805160070b60208401526080836101e0610d3e610d28610d03610ced610cd8610cc4610cb0610c9a8b60208101519a6060610c796102009d8e60408501526102208401906118d5565b92604081015160070b82840152015190601f199d8e828503019101526118b0565b8d60808d01519060a08d828503019101526118b0565b60a08b01518d82038b0160c08f01526118b0565b60c08a01518c82038a0160e08e01526118b0565b60e0890151888c8303016101008d01526118b0565b610100880151878b8303016101208c01526118b0565b61012087015160070b6101408a0152610140870151868a8303016101608b01526118b0565b61016086015185898303016101808a01526118d5565b9361018081015115156101a08801526101a081015115156101c08801526101c081015115158288015201519185840301908501526118b0565b0390f35b503d90816000823e610d8d82826117cf565b60208183810103126101f4578051916001600160401b0383116101f45761020083830182840103126101f45760405191610dc6836117b3565b610dd1848201611b95565b8352602084820101516001600160401b0381116101f457610df9908383019086840101611be5565b6020840152610e0c604085830101611b95565b6040840152606084820101516001600160401b0381116101f457610e37908383019086840101611ba3565b6060840152608084820101516001600160401b0381116101f457610e62908383019086840101611ba3565b608084015260a084820101516001600160401b0381116101f457610e8d908383019086840101611ba3565b60a084015260c084820101516001600160401b0381116101f457610eb8908383019086840101611ba3565b60c084015260e084820101516001600160401b0381116101f457610ee3908383019086840101611ba3565b60e084015261010084820101516001600160401b0381116101f457610f0f908383019086840101611ba3565b610100840152610f2461012085830101611b95565b61012084015261014084820101516001600160401b0381116101f457610f51908383019086840101611ba3565b61014084015261016084820101516001600160401b0381116101f457610f7e908383019086840101611be5565b610160840152610f9361018085830101611aa5565b610180840152610fa86101a085830101611aa5565b6101a0840152610fbd6101c085830101611aa5565b6101c08401526101e084820101516001600160401b0381116101f457610d7794610feb938301920101611ba3565b6101e0820152610c22565b60603660031901126101f45761100a61173f565b60243580151581036101f457602061104592611024611860565b926110ec575b6040518094819263519f184360e11b83523060048401611ab2565b038160006108055af1908115610201576000916110b1575b60209250611070575b6040519015158152f35b60005461107f8160070b611b02565b6001600160401b0316906001600160401b031916176000556110ac6000808080600f335af16101b4611b1a565b611066565b90506020823d82116110e4575b816110cb602093836117cf565b810103126101f4576110de602092611aa5565b9061105d565b3d91506110be565b6000546110fb8160070b611b02565b6001600160401b0316906001600160401b031916176000556111286000808080600f335af16101b4611b1a565b61102a565b60803660031901126101f457611181611144611713565b61114c611729565b906020611157611860565b9261116061186f565b9361122d575b6040518095819263519f184360e11b83523060048401611ab2565b038160006108055af1918215610201576000926111f2575b602093506111ac57506040519015158152f35b6000808080600f6106809582546111c58160070b611b02565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b4611b1a565b91506020833d8211611225575b8161120c602093836117cf565b810103126101f45761121f602093611aa5565b91611199565b3d91506111ff565b60005461123c8160070b611b02565b6001600160401b0316906001600160401b031916176000556112716000808080600f60018060a01b0389165af16101b4611b1a565b611166565b60803660031901126101f45761128a611713565b611292611729565b9060448035916001600160401b03928381116101f4576112b6903690600401611755565b93909160649485358381116101f4576112d3903690600401611842565b9160018060a01b0316926000546112ec8160070b611b02565b82166001600160401b03198092161760005560008080806001895af1611310611b1a565b50156116c65761133a97986040519063519f184360e11b8252818060209b8c933060048401611ab2565b038160006108055af16000918161168f575b5061142b5789898961135c611c98565b6308c379a0146113a7575b7f63616e63656c50726f706f73616c206661696c65642073696c656e746c790000906040519262461bcd60e51b84526004840152601e6024840152820152fd5b6113af611cb6565b806113ba5750611367565b826114066037604051809476031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b858301526113f68151809287868601910161188d565b81010360178101855201836117cf565b61142760405192839262461bcd60e51b8452600484015260248301906118b0565b0390fd5b1561164c5790879492959391600054916114478360070b611b02565b169116176000556040519261145b84611782565b6001845260005b85811061161c5750946114866114c1966040519261147f84611782565b369161180b565b815260028582015261149784611d24565b526114a183611d24565b506000604051809681958294635ca64c1160e11b84528660048501611d47565b03925af1600091816115e5575b5061159757506114dc611c98565b6308c379a014611532575b6084927f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c607960f81b926040519462461bcd60e51b8652600486015260216024860152840152820152fd5b61153a611cb6565b8061154557506114e7565b82611406603a60405180947f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000858301526115878151809287868601910161188d565b810103601a8101855201836117cf565b156115a6575060405160018152f35b7f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c7365906040519262461bcd60e51b84528060048501526024840152820152fd5b9091508381813d8311611615575b6115fd81836117cf565b810103126101f45761160e90611aa5565b90856114ce565b503d6115f3565b6040969395919294965161162f81611782565b606081526000838201528282890101520190879492959391611462565b60405162461bcd60e51b815260048101899052601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c7365000000818901528990fd5b9091508981813d83116116bf575b6116a781836117cf565b810103126101f4576116b890611aa5565b908b61134c565b503d61169d565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f81890152603960f91b818a0152608490fd5b600435906001600160a01b03821682036101f457565b602435906001600160401b03821682036101f457565b600435906001600160401b03821682036101f457565b9181601f840112156101f4578235916001600160401b0383116101f457602083818601950101116101f457565b604081019081106001600160401b0382111761179d57604052565b634e487b7160e01b600052604160045260246000fd5b61020081019081106001600160401b0382111761179d57604052565b90601f801991011681019081106001600160401b0382111761179d57604052565b6001600160401b03811161179d57601f01601f191660200190565b929192611817826117f0565b9161182560405193846117cf565b8294818452818301116101f4578281602093846000960137010152565b9080601f830112156101f45781602061185d9335910161180b565b90565b6044359081151582036101f457565b6064359081151582036101f457565b6084359081151582036101f457565b60005b8381106118a05750506000910152565b8181015183820152602001611890565b906020916118c98151809281855285808601910161188d565b601f01601f1916010190565b908082519081815260208091019281808460051b8301019501936000915b8483106119035750505050505090565b9091929394958480600192601f19858203018652895190828061192e845160408086528501906118b0565b93015191015298019301930191949392906118f3565b9181601f840112156101f4578235916001600160401b0383116101f4576020808501948460051b0101116101f457565b6001600160401b03811161179d5760051b60200190565b908160209103126101f457516001600160401b03811681036101f45790565b908060209392818452848401376000828201840152601f01601f1916010190565b9080835260208093019081938160051b830194846000915b8483106119f4575050505050505090565b9091929394959681810387528735603e19843603018112156101f45783018035601e19823603018112156101f4578101908682359201906001600160401b0383116101f45782360382136101f4576001938880611a5c819695829660408087528601916119aa565b930135910152990197019594930191906119e3565b939161185d9593611a979260018060a01b031686526060602087015260608601916119aa565b9260408185039101526119cb565b519081151582036101f457565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b6001600160401b0361185d959360609360018060a01b0316835216602082015281604082015201916119cb565b60070b677fffffffffffffff81146105335760010190565b3d15611b45573d90611b2b826117f0565b91611b3960405193846117cf565b82523d6000602084013e565b606090565b15611b5157565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f457565b81601f820112156101f4578051611bb9816117f0565b92611bc760405194856117cf565b818452602082840101116101f45761185d916020808501910161188d565b81601f820112156101f4578051611bfb81611974565b92604091611c0b835195866117cf565b808552602093848087019260051b820101938385116101f457858201925b858410611c3a575050505050505090565b8351906001600160401b03918281116101f45784019083601f1983890301126101f4578351611c6881611782565b898301519384116101f4578483611c858a8d809881980101611ba3565b8352015183820152815201930192611c29565b60009060033d11611ca557565b905060046000803e60005160e01c90565b600060443d1061185d57604051600319913d83016004833e81516001600160401b03918282113d602484011117611d1357818401948551938411611d1b573d85010160208487010111611d13575061185d929101602001906117cf565b949350505050565b50949350505050565b805115611d315760200190565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03909116815260606020820181905261185d939192611d6f918401906118b0565b9160408184039101526118d556fea2646970667358221220c9625558987b92b3d3d39d698b4548091cb23adaf68209787374d331e395f0ec64736f6c63430008140033", - "deployedBytecode": "0x6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c80630f6265fb14611276578063258691e21461112d57806326c11ffa14610ff65780635e615a6b14610b7557806361bc221a14610b5457806361f09ad214610ae757806372ff5ec4146109a35780637726ece0146108445780638e7431d3146107cb57806391d6d8e71461068d57806397fd84d214610601578063b94c9822146103d8578063bc7bdf7514610326578063d0e30db014610318578063e8702c34146102545763ed6c08f70361000e5760a03660031901126101f4576100e4611713565b6100ec611729565b604435916001600160401b038084116101f45761010f6020943690600401611944565b949061011961186f565b9461012261187e565b9561020d575b610147604051978893849363592581bb60e11b85523060048601611ad5565b038160006108055af1928315610201576000936101c1575b60209450610174575b50506040519015158152f35b60008080600f6101ba95829583549061018f8260070b611b02565b67ffffffffffffffff1990921691161783556001600160a01b03165af16101b4611b1a565b50611b4a565b3880610168565b92506020843d82116101f9575b816101db602093836117cf565b810103126101f4576101ee602094611aa5565b9261015f565b600080fd5b3d91506101ce565b6040513d6000823e3d90fd5b60005461021c8160070b611b02565b67ffffffffffffffff1990911690851617600090815561024f90808080600f6001600160a01b038b165af16101b4611b1a565b610128565b60603660031901126101f457610268611713565b6001600160401b036024358181116101f457610288903690600401611755565b9290604435918383116101f4576102c46102a86020943690600401611944565b90604051978895869563a8fdc91960e01b875260048701611a71565b038160006108055af1908115610201576020926000926102e9575b5060405191168152f35b61030a919250833d8111610311575b61030281836117cf565b81019061198b565b90836102df565b503d6102f8565b60003660031901126101f457005b60403660031901126101f45761033a61173f565b6024356001600160401b0381116101f45761035b6020913690600401611944565b9261037b604051948593849363592581bb60e11b85523060048601611ad5565b038160006108055af180156102015760009061039f575b6020906040519015158152f35b506020813d82116103d0575b816103b8602093836117cf565b810103126101f4576103cb602091611aa5565b610392565b3d91506103ab565b346101f45760603660031901126101f4576103f1611713565b6024356001600160401b0381116101f457610410903690600401611842565b6001600160401b03604435116101f4573660236044350112156101f457604435600401359061043e82611974565b9161044c60405193846117cf565b80835260208301903660248260051b6044350101116101f457602460443501915b60248260051b604435010183106105855750505060005460018160070b0190677fffffffffffffff1992677fffffffffffffff9584841287851317610533576020926001600160401b031980956001600160401b03169116176000556104e76040519687938493631758efa960e11b855260048501611d47565b038160006108015af192831561020157600093610549575b50600054916000198360070b0194851390851217610533576020936001600160401b03169116176000556040519015158152f35b634e487b7160e01b600052601160045260246000fd5b9092506020813d60201161057d575b81610565602093836117cf565b810103126101f45761057690611aa5565b91846104ff565b3d9150610558565b82356001600160401b0381116101f45760406044358201360360231901126101f457604051906105b482611782565b6001600160401b03602482604435010135116101f45760249260209283926044906105e93683358301808a0135018901611842565b8352813501013583820152815201930192905061046d565b6020806003193601126101f4576106358161061a61173f565b6040518093819263519f184360e11b83523060048401611ab2565b038160006108055af190811561020157600091610658575b506040519015158152f35b90508181813d8311610686575b61066f81836117cf565b810103126101f45761068090611aa5565b8261064d565b503d610665565b60803660031901126101f4576001600160401b036004358181116101f4576106b9903690600401611755565b90916024358181116101f4576106d56020913690600401611944565b93909461070e6106e3611860565b956106ec61186f565b96610791575b60405163a8fdc91960e01b815297889485943060048701611a71565b038160006108055af191821561020157602093600093610772575b50610738575b60405191168152f35b6000546107478160070b611b02565b8216906001600160401b0319161760005561076d6000808080600f335af16101b4611b1a565b61072f565b61078a919350843d81116103115761030281836117cf565b9184610729565b6000546107a08160070b611b02565b8716906001600160401b031916176000556107c66000808080600f335af16101b4611b1a565b6106f2565b60603660031901126101f4576107df611713565b6107e7611729565b604435906001600160401b03928383116101f45761037b61080e6020943690600401611944565b604051968795869563592581bb60e11b875260018060a01b031660048701521660248501526060604485015260648401916119cb565b60a03660031901126101f457610858611713565b6001600160401b036024358181116101f457610878903690600401611755565b9190926044358281116101f4576108956020913690600401611944565b9490956108ce6108a361186f565b966108ac61187e565b9761095c575b60405163a8fdc91960e01b815298899485943060048701611a71565b038160006108055af19283156102015760209460009461093d575b506108f8575060405191168152f35b6000808080600f6109379582546109118160070b611b02565b67ffffffffffffffff199091169089161783556001600160a01b03165af16101b4611b1a565b836102df565b610955919450853d81116103115761030281836117cf565b92856108e9565b60005461096b8160070b611b02565b67ffffffffffffffff1990911690881617600090815561099e90808080600f6001600160a01b038c165af16101b4611b1a565b6108b2565b60803660031901126101f4576109b761173f565b602435906001600160401b038083116101f4576109da6020933690600401611944565b93906109e4611860565b936109ed61186f565b94610aad575b610a12604051968793849363592581bb60e11b85523060048601611ad5565b038160006108055af191821561020157600092610a72575b60209350610a3d57506040519015158152f35b60005490610a4d8260070b611b02565b16906001600160401b031916176000556106806000808080600f335af16101b4611b1a565b91506020833d8211610aa5575b81610a8c602093836117cf565b810103126101f457610a9f602093611aa5565b91610a2a565b3d9150610a7f565b600054610abc8160070b611b02565b8516906001600160401b03191617600055610ae26000808080600f335af16101b4611b1a565b6109f3565b60403660031901126101f4576001600160401b036004358181116101f457610b13903690600401611755565b602492919235908282116101f4576102c493610b356020933690600401611944565b60405163a8fdc91960e01b815296879485949193913060048701611a71565b346101f45760003660031901126101f457602060005460070b604051908152f35b346101f45760003660031901126101f45760606101e0604051610b97816117b3565b600081528260208201526000604082015282808201528260808201528260a08201528260c08201528260e08201528261010082015260006101208201528261014082015282610160820152600061018082015260006101a082015260006101c08201520152604051635e615a6b60e01b81526000816004816108055afa801561020157600090610d7b575b610d779060405191829160208352805160070b60208401526080836101e0610d3e610d28610d03610ced610cd8610cc4610cb0610c9a8b60208101519a6060610c796102009d8e60408501526102208401906118d5565b92604081015160070b82840152015190601f199d8e828503019101526118b0565b8d60808d01519060a08d828503019101526118b0565b60a08b01518d82038b0160c08f01526118b0565b60c08a01518c82038a0160e08e01526118b0565b60e0890151888c8303016101008d01526118b0565b610100880151878b8303016101208c01526118b0565b61012087015160070b6101408a0152610140870151868a8303016101608b01526118b0565b61016086015185898303016101808a01526118d5565b9361018081015115156101a08801526101a081015115156101c08801526101c081015115158288015201519185840301908501526118b0565b0390f35b503d90816000823e610d8d82826117cf565b60208183810103126101f4578051916001600160401b0383116101f45761020083830182840103126101f45760405191610dc6836117b3565b610dd1848201611b95565b8352602084820101516001600160401b0381116101f457610df9908383019086840101611be5565b6020840152610e0c604085830101611b95565b6040840152606084820101516001600160401b0381116101f457610e37908383019086840101611ba3565b6060840152608084820101516001600160401b0381116101f457610e62908383019086840101611ba3565b608084015260a084820101516001600160401b0381116101f457610e8d908383019086840101611ba3565b60a084015260c084820101516001600160401b0381116101f457610eb8908383019086840101611ba3565b60c084015260e084820101516001600160401b0381116101f457610ee3908383019086840101611ba3565b60e084015261010084820101516001600160401b0381116101f457610f0f908383019086840101611ba3565b610100840152610f2461012085830101611b95565b61012084015261014084820101516001600160401b0381116101f457610f51908383019086840101611ba3565b61014084015261016084820101516001600160401b0381116101f457610f7e908383019086840101611be5565b610160840152610f9361018085830101611aa5565b610180840152610fa86101a085830101611aa5565b6101a0840152610fbd6101c085830101611aa5565b6101c08401526101e084820101516001600160401b0381116101f457610d7794610feb938301920101611ba3565b6101e0820152610c22565b60603660031901126101f45761100a61173f565b60243580151581036101f457602061104592611024611860565b926110ec575b6040518094819263519f184360e11b83523060048401611ab2565b038160006108055af1908115610201576000916110b1575b60209250611070575b6040519015158152f35b60005461107f8160070b611b02565b6001600160401b0316906001600160401b031916176000556110ac6000808080600f335af16101b4611b1a565b611066565b90506020823d82116110e4575b816110cb602093836117cf565b810103126101f4576110de602092611aa5565b9061105d565b3d91506110be565b6000546110fb8160070b611b02565b6001600160401b0316906001600160401b031916176000556111286000808080600f335af16101b4611b1a565b61102a565b60803660031901126101f457611181611144611713565b61114c611729565b906020611157611860565b9261116061186f565b9361122d575b6040518095819263519f184360e11b83523060048401611ab2565b038160006108055af1918215610201576000926111f2575b602093506111ac57506040519015158152f35b6000808080600f6106809582546111c58160070b611b02565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b4611b1a565b91506020833d8211611225575b8161120c602093836117cf565b810103126101f45761121f602093611aa5565b91611199565b3d91506111ff565b60005461123c8160070b611b02565b6001600160401b0316906001600160401b031916176000556112716000808080600f60018060a01b0389165af16101b4611b1a565b611166565b60803660031901126101f45761128a611713565b611292611729565b9060448035916001600160401b03928381116101f4576112b6903690600401611755565b93909160649485358381116101f4576112d3903690600401611842565b9160018060a01b0316926000546112ec8160070b611b02565b82166001600160401b03198092161760005560008080806001895af1611310611b1a565b50156116c65761133a97986040519063519f184360e11b8252818060209b8c933060048401611ab2565b038160006108055af16000918161168f575b5061142b5789898961135c611c98565b6308c379a0146113a7575b7f63616e63656c50726f706f73616c206661696c65642073696c656e746c790000906040519262461bcd60e51b84526004840152601e6024840152820152fd5b6113af611cb6565b806113ba5750611367565b826114066037604051809476031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b858301526113f68151809287868601910161188d565b81010360178101855201836117cf565b61142760405192839262461bcd60e51b8452600484015260248301906118b0565b0390fd5b1561164c5790879492959391600054916114478360070b611b02565b169116176000556040519261145b84611782565b6001845260005b85811061161c5750946114866114c1966040519261147f84611782565b369161180b565b815260028582015261149784611d24565b526114a183611d24565b506000604051809681958294635ca64c1160e11b84528660048501611d47565b03925af1600091816115e5575b5061159757506114dc611c98565b6308c379a014611532575b6084927f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c607960f81b926040519462461bcd60e51b8652600486015260216024860152840152820152fd5b61153a611cb6565b8061154557506114e7565b82611406603a60405180947f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000858301526115878151809287868601910161188d565b810103601a8101855201836117cf565b156115a6575060405160018152f35b7f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c7365906040519262461bcd60e51b84528060048501526024840152820152fd5b9091508381813d8311611615575b6115fd81836117cf565b810103126101f45761160e90611aa5565b90856114ce565b503d6115f3565b6040969395919294965161162f81611782565b606081526000838201528282890101520190879492959391611462565b60405162461bcd60e51b815260048101899052601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c7365000000818901528990fd5b9091508981813d83116116bf575b6116a781836117cf565b810103126101f4576116b890611aa5565b908b61134c565b503d61169d565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f81890152603960f91b818a0152608490fd5b600435906001600160a01b03821682036101f457565b602435906001600160401b03821682036101f457565b600435906001600160401b03821682036101f457565b9181601f840112156101f4578235916001600160401b0383116101f457602083818601950101116101f457565b604081019081106001600160401b0382111761179d57604052565b634e487b7160e01b600052604160045260246000fd5b61020081019081106001600160401b0382111761179d57604052565b90601f801991011681019081106001600160401b0382111761179d57604052565b6001600160401b03811161179d57601f01601f191660200190565b929192611817826117f0565b9161182560405193846117cf565b8294818452818301116101f4578281602093846000960137010152565b9080601f830112156101f45781602061185d9335910161180b565b90565b6044359081151582036101f457565b6064359081151582036101f457565b6084359081151582036101f457565b60005b8381106118a05750506000910152565b8181015183820152602001611890565b906020916118c98151809281855285808601910161188d565b601f01601f1916010190565b908082519081815260208091019281808460051b8301019501936000915b8483106119035750505050505090565b9091929394958480600192601f19858203018652895190828061192e845160408086528501906118b0565b93015191015298019301930191949392906118f3565b9181601f840112156101f4578235916001600160401b0383116101f4576020808501948460051b0101116101f457565b6001600160401b03811161179d5760051b60200190565b908160209103126101f457516001600160401b03811681036101f45790565b908060209392818452848401376000828201840152601f01601f1916010190565b9080835260208093019081938160051b830194846000915b8483106119f4575050505050505090565b9091929394959681810387528735603e19843603018112156101f45783018035601e19823603018112156101f4578101908682359201906001600160401b0383116101f45782360382136101f4576001938880611a5c819695829660408087528601916119aa565b930135910152990197019594930191906119e3565b939161185d9593611a979260018060a01b031686526060602087015260608601916119aa565b9260408185039101526119cb565b519081151582036101f457565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b6001600160401b0361185d959360609360018060a01b0316835216602082015281604082015201916119cb565b60070b677fffffffffffffff81146105335760010190565b3d15611b45573d90611b2b826117f0565b91611b3960405193846117cf565b82523d6000602084013e565b606090565b15611b5157565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f457565b81601f820112156101f4578051611bb9816117f0565b92611bc760405194856117cf565b818452602082840101116101f45761185d916020808501910161188d565b81601f820112156101f4578051611bfb81611974565b92604091611c0b835195866117cf565b808552602093848087019260051b820101938385116101f457858201925b858410611c3a575050505050505090565b8351906001600160401b03918281116101f45784019083601f1983890301126101f4578351611c6881611782565b898301519384116101f4578483611c858a8d809881980101611ba3565b8352015183820152815201930192611c29565b60009060033d11611ca557565b905060046000803e60005160e01c90565b600060443d1061185d57604051600319913d83016004833e81516001600160401b03918282113d602484011117611d1357818401948551938411611d1b573d85010160208487010111611d13575061185d929101602001906117cf565b949350505050565b50949350505050565b805115611d315760200190565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03909116815260606020820181905261185d939192611d6f918401906118b0565b9160408184039101526118d556fea2646970667358221220c9625558987b92b3d3d39d698b4548091cb23adaf68209787374d331e395f0ec64736f6c63430008140033", + "bytecode": "0x60808060405234601557611c86908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630f6265fb146110e9578063258691e214610fcc57806326c11ffa14610f3f5780635e615a6b14610b0f57806361bc221a14610af057806361f09ad214610a8057806372ff5ec4146109315780637726ece0146107f55780638e7431d31461077557806391d6d8e71461062557806397fd84d2146105f1578063b94c9822146103db578063bc7bdf751461032a578063d0e30db01461031d578063e8702c34146102505763ed6c08f70361000e5760a03660031901126101f3576100e26115be565b6100ea6115d4565b604435916001600160401b0383116101f35761010c60209336906004016117b1565b9390610116611703565b9361011f611712565b9461020a575b610144604051968793849363592581bb60e11b85523060048601611c23565b03815f6108055af19182156101ff575f926101bf575b6020935061016e575b506040519015158152f35b5f808080600f6101b99582546101868160070b6117f8565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b3611810565b506119b0565b5f610163565b91506020833d6020116101f7575b816101da60209383611664565b810103126101f3576101ed60209361183f565b9161015a565b5f80fd5b3d91506101cd565b6040513d5f823e3d90fd5b5f546102188160070b6117f8565b6001600160401b0316906001600160401b031916175f5561024b5f808080600f60018060a01b038a165af16101b3611810565b610125565b60603660031901126101f3576102646115be565b6024356001600160401b0381116101f357610283903690600401611600565b9190604435916001600160401b0383116101f3576102c66102aa60209436906004016117b1565b90604051968795869563a8fdc91960e01b875260048701611bef565b03815f6108055af180156101ff576020915f916102f0575b506001600160401b0360405191168152f35b6103109150823d8411610316575b6103088183611664565b810190611b08565b826102de565b503d6102fe565b5f3660031901126101f357005b60403660031901126101f35761033e6115ea565b6024356001600160401b0381116101f35761035f60209136906004016117b1565b9261037f604051948593849363592581bb60e11b85523060048601611c23565b03815f6108055af180156101ff575f906103a1575b6020906040519015158152f35b506020813d6020116103d3575b816103bb60209383611664565b810103126101f3576103ce60209161183f565b610394565b3d91506103ae565b346101f35760603660031901126101f3576103f46115be565b6024356001600160401b0381116101f3576104139036906004016116d6565b90604435916001600160401b0383116101f357366023840112156101f357826004013561043f816117e1565b9361044d6040519586611664565b8185526024602086019260051b820101903682116101f35760248101925b82841061058657505050505f549160018360070b0192677fffffffffffffff198412677fffffffffffffff851317610538576020936001600160401b0316906001600160401b031916175f556104d56040519485938493631758efa960e11b85526004850161191d565b03815f6108015af19081156101ff575f9161054c575b505f54600781900b5f19019190677fffffffffffffff198312677fffffffffffffff841317610538576020926001600160401b0316906001600160401b031916175f556040519015158152f35b634e487b7160e01b5f52601160045260245ffd5b90506020813d60201161057e575b8161056760209383611664565b810103126101f3576105789061183f565b816104eb565b3d915061055a565b83356001600160401b0381116101f3578201604060231982360301126101f357604051916105b38361162d565b6024820135926001600160401b0384116101f3576044602094936105de8695602436918401016116d6565b835201358382015281520193019261046b565b60203660031901126101f35761037f602061060a6115ea565b6040518093819263519f184360e11b8352306004840161184c565b60803660031901126101f3576004356001600160401b0381116101f357610650903690600401611600565b6024356001600160401b0381116101f35761067160209136906004016117b1565b9290936106aa61067f6116f4565b94610688611703565b95610737575b60405163a8fdc91960e01b815296879485943060048701611bef565b03815f6108055af19081156101ff576020925f92610718575b506106da575b6001600160401b0360405191168152f35b5f546106e88160070b6117f8565b6001600160401b0316906001600160401b031916175f556107135f808080600f335af16101b3611810565b6106c9565b610730919250833d8511610316576103088183611664565b90836106c3565b5f546107458160070b6117f8565b6001600160401b0316906001600160401b031916175f556107705f808080600f335af16101b3611810565b61068e565b60603660031901126101f3576107896115be565b6107916115d4565b604435906001600160401b0382116101f3576001600160401b039261037f6107bf60209436906004016117b1565b604051968795869563592581bb60e11b875260018060a01b03166004870152166024850152606060448501526064840191611b47565b60a03660031901126101f3576108096115be565b6024356001600160401b0381116101f357610828903690600401611600565b90916044356001600160401b0381116101f35761084b60209136906004016117b1565b939094610884610859611703565b95610862611712565b966108eb575b60405163a8fdc91960e01b815297889485943060048701611bef565b03815f6108055af19182156101ff576020935f936108cc575b506108b457506001600160401b0360405191168152f35b5f808080600f6103109582546101868160070b6117f8565b6108e4919350843d8611610316576103088183611664565b918461089d565b5f546108f98160070b6117f8565b6001600160401b0316906001600160401b031916175f5561092c5f808080600f60018060a01b038c165af16101b3611810565b610868565b60803660031901126101f3576109456115ea565b602435906001600160401b0382116101f35761096760209236906004016117b1565b92906109716116f4565b9261097a611703565b93610a42575b61099f604051958693849363592581bb60e11b85523060048601611c23565b03815f6108055af19081156101ff575f91610a06575b602092506109c8575b6040519015158152f35b5f546109d68160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a015f808080600f335af16101b3611810565b6109be565b90506020823d602011610a3a575b81610a2160209383611664565b810103126101f357610a3460209261183f565b906109b5565b3d9150610a14565b5f54610a508160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a7b5f808080600f335af16101b3611810565b610980565b60403660031901126101f3576004356001600160401b0381116101f357610aab903690600401611600565b602435906001600160401b0382116101f3576102c692610ad160209336906004016117b1565b60405163a8fdc91960e01b815295869485949193913060048701611bef565b346101f3575f3660031901126101f35760205f5460070b604051908152f35b346101f3575f3660031901126101f35760606101e0604051610b3081611648565b5f81528260208201525f604082015282808201528260808201528260a08201528260c08201528260e0820152826101008201525f61012082015282610140820152826101608201525f6101808201525f6101a08201525f6101c08201520152604051635e615a6b60e01b81525f816004816108055afa80156101ff575f90610d18575b610d149060405191829160208352805160070b60208401526101e0610cd7610cbf610c98610c80610c69610c53610c3d610c27610c028c61022060208d01519161020060408201520190611745565b8c606060408d015160070b91015260608b01518d6080601f1982850301910152611721565b60808a01518c8203601f190160a08e0152611721565b60a08901518b8203601f190160c08d0152611721565b60c08801518a8203601f190160e08c0152611721565b60e0870151898203601f19016101008b0152611721565b610100860151888203601f19016101208a0152611721565b61012085015160070b610140880152610140850151601f1988830301610160890152611721565b610160840151868203601f1901610180880152611745565b9161018081015115156101a08601526101a081015115156101c08601526101c08101511515828601520151601f1984830301610200850152611721565b0390f35b503d805f833e610d288183611664565b8101906020818303126101f3578051906001600160401b0382116101f35701610200818303126101f35760405190610d5f82611648565b610d68816119fb565b825260208101516001600160401b0381116101f35783610d89918301611a4f565b6020830152610d9a604082016119fb565b604083015260608101516001600160401b0381116101f35783610dbe918301611a09565b606083015260808101516001600160401b0381116101f35783610de2918301611a09565b608083015260a08101516001600160401b0381116101f35783610e06918301611a09565b60a083015260c08101516001600160401b0381116101f35783610e2a918301611a09565b60c083015260e08101516001600160401b0381116101f35783610e4e918301611a09565b60e08301526101008101516001600160401b0381116101f35783610e73918301611a09565b610100830152610e8661012082016119fb565b6101208301526101408101516001600160401b0381116101f35783610eac918301611a09565b6101408301526101608101516001600160401b0381116101f35783610ed2918301611a4f565b610160830152610ee5610180820161183f565b610180830152610ef86101a0820161183f565b6101a0830152610f0b6101c0820161183f565b6101c08301526101e0810151926001600160401b0384116101f357610d1493610f349201611a09565b6101e0820152610bb3565b60603660031901126101f357610f536115ea565b60243580151581036101f357602061099f92610f6d6116f4565b92610f8e575b6040518094819263519f184360e11b8352306004840161184c565b5f54610f9c8160070b6117f8565b6001600160401b0316906001600160401b031916175f55610fc75f808080600f335af16101b3611810565b610f73565b60803660031901126101f357611020610fe36115be565b610feb6115d4565b906020610ff66116f4565b92610fff611703565b936110a3575b6040518095819263519f184360e11b8352306004840161184c565b03815f6108055af19182156101ff575f92611067575b6020935061104957506040519015158152f35b5f808080600f6110619582546101868160070b6117f8565b82610163565b91506020833d60201161109b575b8161108260209383611664565b810103126101f35761109560209361183f565b91611036565b3d9150611075565b5f546110b18160070b6117f8565b6001600160401b0316906001600160401b031916175f556110e45f808080600f60018060a01b0389165af16101b3611810565b611005565b60803660031901126101f3576110fd6115be565b6111056115d4565b6044356001600160401b0381116101f357611124903690600401611600565b6064939193356001600160401b0381116101f3576111469036906004016116d6565b9160018060a01b0316925f5461115e8160070b6117f8565b6001600160401b0316906001600160401b031916175f555f8080806001885af1611186611810565b501561156f5760206111ad916040518093819263519f184360e11b8352306004840161184c565b03815f6108055af15f9181611533575b506112a1576111ca61186f565b6308c379a01461121a575b60405162461bcd60e51b815260206004820152601e60248201527f63616e63656c50726f706f73616c206661696c65642073696c656e746c7900006044820152606490fd5b61122261188a565b8061122d57506111d5565b602061127d603761129d9360405193849176031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b828401528051918291018484015e81015f838201520301601f198101835282611664565b60405162461bcd60e51b8152602060048201529182916024830190611721565b0390fd5b156114ee575f546112b48160070b6117f8565b6001600160401b031667ffffffffffffffff1991909116175f556040805194906112de8187611664565b60018652601f19015f5b8181106114b65761134a60208888888861131089604051926113098461162d565b36916116a0565b8152600285820152611321846118fc565b5261132b836118fc565b505f604051809681958294635ca64c1160e11b8452866004850161191d565b03925af15f918161147a575b506114265761136361186f565b6308c379a0146113bd575b60405162461bcd60e51b815260206004820152602160248201527f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c6044820152607960f81b6064820152608490fd5b6113c561188a565b806113d0575061136e565b602061127d603a61129d936040519384917f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000828401528051918291018484015e81015f838201520301601f198101835282611664565b1561143657602060405160018152f35b606460405162461bcd60e51b815260206004820152602060248201527f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c73656044820152fd5b9091506020813d6020116114ae575b8161149660209383611664565b810103126101f3576114a79061183f565b9082611356565b3d9150611489565b6020906040516114c58161162d565b606081525f8382015282828a010152016112e8565b634e487b7160e01b5f52604160045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c73650000006044820152606490fd5b9091506020813d602011611567575b8161154f60209383611664565b810103126101f3576115609061183f565b90866111bd565b3d9150611542565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f6044820152603960f91b6064820152608490fd5b600435906001600160a01b03821682036101f357565b602435906001600160401b03821682036101f357565b600435906001600160401b03821682036101f357565b9181601f840112156101f3578235916001600160401b0383116101f357602083818601950101116101f357565b604081019081106001600160401b038211176114da57604052565b61020081019081106001600160401b038211176114da57604052565b90601f801991011681019081106001600160401b038211176114da57604052565b6001600160401b0381116114da57601f01601f191660200190565b9291926116ac82611685565b916116ba6040519384611664565b8294818452818301116101f3578281602093845f960137010152565b9080601f830112156101f3578160206116f1933591016116a0565b90565b6044359081151582036101f357565b6064359081151582036101f357565b6084359081151582036101f357565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9080602083519182815201916020808360051b8301019401925f915b83831061177057505050505090565b9091929394602080600192601f19858203018652885190828061179c8451604085526040850190611721565b93015191015297019301930191939290611761565b9181601f840112156101f3578235916001600160401b0383116101f3576020808501948460051b0101116101f357565b6001600160401b0381116114da5760051b60200190565b60070b677fffffffffffffff81146105385760010190565b3d1561183a573d9061182182611685565b9161182f6040519384611664565b82523d5f602084013e565b606090565b519081151582036101f357565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b5f9060033d1161187b57565b905060045f803e5f5160e01c90565b5f60443d106116f1576040513d600319016004823e8051913d60248401116001600160401b038411176118f657828201928351916001600160401b0383116118ee573d840160031901858401602001116118ee57506116f192910160200190611664565b949350505050565b92915050565b8051156119095760200190565b634e487b7160e01b5f52603260045260245ffd5b9161193d9160018060a01b03168352606060208401526060830190611721565b906040818303910152815180825260208201916020808360051b8301019401925f915b83831061196f57505050505090565b9091929394602080600192601f19858203018652885190828061199b8451604085526040850190611721565b93015191015297019301930191939290611960565b156119b757565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f357565b81601f820112156101f357805190611a2082611685565b92611a2e6040519485611664565b828452602083830101116101f357815f9260208093018386015e8301015290565b81601f820112156101f357805190611a66826117e1565b92611a746040519485611664565b82845260208085019360051b830101918183116101f35760208101935b838510611aa057505050505090565b84516001600160401b0381116101f35782016040818503601f1901126101f35760405191611acd8361162d565b6020820151926001600160401b0384116101f357604083611af5886020809881980101611a09565b8352015183820152815201940193611a91565b908160209103126101f357516001600160401b03811681036101f35790565b908060209392818452848401375f828201840152601f01601f1916010190565b906020838281520160208260051b85010193835f915b848310611b6d5750505050505090565b909192939495601f198282030185528635603e19843603018112156101f35783018035601e19823603018112156101f357810190602082359201906001600160401b0383116101f35782360382136101f35783602080611bdb8196958296604060019a526040860191611b27565b930135910152980196950193019190611b5d565b93916116f19593611c159260018060a01b03168652606060208701526060860191611b27565b926040818503910152611b47565b6001600160401b036116f1959360609360018060a01b031683521660208201528160408201520191611b4756fea26469706673582212203c62aeaa5dee2e27869ae5dc1f968f5f3a5c88ccaaa26be5c987422199ebf18a64736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630f6265fb146110e9578063258691e214610fcc57806326c11ffa14610f3f5780635e615a6b14610b0f57806361bc221a14610af057806361f09ad214610a8057806372ff5ec4146109315780637726ece0146107f55780638e7431d31461077557806391d6d8e71461062557806397fd84d2146105f1578063b94c9822146103db578063bc7bdf751461032a578063d0e30db01461031d578063e8702c34146102505763ed6c08f70361000e5760a03660031901126101f3576100e26115be565b6100ea6115d4565b604435916001600160401b0383116101f35761010c60209336906004016117b1565b9390610116611703565b9361011f611712565b9461020a575b610144604051968793849363592581bb60e11b85523060048601611c23565b03815f6108055af19182156101ff575f926101bf575b6020935061016e575b506040519015158152f35b5f808080600f6101b99582546101868160070b6117f8565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b3611810565b506119b0565b5f610163565b91506020833d6020116101f7575b816101da60209383611664565b810103126101f3576101ed60209361183f565b9161015a565b5f80fd5b3d91506101cd565b6040513d5f823e3d90fd5b5f546102188160070b6117f8565b6001600160401b0316906001600160401b031916175f5561024b5f808080600f60018060a01b038a165af16101b3611810565b610125565b60603660031901126101f3576102646115be565b6024356001600160401b0381116101f357610283903690600401611600565b9190604435916001600160401b0383116101f3576102c66102aa60209436906004016117b1565b90604051968795869563a8fdc91960e01b875260048701611bef565b03815f6108055af180156101ff576020915f916102f0575b506001600160401b0360405191168152f35b6103109150823d8411610316575b6103088183611664565b810190611b08565b826102de565b503d6102fe565b5f3660031901126101f357005b60403660031901126101f35761033e6115ea565b6024356001600160401b0381116101f35761035f60209136906004016117b1565b9261037f604051948593849363592581bb60e11b85523060048601611c23565b03815f6108055af180156101ff575f906103a1575b6020906040519015158152f35b506020813d6020116103d3575b816103bb60209383611664565b810103126101f3576103ce60209161183f565b610394565b3d91506103ae565b346101f35760603660031901126101f3576103f46115be565b6024356001600160401b0381116101f3576104139036906004016116d6565b90604435916001600160401b0383116101f357366023840112156101f357826004013561043f816117e1565b9361044d6040519586611664565b8185526024602086019260051b820101903682116101f35760248101925b82841061058657505050505f549160018360070b0192677fffffffffffffff198412677fffffffffffffff851317610538576020936001600160401b0316906001600160401b031916175f556104d56040519485938493631758efa960e11b85526004850161191d565b03815f6108015af19081156101ff575f9161054c575b505f54600781900b5f19019190677fffffffffffffff198312677fffffffffffffff841317610538576020926001600160401b0316906001600160401b031916175f556040519015158152f35b634e487b7160e01b5f52601160045260245ffd5b90506020813d60201161057e575b8161056760209383611664565b810103126101f3576105789061183f565b816104eb565b3d915061055a565b83356001600160401b0381116101f3578201604060231982360301126101f357604051916105b38361162d565b6024820135926001600160401b0384116101f3576044602094936105de8695602436918401016116d6565b835201358382015281520193019261046b565b60203660031901126101f35761037f602061060a6115ea565b6040518093819263519f184360e11b8352306004840161184c565b60803660031901126101f3576004356001600160401b0381116101f357610650903690600401611600565b6024356001600160401b0381116101f35761067160209136906004016117b1565b9290936106aa61067f6116f4565b94610688611703565b95610737575b60405163a8fdc91960e01b815296879485943060048701611bef565b03815f6108055af19081156101ff576020925f92610718575b506106da575b6001600160401b0360405191168152f35b5f546106e88160070b6117f8565b6001600160401b0316906001600160401b031916175f556107135f808080600f335af16101b3611810565b6106c9565b610730919250833d8511610316576103088183611664565b90836106c3565b5f546107458160070b6117f8565b6001600160401b0316906001600160401b031916175f556107705f808080600f335af16101b3611810565b61068e565b60603660031901126101f3576107896115be565b6107916115d4565b604435906001600160401b0382116101f3576001600160401b039261037f6107bf60209436906004016117b1565b604051968795869563592581bb60e11b875260018060a01b03166004870152166024850152606060448501526064840191611b47565b60a03660031901126101f3576108096115be565b6024356001600160401b0381116101f357610828903690600401611600565b90916044356001600160401b0381116101f35761084b60209136906004016117b1565b939094610884610859611703565b95610862611712565b966108eb575b60405163a8fdc91960e01b815297889485943060048701611bef565b03815f6108055af19182156101ff576020935f936108cc575b506108b457506001600160401b0360405191168152f35b5f808080600f6103109582546101868160070b6117f8565b6108e4919350843d8611610316576103088183611664565b918461089d565b5f546108f98160070b6117f8565b6001600160401b0316906001600160401b031916175f5561092c5f808080600f60018060a01b038c165af16101b3611810565b610868565b60803660031901126101f3576109456115ea565b602435906001600160401b0382116101f35761096760209236906004016117b1565b92906109716116f4565b9261097a611703565b93610a42575b61099f604051958693849363592581bb60e11b85523060048601611c23565b03815f6108055af19081156101ff575f91610a06575b602092506109c8575b6040519015158152f35b5f546109d68160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a015f808080600f335af16101b3611810565b6109be565b90506020823d602011610a3a575b81610a2160209383611664565b810103126101f357610a3460209261183f565b906109b5565b3d9150610a14565b5f54610a508160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a7b5f808080600f335af16101b3611810565b610980565b60403660031901126101f3576004356001600160401b0381116101f357610aab903690600401611600565b602435906001600160401b0382116101f3576102c692610ad160209336906004016117b1565b60405163a8fdc91960e01b815295869485949193913060048701611bef565b346101f3575f3660031901126101f35760205f5460070b604051908152f35b346101f3575f3660031901126101f35760606101e0604051610b3081611648565b5f81528260208201525f604082015282808201528260808201528260a08201528260c08201528260e0820152826101008201525f61012082015282610140820152826101608201525f6101808201525f6101a08201525f6101c08201520152604051635e615a6b60e01b81525f816004816108055afa80156101ff575f90610d18575b610d149060405191829160208352805160070b60208401526101e0610cd7610cbf610c98610c80610c69610c53610c3d610c27610c028c61022060208d01519161020060408201520190611745565b8c606060408d015160070b91015260608b01518d6080601f1982850301910152611721565b60808a01518c8203601f190160a08e0152611721565b60a08901518b8203601f190160c08d0152611721565b60c08801518a8203601f190160e08c0152611721565b60e0870151898203601f19016101008b0152611721565b610100860151888203601f19016101208a0152611721565b61012085015160070b610140880152610140850151601f1988830301610160890152611721565b610160840151868203601f1901610180880152611745565b9161018081015115156101a08601526101a081015115156101c08601526101c08101511515828601520151601f1984830301610200850152611721565b0390f35b503d805f833e610d288183611664565b8101906020818303126101f3578051906001600160401b0382116101f35701610200818303126101f35760405190610d5f82611648565b610d68816119fb565b825260208101516001600160401b0381116101f35783610d89918301611a4f565b6020830152610d9a604082016119fb565b604083015260608101516001600160401b0381116101f35783610dbe918301611a09565b606083015260808101516001600160401b0381116101f35783610de2918301611a09565b608083015260a08101516001600160401b0381116101f35783610e06918301611a09565b60a083015260c08101516001600160401b0381116101f35783610e2a918301611a09565b60c083015260e08101516001600160401b0381116101f35783610e4e918301611a09565b60e08301526101008101516001600160401b0381116101f35783610e73918301611a09565b610100830152610e8661012082016119fb565b6101208301526101408101516001600160401b0381116101f35783610eac918301611a09565b6101408301526101608101516001600160401b0381116101f35783610ed2918301611a4f565b610160830152610ee5610180820161183f565b610180830152610ef86101a0820161183f565b6101a0830152610f0b6101c0820161183f565b6101c08301526101e0810151926001600160401b0384116101f357610d1493610f349201611a09565b6101e0820152610bb3565b60603660031901126101f357610f536115ea565b60243580151581036101f357602061099f92610f6d6116f4565b92610f8e575b6040518094819263519f184360e11b8352306004840161184c565b5f54610f9c8160070b6117f8565b6001600160401b0316906001600160401b031916175f55610fc75f808080600f335af16101b3611810565b610f73565b60803660031901126101f357611020610fe36115be565b610feb6115d4565b906020610ff66116f4565b92610fff611703565b936110a3575b6040518095819263519f184360e11b8352306004840161184c565b03815f6108055af19182156101ff575f92611067575b6020935061104957506040519015158152f35b5f808080600f6110619582546101868160070b6117f8565b82610163565b91506020833d60201161109b575b8161108260209383611664565b810103126101f35761109560209361183f565b91611036565b3d9150611075565b5f546110b18160070b6117f8565b6001600160401b0316906001600160401b031916175f556110e45f808080600f60018060a01b0389165af16101b3611810565b611005565b60803660031901126101f3576110fd6115be565b6111056115d4565b6044356001600160401b0381116101f357611124903690600401611600565b6064939193356001600160401b0381116101f3576111469036906004016116d6565b9160018060a01b0316925f5461115e8160070b6117f8565b6001600160401b0316906001600160401b031916175f555f8080806001885af1611186611810565b501561156f5760206111ad916040518093819263519f184360e11b8352306004840161184c565b03815f6108055af15f9181611533575b506112a1576111ca61186f565b6308c379a01461121a575b60405162461bcd60e51b815260206004820152601e60248201527f63616e63656c50726f706f73616c206661696c65642073696c656e746c7900006044820152606490fd5b61122261188a565b8061122d57506111d5565b602061127d603761129d9360405193849176031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b828401528051918291018484015e81015f838201520301601f198101835282611664565b60405162461bcd60e51b8152602060048201529182916024830190611721565b0390fd5b156114ee575f546112b48160070b6117f8565b6001600160401b031667ffffffffffffffff1991909116175f556040805194906112de8187611664565b60018652601f19015f5b8181106114b65761134a60208888888861131089604051926113098461162d565b36916116a0565b8152600285820152611321846118fc565b5261132b836118fc565b505f604051809681958294635ca64c1160e11b8452866004850161191d565b03925af15f918161147a575b506114265761136361186f565b6308c379a0146113bd575b60405162461bcd60e51b815260206004820152602160248201527f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c6044820152607960f81b6064820152608490fd5b6113c561188a565b806113d0575061136e565b602061127d603a61129d936040519384917f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000828401528051918291018484015e81015f838201520301601f198101835282611664565b1561143657602060405160018152f35b606460405162461bcd60e51b815260206004820152602060248201527f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c73656044820152fd5b9091506020813d6020116114ae575b8161149660209383611664565b810103126101f3576114a79061183f565b9082611356565b3d9150611489565b6020906040516114c58161162d565b606081525f8382015282828a010152016112e8565b634e487b7160e01b5f52604160045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c73650000006044820152606490fd5b9091506020813d602011611567575b8161154f60209383611664565b810103126101f3576115609061183f565b90866111bd565b3d9150611542565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f6044820152603960f91b6064820152608490fd5b600435906001600160a01b03821682036101f357565b602435906001600160401b03821682036101f357565b600435906001600160401b03821682036101f357565b9181601f840112156101f3578235916001600160401b0383116101f357602083818601950101116101f357565b604081019081106001600160401b038211176114da57604052565b61020081019081106001600160401b038211176114da57604052565b90601f801991011681019081106001600160401b038211176114da57604052565b6001600160401b0381116114da57601f01601f191660200190565b9291926116ac82611685565b916116ba6040519384611664565b8294818452818301116101f3578281602093845f960137010152565b9080601f830112156101f3578160206116f1933591016116a0565b90565b6044359081151582036101f357565b6064359081151582036101f357565b6084359081151582036101f357565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9080602083519182815201916020808360051b8301019401925f915b83831061177057505050505090565b9091929394602080600192601f19858203018652885190828061179c8451604085526040850190611721565b93015191015297019301930191939290611761565b9181601f840112156101f3578235916001600160401b0383116101f3576020808501948460051b0101116101f357565b6001600160401b0381116114da5760051b60200190565b60070b677fffffffffffffff81146105385760010190565b3d1561183a573d9061182182611685565b9161182f6040519384611664565b82523d5f602084013e565b606090565b519081151582036101f357565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b5f9060033d1161187b57565b905060045f803e5f5160e01c90565b5f60443d106116f1576040513d600319016004823e8051913d60248401116001600160401b038411176118f657828201928351916001600160401b0383116118ee573d840160031901858401602001116118ee57506116f192910160200190611664565b949350505050565b92915050565b8051156119095760200190565b634e487b7160e01b5f52603260045260245ffd5b9161193d9160018060a01b03168352606060208401526060830190611721565b906040818303910152815180825260208201916020808360051b8301019401925f915b83831061196f57505050505090565b9091929394602080600192601f19858203018652885190828061199b8451604085526040850190611721565b93015191015297019301930191939290611960565b156119b757565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f357565b81601f820112156101f357805190611a2082611685565b92611a2e6040519485611664565b828452602083830101116101f357815f9260208093018386015e8301015290565b81601f820112156101f357805190611a66826117e1565b92611a746040519485611664565b82845260208085019360051b830101918183116101f35760208101935b838510611aa057505050505090565b84516001600160401b0381116101f35782016040818503601f1901126101f35760405191611acd8361162d565b6020820151926001600160401b0384116101f357604083611af5886020809881980101611a09565b8352015183820152815201940193611a91565b908160209103126101f357516001600160401b03811681036101f35790565b908060209392818452848401375f828201840152601f01601f1916010190565b906020838281520160208260051b85010193835f915b848310611b6d5750505050505090565b909192939495601f198282030185528635603e19843603018112156101f35783018035601e19823603018112156101f357810190602082359201906001600160401b0383116101f35782360382136101f35783602080611bdb8196958296604060019a526040860191611b27565b930135910152980196950193019190611b5d565b93916116f19593611c159260018060a01b03168652606060208701526060860191611b27565b926040818503910152611b47565b6001600160401b036116f1959360609360018060a01b031683521660208201528160408201520191611b4756fea26469706673582212203c62aeaa5dee2e27869ae5dc1f968f5f3a5c88ccaaa26be5c987422199ebf18a64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/GovCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/ICS20Caller.json b/precompiles/testutil/contracts/ICS20Caller.json index 71a2210d5..1e62ec72a 100644 --- a/precompiles/testutil/contracts/ICS20Caller.json +++ b/precompiles/testutil/contracts/ICS20Caller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ICS20Caller", "sourceName": "solidity/precompiles/testutil/contracts/ICS20Caller.sol", "abi": [ @@ -388,8 +388,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001657610a61908161001c8239f35b600080fdfe608060408181526004908136101561001657600080fd5b600092833560e01c90816361bc221a146106a357508063b42bc5a9146104bf578063bcc45b7914610372578063c352645014610179578063d0e30db014610167578063d8bb6c0e146100f85763e12e9b271461007157600080fd5b346100f45760206100a86100843661079f565b8b5163632535b960e01b81529c8d9a8b9a9099929893979496949392918b016108e7565b0381866108025af19081156100eb57506100c0575080fd5b6100e09060203d81116100e4575b6100d881836106f1565b810190610888565b5080fd5b503d6100ce565b513d84823e3d90fd5b8280fd5b50346100f457602061010c6100843661079f565b0381866108025af191821561015d5760209392610135575b506001600160401b03905191168152f35b6001600160401b0391925061015690843d81116100e4576100d881836106f1565b9190610124565b81513d85823e3d90fd5b83806003193601126101765780f35b80fd5b50346100f4576101803660031901126100f4576001600160401b0390823582811161036e576101ab903690850161072d565b936024358381116100e0576101c3903690860161072d565b6044358481116100f4576101da903690870161072d565b956101e3610779565b60a43586811161036e576101fa903690890161072d565b8560c31936011261036e578551610210816106c0565b60c435888116810361036a57815260e435888116810361036a5760208201526101043591888316830361036a5761012435898111610366576102559036908c0161072d565b93610144359a8b15158c0361036257916020979695939161029b959361027961078f565b9d61032b575b8b5163632535b960e01b81529e8f998a99606435938b016108e7565b0381846108025af193841561031f576020958295610300575b506102c2575b505191168152f35b806102fa91546102d48160070b610981565b8516906001600160401b031916178155808080600f335af16102f46109af565b506109df565b386102ba565b610318919550863d81116100e4576100d881836106f1565b93386102b4565b509051903d90823e3d90fd5b8a548d61033a8260070b610981565b16906001600160401b031916178b5561035d8b808080600f335af16102f46109af565b61027f565b8880fd5b8780fd5b8680fd5b8480fd5b50346100f4576101203660031901126100f4576001600160401b0390823582811161036e576103a4903690850161072d565b6024358381116104bb576103bb903690860161072d565b60443584811161036a576103d2903690870161072d565b90608435858111610366576103ea903690880161072d565b928460a31936011261036657845190610402826106c0565b60a43587811681036104b757825260c43587811681036104b757602083015260e43587811681036104b75761010435928884116104b35760209661044c61046b9536908d0161072d565b9389519b8c98899863632535b960e01b8a523093606435938b016108e7565b0381876108025af19283156104a9576020949361048a57505191168152f35b6104a2919350843d81116100e4576100d881836106f1565b91386102ba565b81513d86823e3d90fd5b8a80fd5b8980fd5b8580fd5b50346100f4576101803660031901126100f457826001600160401b0383358181116100f4576104f1903690860161072d565b9060243581811161069f57610509903690870161072d565b60443582811161036e57610520903690880161072d565b610528610779565b9160a43584811161036a576105409036908a0161072d565b60c435959091906001600160a01b0387168703610366578860e3193601126103665788519461056e866106c0565b60e43587811681036104b75786526101043587811681036104b75760208701526101243587811681036104b75761014435908882116104b3578b976020966105e4948f946105bf903690870161072d565b946105c861078f565b9b5163e12e9b2760e01b81529a8b998a99606435938b016108e7565b038188305af1610681575b506105f8578280f35b82600f8193829383549061060e8260070b610981565b16906001600160401b0319161783555af16106276109af565b5015610634578281808280f35b906020608492519162461bcd60e51b8352820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152fd5b6106989060203d81116100e4576100d881836106f1565b50386105ef565b8380fd5b8490346100e057816003193601126100e0576020915460070b8152f35b604081019081106001600160401b038211176106db57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b038211176106db57604052565b6001600160401b0381116106db57601f01601f191660200190565b81601f820112156107745780359061074482610712565b9261075260405194856106f1565b8284526020838301011161077457816000926020809301838601378301015290565b600080fd5b608435906001600160a01b038216820361077457565b6101643590811515820361077457565b610140600319820112610774576004906001600160401b03823581811161077457826107cc91850161072d565b9360243582811161077457836107e391860161072d565b9360443583811161077457846107fa91830161072d565b93606435936084356001600160a01b0381168103610774579360a435828111610774578361082991860161072d565b93604060c31985011261077457604051610842816106c0565b60c435848116810361077457815260e43584811681036107745760208201529361010435848116810361077457936101243590811161077457610885920161072d565b90565b9081602091031261077457516001600160401b03811681036107745790565b919082519283825260005b8481106108d3575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016108b2565b95909461092c61094f9461091e6108859c9a9b979561091160209a8c6101408091528d01906108a7565b908b82038b8d01526108a7565b9089820360408b01526108a7565b60608801939093526001600160a01b0316608087015285820360a08701526108a7565b946001600160401b039281848093511660c087015201511660e0840152166101008201526101208184039101526108a7565b60070b677fffffffffffffff81146109995760010190565b634e487b7160e01b600052601160045260246000fd5b3d156109da573d906109c082610712565b916109ce60405193846106f1565b82523d6000602084013e565b606090565b156109e657565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea26469706673582212208791b3d3dbefb3ff5d8becbb8ea142afe50bff91ecc385918766b552c4a8067464736f6c63430008140033", - "deployedBytecode": "0x608060408181526004908136101561001657600080fd5b600092833560e01c90816361bc221a146106a357508063b42bc5a9146104bf578063bcc45b7914610372578063c352645014610179578063d0e30db014610167578063d8bb6c0e146100f85763e12e9b271461007157600080fd5b346100f45760206100a86100843661079f565b8b5163632535b960e01b81529c8d9a8b9a9099929893979496949392918b016108e7565b0381866108025af19081156100eb57506100c0575080fd5b6100e09060203d81116100e4575b6100d881836106f1565b810190610888565b5080fd5b503d6100ce565b513d84823e3d90fd5b8280fd5b50346100f457602061010c6100843661079f565b0381866108025af191821561015d5760209392610135575b506001600160401b03905191168152f35b6001600160401b0391925061015690843d81116100e4576100d881836106f1565b9190610124565b81513d85823e3d90fd5b83806003193601126101765780f35b80fd5b50346100f4576101803660031901126100f4576001600160401b0390823582811161036e576101ab903690850161072d565b936024358381116100e0576101c3903690860161072d565b6044358481116100f4576101da903690870161072d565b956101e3610779565b60a43586811161036e576101fa903690890161072d565b8560c31936011261036e578551610210816106c0565b60c435888116810361036a57815260e435888116810361036a5760208201526101043591888316830361036a5761012435898111610366576102559036908c0161072d565b93610144359a8b15158c0361036257916020979695939161029b959361027961078f565b9d61032b575b8b5163632535b960e01b81529e8f998a99606435938b016108e7565b0381846108025af193841561031f576020958295610300575b506102c2575b505191168152f35b806102fa91546102d48160070b610981565b8516906001600160401b031916178155808080600f335af16102f46109af565b506109df565b386102ba565b610318919550863d81116100e4576100d881836106f1565b93386102b4565b509051903d90823e3d90fd5b8a548d61033a8260070b610981565b16906001600160401b031916178b5561035d8b808080600f335af16102f46109af565b61027f565b8880fd5b8780fd5b8680fd5b8480fd5b50346100f4576101203660031901126100f4576001600160401b0390823582811161036e576103a4903690850161072d565b6024358381116104bb576103bb903690860161072d565b60443584811161036a576103d2903690870161072d565b90608435858111610366576103ea903690880161072d565b928460a31936011261036657845190610402826106c0565b60a43587811681036104b757825260c43587811681036104b757602083015260e43587811681036104b75761010435928884116104b35760209661044c61046b9536908d0161072d565b9389519b8c98899863632535b960e01b8a523093606435938b016108e7565b0381876108025af19283156104a9576020949361048a57505191168152f35b6104a2919350843d81116100e4576100d881836106f1565b91386102ba565b81513d86823e3d90fd5b8a80fd5b8980fd5b8580fd5b50346100f4576101803660031901126100f457826001600160401b0383358181116100f4576104f1903690860161072d565b9060243581811161069f57610509903690870161072d565b60443582811161036e57610520903690880161072d565b610528610779565b9160a43584811161036a576105409036908a0161072d565b60c435959091906001600160a01b0387168703610366578860e3193601126103665788519461056e866106c0565b60e43587811681036104b75786526101043587811681036104b75760208701526101243587811681036104b75761014435908882116104b3578b976020966105e4948f946105bf903690870161072d565b946105c861078f565b9b5163e12e9b2760e01b81529a8b998a99606435938b016108e7565b038188305af1610681575b506105f8578280f35b82600f8193829383549061060e8260070b610981565b16906001600160401b0319161783555af16106276109af565b5015610634578281808280f35b906020608492519162461bcd60e51b8352820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152fd5b6106989060203d81116100e4576100d881836106f1565b50386105ef565b8380fd5b8490346100e057816003193601126100e0576020915460070b8152f35b604081019081106001600160401b038211176106db57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b038211176106db57604052565b6001600160401b0381116106db57601f01601f191660200190565b81601f820112156107745780359061074482610712565b9261075260405194856106f1565b8284526020838301011161077457816000926020809301838601378301015290565b600080fd5b608435906001600160a01b038216820361077457565b6101643590811515820361077457565b610140600319820112610774576004906001600160401b03823581811161077457826107cc91850161072d565b9360243582811161077457836107e391860161072d565b9360443583811161077457846107fa91830161072d565b93606435936084356001600160a01b0381168103610774579360a435828111610774578361082991860161072d565b93604060c31985011261077457604051610842816106c0565b60c435848116810361077457815260e43584811681036107745760208201529361010435848116810361077457936101243590811161077457610885920161072d565b90565b9081602091031261077457516001600160401b03811681036107745790565b919082519283825260005b8481106108d3575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016108b2565b95909461092c61094f9461091e6108859c9a9b979561091160209a8c6101408091528d01906108a7565b908b82038b8d01526108a7565b9089820360408b01526108a7565b60608801939093526001600160a01b0316608087015285820360a08701526108a7565b946001600160401b039281848093511660c087015201511660e0840152166101008201526101208184039101526108a7565b60070b677fffffffffffffff81146109995760010190565b634e487b7160e01b600052601160045260246000fd5b3d156109da573d906109c082610712565b916109ce60405193846106f1565b82523d6000602084013e565b606090565b156109e657565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea26469706673582212208791b3d3dbefb3ff5d8becbb8ea142afe50bff91ecc385918766b552c4a8067464736f6c63430008140033", + "bytecode": "0x60808060405234601557610a94908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816361bc221a146106cb57508063b42bc5a9146104b3578063bcc45b791461037f578063c352645014610158578063d0e30db01461014b578063d8bb6c0e146100f15763e12e9b2714610069575f80fd5b346100db576100a4602061007c366107d2565b60405163632535b960e01b81529a8b998a999198929793969495949392919060048b01610920565b03815f6108025af180156100e6576100ba575f80fd5b6100db9060203d6020116100df575b6100d38183610716565b8101906108dd565b5f80fd5b503d6100c9565b6040513d5f823e3d90fd5b346100db57610104602061007c366107d2565b03815f6108025af180156100e6576020915f9161012e575b506001600160401b0360405191168152f35b6101459150823d84116100df576100d38183610716565b8261011c565b5f3660031901126100db57005b346100db576101803660031901126100db576004356001600160401b0381116100db57610189903690600401610752565b6024356001600160401b0381116100db576101a8903690600401610752565b6044356001600160401b0381116100db576101c7903690600401610752565b906101d0610798565b9160a4356001600160401b0381116100db576101f0903690600401610752565b9160403660c31901126100db576040519361020a856106e7565b60c4356001600160401b03811681036100db57855260e4356001600160401b03811681036100db576020860152610104356001600160401b03811681036100db57610124356001600160401b0381116100db5761026b903690600401610752565b90610144359687151588036100db576020966102ae946102896107c2565b99610341575b60405163632535b960e01b81529a8b9889986064359260048b01610920565b03815f6108025af19081156100e6576020925f92610322575b506102de575b6001600160401b0360405191168152f35b5f546102ec8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561031d5f808080600f335af16103176109e3565b50610a12565b6102cd565b61033a919250833d85116100df576100d38183610716565b90836102c7565b5f5461034f8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561037a5f808080600f335af16103176109e3565b61028f565b346100db576101203660031901126100db576004356001600160401b0381116100db576103b0903690600401610752565b6024356001600160401b0381116100db576103cf903690600401610752565b906044356001600160401b0381116100db576103ef903690600401610752565b906084356001600160401b0381116100db5761040f903690600401610752565b9160403660a31901126100db5760405192610429846106e7565b60a4356001600160401b03811681036100db57845260c4356001600160401b03811681036100db57602085015260e435906001600160401b03821682036100db5761010435916001600160401b0383116100db57602095610491610104943690600401610752565b92604051988997889763632535b960e01b895230926064359260048b01610920565b346100db576101803660031901126100db576004356001600160401b0381116100db576104e4903690600401610752565b6024356001600160401b0381116100db57610503903690600401610752565b906044356001600160401b0381116100db57610523903690600401610752565b9061052c610798565b9160a4356001600160401b0381116100db5761054c903690600401610752565b60c435949091906001600160a01b03861686036100db5760403660e31901126100db576040519261057c846106e7565b60e4356001600160401b03811681036100db578452610104356001600160401b03811681036100db57602085015261012435906001600160401b03821682036100db5761014435916001600160401b0383116100db576020956105e661060f943690600401610752565b926105ef6107c2565b99604051998a98899863e12e9b2760e01b8a526064359260048b01610920565b03815f305af16106ae575b5061062157005b5f8080600f819482546106368160070b6109b7565b6001600160401b0316906001600160401b0319161783555af16106576109e3565b501561065f57005b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6106c69060203d6020116100df576100d38183610716565b61061a565b346100db575f3660031901126100db576020905f5460070b8152f35b604081019081106001600160401b0382111761070257604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761070257604052565b6001600160401b03811161070257601f01601f191660200190565b81601f820112156100db5780359061076982610737565b926107776040519485610716565b828452602083830101116100db57815f926020809301838601378301015290565b608435906001600160a01b03821682036100db57565b35906001600160401b03821682036100db57565b610164359081151582036100db57565b6101406003198201126100db576004356001600160401b0381116100db57816107fd91600401610752565b916024356001600160401b0381116100db578261081c91600401610752565b916044356001600160401b0381116100db578161083b91600401610752565b91606435916084356001600160a01b03811681036100db579160a4356001600160401b0381116100db578261087291600401610752565b91604060c48203126100db5760405161088a816106e7565b61089460c46107ae565b81526108a060e46107ae565b602082015291610104356001600160401b03811681036100db579161012435906001600160401b0382116100db576108da91600401610752565b90565b908160209103126100db57516001600160401b03811681036100db5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b95936108da999798946001600160401b039661096d889661095f602097610952610990986101408f81815201906108fc565b8d81038a8f0152906108fc565b908b820360408d01526108fc565b60608a01939093526001600160a01b0316608089015287820360a08901526108fc565b968281511660c087015201511660e0840152166101008201526101208184039101526108fc565b60070b677fffffffffffffff81146109cf5760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610a0d573d906109f482610737565b91610a026040519384610716565b82523d5f602084013e565b606090565b15610a1957565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea264697066735822122036fa33249127f13d4dea233181a6ee19792d5ed1de4314120e4ee662321dea3064736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816361bc221a146106cb57508063b42bc5a9146104b3578063bcc45b791461037f578063c352645014610158578063d0e30db01461014b578063d8bb6c0e146100f15763e12e9b2714610069575f80fd5b346100db576100a4602061007c366107d2565b60405163632535b960e01b81529a8b998a999198929793969495949392919060048b01610920565b03815f6108025af180156100e6576100ba575f80fd5b6100db9060203d6020116100df575b6100d38183610716565b8101906108dd565b5f80fd5b503d6100c9565b6040513d5f823e3d90fd5b346100db57610104602061007c366107d2565b03815f6108025af180156100e6576020915f9161012e575b506001600160401b0360405191168152f35b6101459150823d84116100df576100d38183610716565b8261011c565b5f3660031901126100db57005b346100db576101803660031901126100db576004356001600160401b0381116100db57610189903690600401610752565b6024356001600160401b0381116100db576101a8903690600401610752565b6044356001600160401b0381116100db576101c7903690600401610752565b906101d0610798565b9160a4356001600160401b0381116100db576101f0903690600401610752565b9160403660c31901126100db576040519361020a856106e7565b60c4356001600160401b03811681036100db57855260e4356001600160401b03811681036100db576020860152610104356001600160401b03811681036100db57610124356001600160401b0381116100db5761026b903690600401610752565b90610144359687151588036100db576020966102ae946102896107c2565b99610341575b60405163632535b960e01b81529a8b9889986064359260048b01610920565b03815f6108025af19081156100e6576020925f92610322575b506102de575b6001600160401b0360405191168152f35b5f546102ec8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561031d5f808080600f335af16103176109e3565b50610a12565b6102cd565b61033a919250833d85116100df576100d38183610716565b90836102c7565b5f5461034f8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561037a5f808080600f335af16103176109e3565b61028f565b346100db576101203660031901126100db576004356001600160401b0381116100db576103b0903690600401610752565b6024356001600160401b0381116100db576103cf903690600401610752565b906044356001600160401b0381116100db576103ef903690600401610752565b906084356001600160401b0381116100db5761040f903690600401610752565b9160403660a31901126100db5760405192610429846106e7565b60a4356001600160401b03811681036100db57845260c4356001600160401b03811681036100db57602085015260e435906001600160401b03821682036100db5761010435916001600160401b0383116100db57602095610491610104943690600401610752565b92604051988997889763632535b960e01b895230926064359260048b01610920565b346100db576101803660031901126100db576004356001600160401b0381116100db576104e4903690600401610752565b6024356001600160401b0381116100db57610503903690600401610752565b906044356001600160401b0381116100db57610523903690600401610752565b9061052c610798565b9160a4356001600160401b0381116100db5761054c903690600401610752565b60c435949091906001600160a01b03861686036100db5760403660e31901126100db576040519261057c846106e7565b60e4356001600160401b03811681036100db578452610104356001600160401b03811681036100db57602085015261012435906001600160401b03821682036100db5761014435916001600160401b0383116100db576020956105e661060f943690600401610752565b926105ef6107c2565b99604051998a98899863e12e9b2760e01b8a526064359260048b01610920565b03815f305af16106ae575b5061062157005b5f8080600f819482546106368160070b6109b7565b6001600160401b0316906001600160401b0319161783555af16106576109e3565b501561065f57005b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6106c69060203d6020116100df576100d38183610716565b61061a565b346100db575f3660031901126100db576020905f5460070b8152f35b604081019081106001600160401b0382111761070257604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761070257604052565b6001600160401b03811161070257601f01601f191660200190565b81601f820112156100db5780359061076982610737565b926107776040519485610716565b828452602083830101116100db57815f926020809301838601378301015290565b608435906001600160a01b03821682036100db57565b35906001600160401b03821682036100db57565b610164359081151582036100db57565b6101406003198201126100db576004356001600160401b0381116100db57816107fd91600401610752565b916024356001600160401b0381116100db578261081c91600401610752565b916044356001600160401b0381116100db578161083b91600401610752565b91606435916084356001600160a01b03811681036100db579160a4356001600160401b0381116100db578261087291600401610752565b91604060c48203126100db5760405161088a816106e7565b61089460c46107ae565b81526108a060e46107ae565b602082015291610104356001600160401b03811681036100db579161012435906001600160401b0382116100db576108da91600401610752565b90565b908160209103126100db57516001600160401b03811681036100db5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b95936108da999798946001600160401b039661096d889661095f602097610952610990986101408f81815201906108fc565b8d81038a8f0152906108fc565b908b820360408d01526108fc565b60608a01939093526001600160a01b0316608089015287820360a08901526108fc565b968281511660c087015201511660e0840152166101008201526101208184039101526108fc565b60070b677fffffffffffffff81146109cf5760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610a0d573d906109f482610737565b91610a026040519384610716565b82523d5f602084013e565b606090565b15610a1957565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea264697066735822122036fa33249127f13d4dea233181a6ee19792d5ed1de4314120e4ee662321dea3064736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/ICS20Caller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/InterchainSender.json b/precompiles/testutil/contracts/InterchainSender.json index ece2e4700..14a139b89 100644 --- a/precompiles/testutil/contracts/InterchainSender.json +++ b/precompiles/testutil/contracts/InterchainSender.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "InterchainSender", "sourceName": "solidity/precompiles/testutil/contracts/InterchainSender.sol", "abi": [ @@ -404,8 +404,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523461001657611101908161001c8239f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c80631dba685b146107e757806344c286701461055157806361bc221a146105305780636fdf23cc146104f95780637492bdd81461045e578063accc7b901461038a578063b9672879146101485763c595699a1461007457600080fd5b34610137576020366003190112610137576001600160401b036004358181116101375760006100aa6100cc923690600401610b0c565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610ba2565b03816108025afa90811561013c576000916100fc575b604051602080825281906100f890820185610ba2565b0390f35b90503d806000833e61010e8183610ad0565b8101602082820312610137578151928311610137576100f8926101319201610fa7565b386100e2565b600080fd5b6040513d6000823e3d90fd5b34610137576003196101203682011261013757610163610a89565b6001600160a01b03916024358381169190829003610137576001600160401b03916044358381116101375761019c903690600401610b0c565b606435848111610137576101b4903690600401610b0c565b91608435858111610137576101cd903690600401610b0c565b9160c435868111610137576101e6903690600401610b0c565b926101ef610b53565b958989896101fb610b62565b99610361575b50505060405161021081610a9f565b606481526020958695869485840160649052604051998a9763632535b960e01b8952600489016101409052610144890161024991610ba2565b868982030160248a015261025c91610ba2565b8588820301604489015261026f91610ba2565b9060a43560648801526084870152838682030160a487015261029091610ba2565b9060c485016102b491602090816001600160401b0391828151168552015116910152565b6101048401600090528381039182016101248501526000905201815a610802600091f1801561013c5761032d575b50506102ea57005b600080650da475abf00061032b958295839584549061030b8260070b610e07565b16906001600160401b031916178455165af1610325610e35565b50610e65565b005b81813d831161035a575b6103418183610ad0565b810103126101375761035290610d4c565b5084806102e2565b503d610337565b600080650da475abf000610382958295839584549061030b8260070b610e07565b898989610201565b3461013757602080600319360112610137576001600160401b03906004358281116101375760006103c26103f7923690600401610b0c565b6060846040516103d181610a9f565b828152015260405180938192632f8fcc5160e11b83528660048401526024830190610ba2565b03816108025afa92831561013c57600093610423575b50506100f8604051928284938452830190610bc7565b909192503d806000843e6104378184610ad0565b8201908383830312610137578251908111610137576104569201610fc1565b90828061040d565b3461013757610495602061047136610c77565b93989496604093919351998a98899863632535b960e01b8a52339360048b01610d60565b038160006108025af1801561013c576000906104c0575b6020906001600160401b0360405191168152f35b506020813d82116104f1575b816104d960209383610ad0565b81010312610137576104ec602091610d4c565b6104ac565b3d91506104cc565b3461013757610495602061050c36610c77565b93989496604093919351998a98899863632535b960e01b8a52309360048b01610d60565b3461013757600036600319011261013757602060005460070b604051908152f35b346101375760031960203682018113610137576001600160401b03916004358381116101375760a0813603928301126101375760008360405161059381610a9f565b6060815201526040519163303eac4160e21b8352836004840152816004013590602219018112156101375781016024600482013591019185821161013757813603831361013757838261063f608460e494849660009860a060248801528160c488015287870137878685870101528a61060e60248301610c63565b1660448601528a61062160448301610c63565b16606486015261063360648201610b72565b15158286015201610b72565b151560a4830152601f01601f191681010301816108025afa90811561013c576000906000926106ec575b50604051926040840194604085528251809652606085018260608860051b8801019401906000905b8882106106c45750505084809650830382860152816106b98551604086526040860190610ba2565b940151169101520390f35b90919484806106df600193605f198c82030186528951610bc7565b9701920192019091610691565b9150503d806000833e6106ff8183610ad0565b8101906040818303126101375780518481116101375781019082601f8301121561013757815161072e81610f59565b9261073c6040519485610ad0565b818452858085019260051b8201019185831161013757868201905b8382106107c2575050505083810151908582116101375701604081840312610137576040519261078684610a9f565b81518681116101375782019181601f84011215610137576107b0869284846107b896519101610f70565b855201610d4c565b8383015284610669565b81518981116101375788916107dc89848094880101610fc1565b815201910190610757565b346101375761012036600319011261013757610801610a89565b6024356001600160401b03811161013757610820903690600401610b0c565b6044356001600160401b0381116101375761083f903690600401610b0c565b906064356001600160401b0381116101375761085f903690600401610b0c565b60a4356001600160401b0381116101375761087e903690600401610b0c565b9060c43593841515850361013757610894610b53565b9261089d610b62565b95610a3b575b60405180946108b182610a9f565b60648252606460208301526020838a6108e8604051958693849363632535b960e01b85528d8c8c60843560011c9260048901610ebb565b038160006108025af191821561013c5789926109f3575b509160209591610930936109cf575b60405163632535b960e01b8152978896879660843560011c9260048901610ebb565b038160006108025af1801561013c57610996575b5061094b57005b6000808080650da475abf00061032b9582546109698160070b610e07565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af1610325610e35565b6020813d6020116109c7575b816109af60209383610ad0565b81010312610137576109c090610d4c565b5082610944565b3d91506109a2565b6000808080650da475abf0006109ed9582546109698160070b610e07565b8861090e565b959150916020863d602011610a33575b81610a1060209383610ad0565b81010312610137578861093093610a28602098610d4c565b5091935091956108ff565b3d9150610a03565b600054610a4a8160070b610e07565b6001600160401b0316906001600160401b03191617600055610a846000808080650da475abf00060018060a01b038d165af1610325610e35565b6108a3565b600435906001600160a01b038216820361013757565b604081019081106001600160401b03821117610aba57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b03821117610aba57604052565b6001600160401b038111610aba57601f01601f191660200190565b81601f8201121561013757803590610b2382610af1565b92610b316040519485610ad0565b8284526020838301011161013757816000926020809301838601378301015290565b60e43590811515820361013757565b6101043590811515820361013757565b3590811515820361013757565b60005b838110610b925750506000910152565b8181015183820152602001610b82565b90602091610bbb81518092818552858086019101610b7f565b601f01601f1916010190565b805190610bdc60409283855283850190610ba2565b90602080910151938181840391015283519182815281810182808560051b8401019601946000925b858410610c15575050505050505090565b909192939495968580610c52600193601f198682030188528b519083610c4283518a84528a840190610ba2565b9201519084818403910152610ba2565b990194019401929594939190610c04565b35906001600160401b038216820361013757565b610120600319820112610137576004916001600160401b039083358281116101375783610ca5918601610b0c565b936024358381116101375784610cbc918301610b0c565b936044358481116101375781610cd3918401610b0c565b93606435936084358281116101375783610cee918601610b0c565b93604060a31985011261013757604051610d0781610a9f565b60a435848116810361013757815260c43584811681036101375760208201529360e435848116810361013757936101043590811161013757610d499201610b0c565b90565b51906001600160401b038216820361013757565b956001600160401b0395610dae610df295610da0610dd196610d92610d499f9d9e9a978d610140908181520190610ba2565b8c810360208e015290610ba2565b908a820360408c0152610ba2565b60608901939093526001600160a01b0316608088015286820360a0880152610ba2565b9560c0850190602090816001600160401b0391828151168552015116910152565b16610100820152610120818403910152610ba2565b60070b677fffffffffffffff8114610e1f5760010190565b634e487b7160e01b600052601160045260246000fd5b3d15610e60573d90610e4682610af1565b91610e546040519384610ad0565b82523d6000602084013e565b606090565b15610e6c57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b94610efc610f1f94610eee610f409795610ee160209c9b96610140808d528c0190610ba2565b908a82038d8c0152610ba2565b9088820360408a0152610ba2565b60608701939093526001600160a01b0316608086015284820360a0860152610ba2565b9260c0830190602090816001600160401b0391828151168552015116910152565b6000610100820152610120818303910152600081520190565b6001600160401b038111610aba5760051b60200190565b90929192610f7d81610af1565b91610f8b6040519384610ad0565b829482845282820111610137576020610fa5930190610b7f565b565b9080601f83011215610137578151610d4992602001610f70565b91906040928381830312610137578351610fda81610a9f565b80948251936001600160401b03948581116101375781610ffb918601610fa7565b8352602093848101519086821161013757019181601f840112156101375782519061102582610f59565b9661103282519889610ad0565b828852868089019360051b8601019484861161013757878101935b86851061105f57505050505050500152565b84518381116101375782019084601f1983890301126101375784519061108482610a9f565b8a83015185811161013757888c61109d92860101610fa7565b82528583015191858311610137576110bc898d80969581960101610fa7565b8382015281520194019361104d56fea264697066735822122051814c264fbc9ad728c93acc6f2ffed8fd0c82f027781cd49e1e7fee771c9b4164736f6c63430008140033", - "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c80631dba685b146107e757806344c286701461055157806361bc221a146105305780636fdf23cc146104f95780637492bdd81461045e578063accc7b901461038a578063b9672879146101485763c595699a1461007457600080fd5b34610137576020366003190112610137576001600160401b036004358181116101375760006100aa6100cc923690600401610b0c565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610ba2565b03816108025afa90811561013c576000916100fc575b604051602080825281906100f890820185610ba2565b0390f35b90503d806000833e61010e8183610ad0565b8101602082820312610137578151928311610137576100f8926101319201610fa7565b386100e2565b600080fd5b6040513d6000823e3d90fd5b34610137576003196101203682011261013757610163610a89565b6001600160a01b03916024358381169190829003610137576001600160401b03916044358381116101375761019c903690600401610b0c565b606435848111610137576101b4903690600401610b0c565b91608435858111610137576101cd903690600401610b0c565b9160c435868111610137576101e6903690600401610b0c565b926101ef610b53565b958989896101fb610b62565b99610361575b50505060405161021081610a9f565b606481526020958695869485840160649052604051998a9763632535b960e01b8952600489016101409052610144890161024991610ba2565b868982030160248a015261025c91610ba2565b8588820301604489015261026f91610ba2565b9060a43560648801526084870152838682030160a487015261029091610ba2565b9060c485016102b491602090816001600160401b0391828151168552015116910152565b6101048401600090528381039182016101248501526000905201815a610802600091f1801561013c5761032d575b50506102ea57005b600080650da475abf00061032b958295839584549061030b8260070b610e07565b16906001600160401b031916178455165af1610325610e35565b50610e65565b005b81813d831161035a575b6103418183610ad0565b810103126101375761035290610d4c565b5084806102e2565b503d610337565b600080650da475abf000610382958295839584549061030b8260070b610e07565b898989610201565b3461013757602080600319360112610137576001600160401b03906004358281116101375760006103c26103f7923690600401610b0c565b6060846040516103d181610a9f565b828152015260405180938192632f8fcc5160e11b83528660048401526024830190610ba2565b03816108025afa92831561013c57600093610423575b50506100f8604051928284938452830190610bc7565b909192503d806000843e6104378184610ad0565b8201908383830312610137578251908111610137576104569201610fc1565b90828061040d565b3461013757610495602061047136610c77565b93989496604093919351998a98899863632535b960e01b8a52339360048b01610d60565b038160006108025af1801561013c576000906104c0575b6020906001600160401b0360405191168152f35b506020813d82116104f1575b816104d960209383610ad0565b81010312610137576104ec602091610d4c565b6104ac565b3d91506104cc565b3461013757610495602061050c36610c77565b93989496604093919351998a98899863632535b960e01b8a52309360048b01610d60565b3461013757600036600319011261013757602060005460070b604051908152f35b346101375760031960203682018113610137576001600160401b03916004358381116101375760a0813603928301126101375760008360405161059381610a9f565b6060815201526040519163303eac4160e21b8352836004840152816004013590602219018112156101375781016024600482013591019185821161013757813603831361013757838261063f608460e494849660009860a060248801528160c488015287870137878685870101528a61060e60248301610c63565b1660448601528a61062160448301610c63565b16606486015261063360648201610b72565b15158286015201610b72565b151560a4830152601f01601f191681010301816108025afa90811561013c576000906000926106ec575b50604051926040840194604085528251809652606085018260608860051b8801019401906000905b8882106106c45750505084809650830382860152816106b98551604086526040860190610ba2565b940151169101520390f35b90919484806106df600193605f198c82030186528951610bc7565b9701920192019091610691565b9150503d806000833e6106ff8183610ad0565b8101906040818303126101375780518481116101375781019082601f8301121561013757815161072e81610f59565b9261073c6040519485610ad0565b818452858085019260051b8201019185831161013757868201905b8382106107c2575050505083810151908582116101375701604081840312610137576040519261078684610a9f565b81518681116101375782019181601f84011215610137576107b0869284846107b896519101610f70565b855201610d4c565b8383015284610669565b81518981116101375788916107dc89848094880101610fc1565b815201910190610757565b346101375761012036600319011261013757610801610a89565b6024356001600160401b03811161013757610820903690600401610b0c565b6044356001600160401b0381116101375761083f903690600401610b0c565b906064356001600160401b0381116101375761085f903690600401610b0c565b60a4356001600160401b0381116101375761087e903690600401610b0c565b9060c43593841515850361013757610894610b53565b9261089d610b62565b95610a3b575b60405180946108b182610a9f565b60648252606460208301526020838a6108e8604051958693849363632535b960e01b85528d8c8c60843560011c9260048901610ebb565b038160006108025af191821561013c5789926109f3575b509160209591610930936109cf575b60405163632535b960e01b8152978896879660843560011c9260048901610ebb565b038160006108025af1801561013c57610996575b5061094b57005b6000808080650da475abf00061032b9582546109698160070b610e07565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af1610325610e35565b6020813d6020116109c7575b816109af60209383610ad0565b81010312610137576109c090610d4c565b5082610944565b3d91506109a2565b6000808080650da475abf0006109ed9582546109698160070b610e07565b8861090e565b959150916020863d602011610a33575b81610a1060209383610ad0565b81010312610137578861093093610a28602098610d4c565b5091935091956108ff565b3d9150610a03565b600054610a4a8160070b610e07565b6001600160401b0316906001600160401b03191617600055610a846000808080650da475abf00060018060a01b038d165af1610325610e35565b6108a3565b600435906001600160a01b038216820361013757565b604081019081106001600160401b03821117610aba57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b03821117610aba57604052565b6001600160401b038111610aba57601f01601f191660200190565b81601f8201121561013757803590610b2382610af1565b92610b316040519485610ad0565b8284526020838301011161013757816000926020809301838601378301015290565b60e43590811515820361013757565b6101043590811515820361013757565b3590811515820361013757565b60005b838110610b925750506000910152565b8181015183820152602001610b82565b90602091610bbb81518092818552858086019101610b7f565b601f01601f1916010190565b805190610bdc60409283855283850190610ba2565b90602080910151938181840391015283519182815281810182808560051b8401019601946000925b858410610c15575050505050505090565b909192939495968580610c52600193601f198682030188528b519083610c4283518a84528a840190610ba2565b9201519084818403910152610ba2565b990194019401929594939190610c04565b35906001600160401b038216820361013757565b610120600319820112610137576004916001600160401b039083358281116101375783610ca5918601610b0c565b936024358381116101375784610cbc918301610b0c565b936044358481116101375781610cd3918401610b0c565b93606435936084358281116101375783610cee918601610b0c565b93604060a31985011261013757604051610d0781610a9f565b60a435848116810361013757815260c43584811681036101375760208201529360e435848116810361013757936101043590811161013757610d499201610b0c565b90565b51906001600160401b038216820361013757565b956001600160401b0395610dae610df295610da0610dd196610d92610d499f9d9e9a978d610140908181520190610ba2565b8c810360208e015290610ba2565b908a820360408c0152610ba2565b60608901939093526001600160a01b0316608088015286820360a0880152610ba2565b9560c0850190602090816001600160401b0391828151168552015116910152565b16610100820152610120818403910152610ba2565b60070b677fffffffffffffff8114610e1f5760010190565b634e487b7160e01b600052601160045260246000fd5b3d15610e60573d90610e4682610af1565b91610e546040519384610ad0565b82523d6000602084013e565b606090565b15610e6c57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b94610efc610f1f94610eee610f409795610ee160209c9b96610140808d528c0190610ba2565b908a82038d8c0152610ba2565b9088820360408a0152610ba2565b60608701939093526001600160a01b0316608086015284820360a0860152610ba2565b9260c0830190602090816001600160401b0391828151168552015116910152565b6000610100820152610120818303910152600081520190565b6001600160401b038111610aba5760051b60200190565b90929192610f7d81610af1565b91610f8b6040519384610ad0565b829482845282820111610137576020610fa5930190610b7f565b565b9080601f83011215610137578151610d4992602001610f70565b91906040928381830312610137578351610fda81610a9f565b80948251936001600160401b03948581116101375781610ffb918601610fa7565b8352602093848101519086821161013757019181601f840112156101375782519061102582610f59565b9661103282519889610ad0565b828852868089019360051b8601019484861161013757878101935b86851061105f57505050505050500152565b84518381116101375782019084601f1983890301126101375784519061108482610a9f565b8a83015185811161013757888c61109d92860101610fa7565b82528583015191858311610137576110bc898d80969581960101610fa7565b8382015281520194019361104d56fea264697066735822122051814c264fbc9ad728c93acc6f2ffed8fd0c82f027781cd49e1e7fee771c9b4164736f6c63430008140033", + "bytecode": "0x60808060405234601557611116908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631dba685b1461083f57806344c286701461056957806361bc221a1461054a5780636fdf23cc146105135780637492bdd814610479578063accc7b90146103a1578063b9672879146101475763c595699a14610071575f80fd5b34610138576020366003190112610138576004356001600160401b038111610138575f6100a56100c7923690600401610afe565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610b70565b03816108025afa801561013c575f906100f7575b6100f390604051918291602083526020830190610b70565b0390f35b503d805f833e6101078183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926101339201610ef8565b6100db565b5f80fd5b6040513d5f823e3d90fd5b346101385761012036600319011261013857610161610a7d565b6024356001600160a01b03811690819003610138576044356001600160401b03811161013857610195903690600401610afe565b906064356001600160401b038111610138576101b5903690600401610afe565b906084356001600160401b038111610138576101d5903690600401610afe565b9060c435926001600160401b0384116101385785946102c36102a360049460209694610284889661027261020f6101409c36908c01610afe565b93610218610b44565b9d610221610b53565b9e61037e575b50610260604051996102388b610a93565b60648b5260648c8c01526040519e8f9d8e63632535b960e01b815201526101448d0190610b70565b8b81036003190160248d015290610b70565b8981036003190160448b015290610b70565b9160a435606489015260848801526003198783030160a4880152610b70565b9160c48501906001600160401b0360208092828151168552015116910152565b5f6101048401525f8382039160031983016101248601525201815f6108025af1801561013c57610347575b506102f557005b5f808080650da475abf0006103459582546103128160070b610d49565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af161033f610d75565b50610da4565b005b6020813d602011610376575b8161036060209383610ac2565b810103126101385761037190610dfa565b6102ee565b3d9150610353565b5f808080650da475abf00061039b9582546103128160070b610d49565b8e610227565b34610138576020366003190112610138576004356001600160401b038111610138575f6103d561040c923690600401610afe565b606060206040516103e581610a93565b828152015260405180938192632f8fcc5160e11b8352602060048401526024830190610b70565b03816108025afa801561013c575f90610438575b6100f390604051918291602083526020830190610b94565b503d805f833e6104488183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926104749201610f12565b610420565b34610138576104b0602061048c36610c3f565b93989496604093919351998a98899863632535b960e01b8a52339360048b0161103b565b03815f6108025af1801561013c575f906104d9575b6020906001600160401b0360405191168152f35b506020813d60201161050b575b816104f360209383610ac2565b8101031261013857610506602091610dfa565b6104c5565b3d91506104e6565b34610138576104b0602061052636610c3f565b93989496604093919351998a98899863632535b960e01b8a52309360048b0161103b565b34610138575f3660031901126101385760205f5460070b604051908152f35b34610138576020366003190112610138576004356001600160401b038111610138578036039060a0600319830112610138575f60206040516105aa81610a93565b6060815201526040519163303eac4160e21b83526020600484015281600401359060221901811215610138578101602460048201359101916001600160401b03821161013857813603831361013857838261066b608460e49484965f9860a060248801528160c488015287870137878685870101526001600160401b0361063360248301610c2b565b1660448601526001600160401b0361064d60448301610c2b565b16606486015261065f60648201610b63565b15158286015201610b63565b151560a4830152601f01601f191681010301816108025afa801561013c575f915f91610722575b506040519060408201926040835280518094526060830193602060608260051b8601019201945f905b8282106106f75785808686828103602084015260206001600160401b03816106ec8551604086526040860190610b70565b940151169101520390f35b909192602080610713600193605f198a82030186528a51610b94565b980192019201909592916106bb565b9150503d805f833e6107348183610ac2565b8101906040818303126101385780516001600160401b0381116101385781019082601f8301121561013857815161076a81610eab565b926107786040519485610ac2565b81845260208085019260051b820101918583116101385760208201905b83821061081257505050506020810151906001600160401b038211610138570160408184031261013857604051926107cc84610a93565b81516001600160401b0381116101385782019181601f84011215610138576107fe602092848461080696519101610ec2565b855201610dfa565b60208301529082610692565b81516001600160401b0381116101385760209161083489848094880101610f12565b815201910190610795565b346101385761012036600319011261013857610859610a7d565b6024356001600160401b03811161013857610878903690600401610afe565b6044356001600160401b03811161013857610897903690600401610afe565b6064356001600160401b038111610138576108b6903690600401610afe565b9060a4356001600160401b038111610138576108d6903690600401610afe565b9060c4359384151585036101385785926108ee610b44565b906108f7610b53565b96610a32575b856040519261090b84610a93565b606484526064602085015260208686610942878760843560011c9c8d604051998a97889763632535b960e01b895260048901610e0e565b03815f6108025af191821561013c578a926109e7575b509060209661098394939261099c575b60405163632535b960e01b8152988997889760048901610e0e565b03815f6108025af1801561013c5761034757506102f557005b5f546109aa8160070b610d49565b6001600160401b0316906001600160401b031916175f556109e25f808080650da475abf00060018060a01b0388165af161033f610d75565b610968565b90939291506020813d602011610a2a575b81610a0560209383610ac2565b810103126101385760209661098394610a1e8c93610dfa565b50919293945096610958565b3d91506109f8565b5f54610a408160070b610d49565b6001600160401b0316906001600160401b031916175f55610a785f808080650da475abf00060018060a01b038b165af161033f610d75565b6108fd565b600435906001600160a01b038216820361013857565b604081019081106001600160401b03821117610aae57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b03821117610aae57604052565b6001600160401b038111610aae57601f01601f191660200190565b81601f8201121561013857803590610b1582610ae3565b92610b236040519485610ac2565b8284526020838301011161013857815f926020809301838601378301015290565b60e43590811515820361013857565b6101043590811515820361013857565b3590811515820361013857565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6020610ba98251604085526040850190610b70565b910151916020818303910152815180825260208201916020808360051b8301019401925f915b838310610bde57505050505090565b9091929394602080610c1c600193601f1986820301875289519083610c0c8351604084526040840190610b70565b9201519084818403910152610b70565b97019301930191939290610bcf565b35906001600160401b038216820361013857565b90610120600319830112610138576004356001600160401b0381116101385782610c6b91600401610afe565b916024356001600160401b0381116101385781610c8a91600401610afe565b916044356001600160401b0381116101385782610ca991600401610afe565b91606435916084356001600160401b0381116101385782610ccc91600401610afe565b91604060a31982011261013857604051610ce581610a93565b60a4356001600160401b038116810361013857815260c4356001600160401b03811681036101385760208201529160e4356001600160401b0381168103610138579161010435906001600160401b03821161013857610d4691600401610afe565b90565b60070b677fffffffffffffff8114610d615760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610d9f573d90610d8682610ae3565b91610d946040519384610ac2565b82523d5f602084013e565b606090565b15610dab57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b51906001600160401b038216820361013857565b94610e51610e7494610e43610e949795610e3660209c9b966101408c526101408c0190610b70565b908a82038d8c0152610b70565b9088820360408a0152610b70565b60608701939093526001600160a01b0316608086015284820360a0860152610b70565b9260c08301906001600160401b0360208092828151168552015116910152565b5f6101008201526101208183039101525f81520190565b6001600160401b038111610aae5760051b60200190565b929192610ece82610ae3565b91610edc6040519384610ac2565b829481845281830111610138578281602093845f96015e010152565b9080601f83011215610138578151610d4692602001610ec2565b919060408382031261013857604051610f2a81610a93565b809380516001600160401b0381116101385783610f48918301610ef8565b82526020810151906001600160401b03821161013857019180601f8401121561013857825192610f7784610eab565b93610f856040519586610ac2565b80855260208086019160051b830101918383116101385760208101915b838310610fb457505050505060200152565b82516001600160401b038111610138578201906040828703601f1901126101385760405190610fe282610a93565b60208301516001600160401b0381116101385787602061100492860101610ef8565b82526040830151916001600160401b0383116101385761102c88602080969581960101610ef8565b83820152815201920191610fa2565b956001600160401b03956110886110cb9561107a6110ab9661106c610d469f9d9e9a976101408e8181520190610b70565b8c810360208e015290610b70565b908a820360408c0152610b70565b60608901939093526001600160a01b0316608088015286820360a0880152610b70565b9560c08501906001600160401b0360208092828151168552015116910152565b16610100820152610120818403910152610b7056fea26469706673582212208b712e02517d07b13e05213d4f3bc7baff7d01d495d0307ef4d5a73820e3819d64736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631dba685b1461083f57806344c286701461056957806361bc221a1461054a5780636fdf23cc146105135780637492bdd814610479578063accc7b90146103a1578063b9672879146101475763c595699a14610071575f80fd5b34610138576020366003190112610138576004356001600160401b038111610138575f6100a56100c7923690600401610afe565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610b70565b03816108025afa801561013c575f906100f7575b6100f390604051918291602083526020830190610b70565b0390f35b503d805f833e6101078183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926101339201610ef8565b6100db565b5f80fd5b6040513d5f823e3d90fd5b346101385761012036600319011261013857610161610a7d565b6024356001600160a01b03811690819003610138576044356001600160401b03811161013857610195903690600401610afe565b906064356001600160401b038111610138576101b5903690600401610afe565b906084356001600160401b038111610138576101d5903690600401610afe565b9060c435926001600160401b0384116101385785946102c36102a360049460209694610284889661027261020f6101409c36908c01610afe565b93610218610b44565b9d610221610b53565b9e61037e575b50610260604051996102388b610a93565b60648b5260648c8c01526040519e8f9d8e63632535b960e01b815201526101448d0190610b70565b8b81036003190160248d015290610b70565b8981036003190160448b015290610b70565b9160a435606489015260848801526003198783030160a4880152610b70565b9160c48501906001600160401b0360208092828151168552015116910152565b5f6101048401525f8382039160031983016101248601525201815f6108025af1801561013c57610347575b506102f557005b5f808080650da475abf0006103459582546103128160070b610d49565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af161033f610d75565b50610da4565b005b6020813d602011610376575b8161036060209383610ac2565b810103126101385761037190610dfa565b6102ee565b3d9150610353565b5f808080650da475abf00061039b9582546103128160070b610d49565b8e610227565b34610138576020366003190112610138576004356001600160401b038111610138575f6103d561040c923690600401610afe565b606060206040516103e581610a93565b828152015260405180938192632f8fcc5160e11b8352602060048401526024830190610b70565b03816108025afa801561013c575f90610438575b6100f390604051918291602083526020830190610b94565b503d805f833e6104488183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926104749201610f12565b610420565b34610138576104b0602061048c36610c3f565b93989496604093919351998a98899863632535b960e01b8a52339360048b0161103b565b03815f6108025af1801561013c575f906104d9575b6020906001600160401b0360405191168152f35b506020813d60201161050b575b816104f360209383610ac2565b8101031261013857610506602091610dfa565b6104c5565b3d91506104e6565b34610138576104b0602061052636610c3f565b93989496604093919351998a98899863632535b960e01b8a52309360048b0161103b565b34610138575f3660031901126101385760205f5460070b604051908152f35b34610138576020366003190112610138576004356001600160401b038111610138578036039060a0600319830112610138575f60206040516105aa81610a93565b6060815201526040519163303eac4160e21b83526020600484015281600401359060221901811215610138578101602460048201359101916001600160401b03821161013857813603831361013857838261066b608460e49484965f9860a060248801528160c488015287870137878685870101526001600160401b0361063360248301610c2b565b1660448601526001600160401b0361064d60448301610c2b565b16606486015261065f60648201610b63565b15158286015201610b63565b151560a4830152601f01601f191681010301816108025afa801561013c575f915f91610722575b506040519060408201926040835280518094526060830193602060608260051b8601019201945f905b8282106106f75785808686828103602084015260206001600160401b03816106ec8551604086526040860190610b70565b940151169101520390f35b909192602080610713600193605f198a82030186528a51610b94565b980192019201909592916106bb565b9150503d805f833e6107348183610ac2565b8101906040818303126101385780516001600160401b0381116101385781019082601f8301121561013857815161076a81610eab565b926107786040519485610ac2565b81845260208085019260051b820101918583116101385760208201905b83821061081257505050506020810151906001600160401b038211610138570160408184031261013857604051926107cc84610a93565b81516001600160401b0381116101385782019181601f84011215610138576107fe602092848461080696519101610ec2565b855201610dfa565b60208301529082610692565b81516001600160401b0381116101385760209161083489848094880101610f12565b815201910190610795565b346101385761012036600319011261013857610859610a7d565b6024356001600160401b03811161013857610878903690600401610afe565b6044356001600160401b03811161013857610897903690600401610afe565b6064356001600160401b038111610138576108b6903690600401610afe565b9060a4356001600160401b038111610138576108d6903690600401610afe565b9060c4359384151585036101385785926108ee610b44565b906108f7610b53565b96610a32575b856040519261090b84610a93565b606484526064602085015260208686610942878760843560011c9c8d604051998a97889763632535b960e01b895260048901610e0e565b03815f6108025af191821561013c578a926109e7575b509060209661098394939261099c575b60405163632535b960e01b8152988997889760048901610e0e565b03815f6108025af1801561013c5761034757506102f557005b5f546109aa8160070b610d49565b6001600160401b0316906001600160401b031916175f556109e25f808080650da475abf00060018060a01b0388165af161033f610d75565b610968565b90939291506020813d602011610a2a575b81610a0560209383610ac2565b810103126101385760209661098394610a1e8c93610dfa565b50919293945096610958565b3d91506109f8565b5f54610a408160070b610d49565b6001600160401b0316906001600160401b031916175f55610a785f808080650da475abf00060018060a01b038b165af161033f610d75565b6108fd565b600435906001600160a01b038216820361013857565b604081019081106001600160401b03821117610aae57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b03821117610aae57604052565b6001600160401b038111610aae57601f01601f191660200190565b81601f8201121561013857803590610b1582610ae3565b92610b236040519485610ac2565b8284526020838301011161013857815f926020809301838601378301015290565b60e43590811515820361013857565b6101043590811515820361013857565b3590811515820361013857565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6020610ba98251604085526040850190610b70565b910151916020818303910152815180825260208201916020808360051b8301019401925f915b838310610bde57505050505090565b9091929394602080610c1c600193601f1986820301875289519083610c0c8351604084526040840190610b70565b9201519084818403910152610b70565b97019301930191939290610bcf565b35906001600160401b038216820361013857565b90610120600319830112610138576004356001600160401b0381116101385782610c6b91600401610afe565b916024356001600160401b0381116101385781610c8a91600401610afe565b916044356001600160401b0381116101385782610ca991600401610afe565b91606435916084356001600160401b0381116101385782610ccc91600401610afe565b91604060a31982011261013857604051610ce581610a93565b60a4356001600160401b038116810361013857815260c4356001600160401b03811681036101385760208201529160e4356001600160401b0381168103610138579161010435906001600160401b03821161013857610d4691600401610afe565b90565b60070b677fffffffffffffff8114610d615760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610d9f573d90610d8682610ae3565b91610d946040519384610ac2565b82523d5f602084013e565b606090565b15610dab57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b51906001600160401b038216820361013857565b94610e51610e7494610e43610e949795610e3660209c9b966101408c526101408c0190610b70565b908a82038d8c0152610b70565b9088820360408a0152610b70565b60608701939093526001600160a01b0316608086015284820360a0860152610b70565b9260c08301906001600160401b0360208092828151168552015116910152565b5f6101008201526101208183039101525f81520190565b6001600160401b038111610aae5760051b60200190565b929192610ece82610ae3565b91610edc6040519384610ac2565b829481845281830111610138578281602093845f96015e010152565b9080601f83011215610138578151610d4692602001610ec2565b919060408382031261013857604051610f2a81610a93565b809380516001600160401b0381116101385783610f48918301610ef8565b82526020810151906001600160401b03821161013857019180601f8401121561013857825192610f7784610eab565b93610f856040519586610ac2565b80855260208086019160051b830101918383116101385760208101915b838310610fb457505050505060200152565b82516001600160401b038111610138578201906040828703601f1901126101385760405190610fe282610a93565b60208301516001600160401b0381116101385787602061100492860101610ef8565b82526040830151916001600160401b0383116101385761102c88602080969581960101610ef8565b83820152815201920191610fa2565b956001600160401b03956110886110cb9561107a6110ab9661106c610d469f9d9e9a976101408e8181520190610b70565b8c810360208e015290610b70565b908a820360408c0152610b70565b60608901939093526001600160a01b0316608088015286820360a0880152610b70565b9560c08501906001600160401b0360208092828151168552015116910152565b16610100820152610120818403910152610b7056fea26469706673582212208b712e02517d07b13e05213d4f3bc7baff7d01d495d0307ef4d5a73820e3819d64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/InterchainSender.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/InterchainSenderCaller.json b/precompiles/testutil/contracts/InterchainSenderCaller.json index 253156a71..094746ca1 100644 --- a/precompiles/testutil/contracts/InterchainSenderCaller.json +++ b/precompiles/testutil/contracts/InterchainSenderCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "InterchainSenderCaller", "sourceName": "solidity/precompiles/testutil/contracts/InterchainSenderCaller.sol", "abi": [ @@ -180,8 +180,11 @@ "type": "function" } ], - "bytecode": "0x6080601f6106af38819003918201601f19168301916001600160401b038311848410176100815780849260209460405283398101031261007c57516001600160a01b038116810361007c5760008054600160401b600160e01b031916604092831b600160401b600160e01b03161790555161061790816100988239f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6040608081526004908136101561001557600080fd5b600091823560e01c838163073989ff146102e8578163427c1cb6146102195750806361bc221a146101f557806369a98b2b146100de5763ec3c5a141461005a57600080fd5b8291346100da5761006a36610414565b88549397909593871c6001600160a01b03169392843b156100d657899687936100a7928a519b8c998a988997631dba685b60e01b89528801610510565b03925af19081156100cd57506100ba5750fd5b6100c390610382565b6100ca5780fd5b80fd5b513d84823e3d90fd5b8980fd5b5050fd5b5090346101cf57826100ef36610414565b8654989297949593949161010660078b900b6104a2565b67ffffffffffffffff199a8b1667ffffffffffffffff91821617808a55909a9990841c6001600160a01b0316803b156100d6578989899289838a6101608a8a8a8e519a8b998a988997631dba685b60e01b89528801610510565b03925af180156101eb57908a916101d7575b5050303b156101d357889661019894519889978897633b0f168560e21b89528801610585565b038183305af16101bb575b5054916101b28360070b6104a2565b16911617815580f35b6101c490610382565b6101cf5782386101a3565b8280fd5b8880fd5b6101e090610382565b6101d3578838610172565b85513d8c823e3d90fd5b5050346102155781600319360112610215576020915460070b9051908152f35b5080fd5b929050346100da5761022a36610414565b9060018060a09995949796991b038954881c16803b156100d6578989859288838961026c898f8f8b91519a8b998a988997631dba685b60e01b89528801610510565b03925af180156102de57908a916102ca575b5050303b156101d35788956102a5938851998a978897633b0f168560e21b89528801610585565b038183305af19081156100cd57506102ba5750f35b6102c390610382565b6100ca5780f35b6102d390610382565b6101d357883861027e565b88513d8c823e3d90fd5b808484346100da576102f936610414565b90889594969397929854986103108a60070b6104a2565b67ffffffffffffffff199a8b1667ffffffffffffffff9182161788559998303b1561037e576103509451988997889763213e0e5b60e11b89528801610585565b038183305af161036b575b508254916101b28360070b6104a2565b61037790939193610382565b918361035b565b8780fd5b67ffffffffffffffff811161039657604052565b634e487b7160e01b600052604160045260246000fd5b81601f8201121561040f5780359067ffffffffffffffff928383116103965760405193601f8401601f19908116603f0116850190811185821017610396576040528284526020838301011161040f57816000926020809301838601378301015290565b600080fd5b60c060031982011261040f576004356001600160a01b038116810361040f579167ffffffffffffffff60243581811161040f5783610454916004016103ac565b9260443582811161040f578161046c916004016103ac565b9260643583811161040f5782610484916004016103ac565b926084359260a43591821161040f5761049f916004016103ac565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b600052601160045260246000fd5b919082519283825260005b8481106104fc575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016104db565b969590610100946105536105749561054560019996610561958b8060a01b03168d5260208d61012091829101528d01906104d0565b908b820360408d01526104d0565b9089820360608b01526104d0565b91608088015286820360a08801526104d0565b938260c08201528260e08201520152565b926105c0906105b26105ce9461049f99979460018060a01b0316875260c0602088015260c08701906104d0565b9085820360408701526104d0565b9083820360608501526104d0565b92608082015260a08184039101526104d056fea264697066735822122034839481f88e1aff801b78902159f4d7ed1d3d669e8c0e715a2b7bb7448bcfc464736f6c63430008140033", - "deployedBytecode": "0x6040608081526004908136101561001557600080fd5b600091823560e01c838163073989ff146102e8578163427c1cb6146102195750806361bc221a146101f557806369a98b2b146100de5763ec3c5a141461005a57600080fd5b8291346100da5761006a36610414565b88549397909593871c6001600160a01b03169392843b156100d657899687936100a7928a519b8c998a988997631dba685b60e01b89528801610510565b03925af19081156100cd57506100ba5750fd5b6100c390610382565b6100ca5780fd5b80fd5b513d84823e3d90fd5b8980fd5b5050fd5b5090346101cf57826100ef36610414565b8654989297949593949161010660078b900b6104a2565b67ffffffffffffffff199a8b1667ffffffffffffffff91821617808a55909a9990841c6001600160a01b0316803b156100d6578989899289838a6101608a8a8a8e519a8b998a988997631dba685b60e01b89528801610510565b03925af180156101eb57908a916101d7575b5050303b156101d357889661019894519889978897633b0f168560e21b89528801610585565b038183305af16101bb575b5054916101b28360070b6104a2565b16911617815580f35b6101c490610382565b6101cf5782386101a3565b8280fd5b8880fd5b6101e090610382565b6101d3578838610172565b85513d8c823e3d90fd5b5050346102155781600319360112610215576020915460070b9051908152f35b5080fd5b929050346100da5761022a36610414565b9060018060a09995949796991b038954881c16803b156100d6578989859288838961026c898f8f8b91519a8b998a988997631dba685b60e01b89528801610510565b03925af180156102de57908a916102ca575b5050303b156101d35788956102a5938851998a978897633b0f168560e21b89528801610585565b038183305af19081156100cd57506102ba5750f35b6102c390610382565b6100ca5780f35b6102d390610382565b6101d357883861027e565b88513d8c823e3d90fd5b808484346100da576102f936610414565b90889594969397929854986103108a60070b6104a2565b67ffffffffffffffff199a8b1667ffffffffffffffff9182161788559998303b1561037e576103509451988997889763213e0e5b60e11b89528801610585565b038183305af161036b575b508254916101b28360070b6104a2565b61037790939193610382565b918361035b565b8780fd5b67ffffffffffffffff811161039657604052565b634e487b7160e01b600052604160045260246000fd5b81601f8201121561040f5780359067ffffffffffffffff928383116103965760405193601f8401601f19908116603f0116850190811185821017610396576040528284526020838301011161040f57816000926020809301838601378301015290565b600080fd5b60c060031982011261040f576004356001600160a01b038116810361040f579167ffffffffffffffff60243581811161040f5783610454916004016103ac565b9260443582811161040f578161046c916004016103ac565b9260643583811161040f5782610484916004016103ac565b926084359260a43591821161040f5761049f916004016103ac565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b600052601160045260246000fd5b919082519283825260005b8481106104fc575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016104db565b969590610100946105536105749561054560019996610561958b8060a01b03168d5260208d61012091829101528d01906104d0565b908b820360408d01526104d0565b9089820360608b01526104d0565b91608088015286820360a08801526104d0565b938260c08201528260e08201520152565b926105c0906105b26105ce9461049f99979460018060a01b0316875260c0602088015260c08701906104d0565b9085820360408701526104d0565b9083820360608501526104d0565b92608082015260a08184039101526104d056fea264697066735822122034839481f88e1aff801b78902159f4d7ed1d3d669e8c0e715a2b7bb7448bcfc464736f6c63430008140033", + "bytecode": "0x6080601f61068a38819003918201601f19168301916001600160401b03831184841017607c57808492602094604052833981010312607857516001600160a01b03811681036078575f8054600160401b600160e01b031916604092831b600160401b600160e01b0316179055516105f990816100918239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f5f3560e01c8063073989ff146102e2578063427c1cb61461021757806361bc221a146101f757806369a98b2b146100d25763ec3c5a1414610051575f80fd5b346100c05780610060366103ff565b86549295919460409390931c6001600160a01b03169291833b156100ce576100a38896928793604051998a9889978896631dba685b60e01b88526004880161054e565b03925af180156100c3576100b45750fd5b816100be91610375565b505b80fd5b6040513d84823e3d90fd5b8780fd5b50346100c057806100e2366103ff565b86959291949395546100f68160070b6104a2565b67ffffffffffffffff199091166001600160401b03919091161780885560401c6001600160a01b0316803b156100ce578787849287838861014f888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916101d7575b5050303b156101d357869461018b926040519788968796633b0f168560e21b8852600488016104f2565b038183305af16101be575b50546101a48160070b6104a2565b6001600160401b0316906001600160401b03191617815580f35b816101c891610375565b6100c057805f610196565b8680fd5b816101e191610375565b6101d357865f610161565b6040513d8a823e3d90fd5b50346100c057806003193601126100c0576020905460070b604051908152f35b50346100c05780610227366103ff565b8654939591949391929160401c6001600160a01b0316803b156100ce578787849287838861026d888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916102cd575b5050303b156101d35786946102a9926040519788968796633b0f168560e21b8852600488016104f2565b038183305af180156100c3576102bc5750f35b816102c691610375565b6100c05780f35b816102d791610375565b6101d357865f61027f565b5034610371576102f1366103ff565b5f959291949395546103058160070b6104a2565b6001600160401b0316906001600160401b031916175f55303b15610371575f9461034492604051978896879663213e0e5b60e11b8852600488016104f2565b038183305af161035e575b5080546101a48160070b6104a2565b61036a91505f90610375565b5f5f61034f565b5f80fd5b90601f801991011681019081106001600160401b0382111761039657604052565b634e487b7160e01b5f52604160045260245ffd5b81601f82011215610371578035906001600160401b03821161039657604051926103de601f8401601f191660200185610375565b8284526020838301011161037157815f926020809301838601378301015290565b9060c0600319830112610371576004356001600160a01b038116810361037157916024356001600160401b038111610371578161043e916004016103aa565b916044356001600160401b038111610371578261045d916004016103aa565b916064356001600160401b038111610371578161047c916004016103aa565b916084359160a435906001600160401b0382116103715761049f916004016103aa565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b5f52601160045260245ffd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9261052d9061051f61053b9461049f99979460018060a01b0316875260c0602088015260c08701906104ce565b9085820360408701526104ce565b9083820360608501526104ce565b92608082015260a08184039101526104ce565b969590610100946105916105b2956105836001999661012060208e61059f988e8060a01b0316815201526101208d01906104ce565b908b820360408d01526104ce565b9089820360608b01526104ce565b91608088015286820360a08801526104ce565b938260c08201528260e0820152015256fea2646970667358221220f25522701efc45eccede682dcc5d966317dfd3ff193d7afce1a617d165fc821764736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f5f3560e01c8063073989ff146102e2578063427c1cb61461021757806361bc221a146101f757806369a98b2b146100d25763ec3c5a1414610051575f80fd5b346100c05780610060366103ff565b86549295919460409390931c6001600160a01b03169291833b156100ce576100a38896928793604051998a9889978896631dba685b60e01b88526004880161054e565b03925af180156100c3576100b45750fd5b816100be91610375565b505b80fd5b6040513d84823e3d90fd5b8780fd5b50346100c057806100e2366103ff565b86959291949395546100f68160070b6104a2565b67ffffffffffffffff199091166001600160401b03919091161780885560401c6001600160a01b0316803b156100ce578787849287838861014f888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916101d7575b5050303b156101d357869461018b926040519788968796633b0f168560e21b8852600488016104f2565b038183305af16101be575b50546101a48160070b6104a2565b6001600160401b0316906001600160401b03191617815580f35b816101c891610375565b6100c057805f610196565b8680fd5b816101e191610375565b6101d357865f610161565b6040513d8a823e3d90fd5b50346100c057806003193601126100c0576020905460070b604051908152f35b50346100c05780610227366103ff565b8654939591949391929160401c6001600160a01b0316803b156100ce578787849287838861026d888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916102cd575b5050303b156101d35786946102a9926040519788968796633b0f168560e21b8852600488016104f2565b038183305af180156100c3576102bc5750f35b816102c691610375565b6100c05780f35b816102d791610375565b6101d357865f61027f565b5034610371576102f1366103ff565b5f959291949395546103058160070b6104a2565b6001600160401b0316906001600160401b031916175f55303b15610371575f9461034492604051978896879663213e0e5b60e11b8852600488016104f2565b038183305af161035e575b5080546101a48160070b6104a2565b61036a91505f90610375565b5f5f61034f565b5f80fd5b90601f801991011681019081106001600160401b0382111761039657604052565b634e487b7160e01b5f52604160045260245ffd5b81601f82011215610371578035906001600160401b03821161039657604051926103de601f8401601f191660200185610375565b8284526020838301011161037157815f926020809301838601378301015290565b9060c0600319830112610371576004356001600160a01b038116810361037157916024356001600160401b038111610371578161043e916004016103aa565b916044356001600160401b038111610371578261045d916004016103aa565b916064356001600160401b038111610371578161047c916004016103aa565b916084359160a435906001600160401b0382116103715761049f916004016103aa565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b5f52601160045260245ffd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9261052d9061051f61053b9461049f99979460018060a01b0316875260c0602088015260c08701906104ce565b9085820360408701526104ce565b9083820360608501526104ce565b92608082015260a08184039101526104ce565b969590610100946105916105b2956105836001999661012060208e61059f988e8060a01b0316815201526101208d01906104ce565b908b820360408d01526104ce565b9089820360608b01526104ce565b91608088015286820360a08801526104ce565b938260c08201528260e0820152015256fea2646970667358221220f25522701efc45eccede682dcc5d966317dfd3ff193d7afce1a617d165fc821764736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/InterchainSenderCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/Reverter.json b/precompiles/testutil/contracts/Reverter.json index c4fb52113..a31fb5abf 100644 --- a/precompiles/testutil/contracts/Reverter.json +++ b/precompiles/testutil/contracts/Reverter.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "Reverter", "sourceName": "solidity/precompiles/testutil/contracts/Reverter.sol", "abi": [ @@ -38,8 +38,11 @@ "type": "receive" } ], - "bytecode": "0x6080806040526000805561064b90816100168239f3fe6080604090808252600480361015610022575b505050361561002057600080fd5b005b600091823560e01c90816379388e94146101c3575063c04062260361001257346101bf57816003193601126101bf5761005b8254610383565b80835547303b156101bb57845191631e4e23a560e21b8352838301526024820152828160448183305af190816101a8575b506101a05781549260a881516100a560208301826103d1565b818152602081019161056e83396100da6020845180936100cd83830196879251928391610409565b81010380845201826103d1565b51902091815192602084019560ff60f81b87523060601b6021860152603585015260558401526055835260808301928084106001600160401b0385111761018b5783835251909420929384936001600160a01b0316803b1561018757849184838193633ccfd60b60e01b83525af190811561017e5750610167575b50505b6101628154610383565b815580f35b610170906103a8565b61017b578038610155565b80fd5b513d84823e3d90fd5b8480fd5b604182634e487b7160e01b6000525260246000fd5b509050610158565b6101b4909391936103a8565b913861008c565b8380fd5b5080fd5b92939050346101bb57806003193601126101bb5760a8908184016001600160401b0392858210848311176103705761056e86396024948085359203908635f515610367578051630a97c34560e31b8152308482015293858582816108015afa801561035d57610230578580fd5b3d8087873e61023f81876103d1565b85019382868603126103595785518481116103555786019185601f840112156103555782519161026e836103f2565b9461027b815196876103d1565b8386526020808097019460051b8601019488861161035157868101945b8686106102c457505050505050508301519081116101bb576102ba9201610485565b5038808080808580fd5b855189811161034d5782019083601f19838d03011261034d578351908482018281108c82111761033b578552898301518b8111610337578c8b6103099286010161042c565b825284830151918b8311610337576103288d8c80969581960101610485565b83820152815201950194610298565b8e80fd5b634e487b7160e01b8f5260418752878ffd5b8c80fd5b8a80fd5b8780fd5b8680fd5b82513d88823e3d90fd5b513d85823e3d90fd5b634e487b7160e01b875260418552602487fd5b60001981146103925760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160401b0381116103bb57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b038211176103bb57604052565b6001600160401b0381116103bb5760051b60200190565b60005b83811061041c5750506000910152565b818101518382015260200161040c565b81601f820112156104805780516001600160401b0381116103bb576040519261045f601f8301601f1916602001856103d1565b818452602082840101116104805761047d9160208085019101610409565b90565b600080fd5b9080601f830112156104805781519161049d836103f2565b926040906104ad825195866103d1565b808552602093848087019260051b8501019381851161048057858101925b8584106104dc575050505050505090565b8351906001600160401b039182811161048057830160609081601f19828803011261048057875193828501858110828211176105585789528a82015190811161048057868b61052d9284010161042c565b8452878101518a85015201519060ff82168203610480578289939288859401528152019301926104cb565b60246000634e487b7160e01b81526041600452fdfe608080604052609790816100118239f3fe60806040526004361015601157600080fd5b6000803560e01c633ccfd60b14602657600080fd5b34605e5780600319360112605e5780808080478181156056575b3390f115604a5780f35b604051903d90823e3d90fd5b506108fc6040565b80fdfea2646970667358221220a84d47d16d94667ccf1fa2c5806581649184eaca8c39fac14a893453228a441064736f6c63430008140033a2646970667358221220752c4206a3f71a423553a97c473d9ee307c1e6c5b9df4acdbe3bbcc8736c257664736f6c63430008140033", - "deployedBytecode": "0x6080604090808252600480361015610022575b505050361561002057600080fd5b005b600091823560e01c90816379388e94146101c3575063c04062260361001257346101bf57816003193601126101bf5761005b8254610383565b80835547303b156101bb57845191631e4e23a560e21b8352838301526024820152828160448183305af190816101a8575b506101a05781549260a881516100a560208301826103d1565b818152602081019161056e83396100da6020845180936100cd83830196879251928391610409565b81010380845201826103d1565b51902091815192602084019560ff60f81b87523060601b6021860152603585015260558401526055835260808301928084106001600160401b0385111761018b5783835251909420929384936001600160a01b0316803b1561018757849184838193633ccfd60b60e01b83525af190811561017e5750610167575b50505b6101628154610383565b815580f35b610170906103a8565b61017b578038610155565b80fd5b513d84823e3d90fd5b8480fd5b604182634e487b7160e01b6000525260246000fd5b509050610158565b6101b4909391936103a8565b913861008c565b8380fd5b5080fd5b92939050346101bb57806003193601126101bb5760a8908184016001600160401b0392858210848311176103705761056e86396024948085359203908635f515610367578051630a97c34560e31b8152308482015293858582816108015afa801561035d57610230578580fd5b3d8087873e61023f81876103d1565b85019382868603126103595785518481116103555786019185601f840112156103555782519161026e836103f2565b9461027b815196876103d1565b8386526020808097019460051b8601019488861161035157868101945b8686106102c457505050505050508301519081116101bb576102ba9201610485565b5038808080808580fd5b855189811161034d5782019083601f19838d03011261034d578351908482018281108c82111761033b578552898301518b8111610337578c8b6103099286010161042c565b825284830151918b8311610337576103288d8c80969581960101610485565b83820152815201950194610298565b8e80fd5b634e487b7160e01b8f5260418752878ffd5b8c80fd5b8a80fd5b8780fd5b8680fd5b82513d88823e3d90fd5b513d85823e3d90fd5b634e487b7160e01b875260418552602487fd5b60001981146103925760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160401b0381116103bb57604052565b634e487b7160e01b600052604160045260246000fd5b90601f801991011681019081106001600160401b038211176103bb57604052565b6001600160401b0381116103bb5760051b60200190565b60005b83811061041c5750506000910152565b818101518382015260200161040c565b81601f820112156104805780516001600160401b0381116103bb576040519261045f601f8301601f1916602001856103d1565b818452602082840101116104805761047d9160208085019101610409565b90565b600080fd5b9080601f830112156104805781519161049d836103f2565b926040906104ad825195866103d1565b808552602093848087019260051b8501019381851161048057858101925b8584106104dc575050505050505090565b8351906001600160401b039182811161048057830160609081601f19828803011261048057875193828501858110828211176105585789528a82015190811161048057868b61052d9284010161042c565b8452878101518a85015201519060ff82168203610480578289939288859401528152019301926104cb565b60246000634e487b7160e01b81526041600452fdfe608080604052609790816100118239f3fe60806040526004361015601157600080fd5b6000803560e01c633ccfd60b14602657600080fd5b34605e5780600319360112605e5780808080478181156056575b3390f115604a5780f35b604051903d90823e3d90fd5b506108fc6040565b80fdfea2646970667358221220a84d47d16d94667ccf1fa2c5806581649184eaca8c39fac14a893453228a441064736f6c63430008140033a2646970667358221220752c4206a3f71a423553a97c473d9ee307c1e6c5b9df4acdbe3bbcc8736c257664736f6c63430008140033", + "bytecode": "0x6080806040525f80556105ba90816100158239f3fe608080604052600436101561001c575b50361561001a575f80fd5b005b5f905f3560e01c90816379388e941461019b575063c04062260361000f5734610197575f366003190112610197576100545f546104c0565b805f5547303b156101975760405191631e4e23a560e21b8352600483015260248201525f8160448183305af19081610182575b5061017d5780805460a2604051906100a2602082018361034f565b80825260208201906104e382396100d86020604051809382820195518091875e810187838201520301601f19810183528261034f565b5190209060405191602083019160ff60f81b83523060601b6021850152603584015260558301526055825261010e60758361034f565b905190206001600160a01b0316803b1561017a57818091600460405180948193633ccfd60b60e01b83525af1801561016f57610157575b50505b61015281546104c0565b815580f35b816101619161034f565b61016c57805f610145565b80fd5b6040513d84823e3d90fd5b50fd5b610148565b61018f9192505f9061034f565b5f905f610087565b5f80fd5b346101975760403660031901126101975760a290818101918183106001600160401b03841117610330576104e3823980600435920390602435f51561034457604051630a97c34560e31b81523060048201525f816024816108015afa801561034457610205575f80fd5b3d805f833e610214818361034f565b81016040828203126101975781516001600160401b03811161019757820181601f8201121561019757805160208061024b83610370565b610258604051918261034f565b838152019160051b830101918383116101975760208101915b838310610299575050505060208201516001600160401b0381116101975761019792016103dc565b82516001600160401b038111610197578201906040828703601f1901126101975760405190604082018281106001600160401b038211176103305760405260208301516001600160401b038111610197578760206102f992860101610387565b82526040830151916001600160401b03831161019757610321886020809695819601016103dc565b83820152815201920191610271565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b90601f801991011681019081106001600160401b0382111761033057604052565b6001600160401b0381116103305760051b60200190565b81601f82011215610197578051906001600160401b03821161033057604051926103bb601f8401601f19166020018561034f565b8284526020838301011161019757815f9260208093018386015e8301015290565b9080601f83011215610197578151916103f483610370565b92610402604051948561034f565b80845260208085019160051b830101918383116101975760208101915b83831061042e57505050505090565b82516001600160401b038111610197578201906060828703601f1901126101975760405191606083018381106001600160401b03821117610330576040526020810151906001600160401b03821161019757610491886020606094840101610387565b84526040810151602085015201519060ff8216820361019757826020939260408594015281520192019161041f565b5f1981146104ce5760010190565b634e487b7160e01b5f52601160045260245ffdfe6080806040526092908160108239f3fe608060405260043610156010575f80fd5b5f3560e01c633ccfd60b146022575f80fd5b346058575f3660031901126058575f808080478181156050575b3390f115604557005b6040513d5f823e3d90fd5b506108fc603c565b5f80fdfea2646970667358221220d719ea0b8c72031e0f33affc01dd68e7e971c7613ba03975f1b74b85671a0b1a64736f6c634300081c0033a2646970667358221220cd9606b84bdeea1ae18a13a27fe9168cbad090580822174a6e8a219519fd59cb64736f6c634300081c0033", + "deployedBytecode": "0x608080604052600436101561001c575b50361561001a575f80fd5b005b5f905f3560e01c90816379388e941461019b575063c04062260361000f5734610197575f366003190112610197576100545f546104c0565b805f5547303b156101975760405191631e4e23a560e21b8352600483015260248201525f8160448183305af19081610182575b5061017d5780805460a2604051906100a2602082018361034f565b80825260208201906104e382396100d86020604051809382820195518091875e810187838201520301601f19810183528261034f565b5190209060405191602083019160ff60f81b83523060601b6021850152603584015260558301526055825261010e60758361034f565b905190206001600160a01b0316803b1561017a57818091600460405180948193633ccfd60b60e01b83525af1801561016f57610157575b50505b61015281546104c0565b815580f35b816101619161034f565b61016c57805f610145565b80fd5b6040513d84823e3d90fd5b50fd5b610148565b61018f9192505f9061034f565b5f905f610087565b5f80fd5b346101975760403660031901126101975760a290818101918183106001600160401b03841117610330576104e3823980600435920390602435f51561034457604051630a97c34560e31b81523060048201525f816024816108015afa801561034457610205575f80fd5b3d805f833e610214818361034f565b81016040828203126101975781516001600160401b03811161019757820181601f8201121561019757805160208061024b83610370565b610258604051918261034f565b838152019160051b830101918383116101975760208101915b838310610299575050505060208201516001600160401b0381116101975761019792016103dc565b82516001600160401b038111610197578201906040828703601f1901126101975760405190604082018281106001600160401b038211176103305760405260208301516001600160401b038111610197578760206102f992860101610387565b82526040830151916001600160401b03831161019757610321886020809695819601016103dc565b83820152815201920191610271565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b90601f801991011681019081106001600160401b0382111761033057604052565b6001600160401b0381116103305760051b60200190565b81601f82011215610197578051906001600160401b03821161033057604051926103bb601f8401601f19166020018561034f565b8284526020838301011161019757815f9260208093018386015e8301015290565b9080601f83011215610197578151916103f483610370565b92610402604051948561034f565b80845260208085019160051b830101918383116101975760208101915b83831061042e57505050505090565b82516001600160401b038111610197578201906060828703601f1901126101975760405191606083018381106001600160401b03821117610330576040526020810151906001600160401b03821161019757610491886020606094840101610387565b84526040810151602085015201519060ff8216820361019757826020939260408594015281520192019161041f565b5f1981146104ce5760010190565b634e487b7160e01b5f52601160045260245ffdfe6080806040526092908160108239f3fe608060405260043610156010575f80fd5b5f3560e01c633ccfd60b146022575f80fd5b346058575f3660031901126058575f808080478181156050575b3390f115604557005b6040513d5f823e3d90fd5b506108fc603c565b5f80fdfea2646970667358221220d719ea0b8c72031e0f33affc01dd68e7e971c7613ba03975f1b74b85671a0b1a64736f6c634300081c0033a2646970667358221220cd9606b84bdeea1ae18a13a27fe9168cbad090580822174a6e8a219519fd59cb64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/Reverter.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/testutil/contracts/StakingReverter.json b/precompiles/testutil/contracts/StakingReverter.json index ff68dce37..79340ad3d 100644 --- a/precompiles/testutil/contracts/StakingReverter.json +++ b/precompiles/testutil/contracts/StakingReverter.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "StakingReverter", "sourceName": "solidity/precompiles/testutil/contracts/StakingReverter.sol", "abi": [ @@ -243,8 +243,11 @@ "type": "function" } ], - "bytecode": "0x60808060405260008055610db890816100168239f3fe608080604052600436101561001357600080fd5b60003560e01c9081634d9db92b14610938575080634e5a8fe5146108c757806352fce7b11461083f578063668f452b14610714578063922a4b671461059c578063cbc367d41461012b5763f66013d71461006c57600080fd5b34610112576020366003190112610112576004356001600160401b0381116101125760206100a16100ca923690600401610b89565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610cf2565b600a6044830152038160006108005af1801561011f576100e957600080fd5b6020813d8211610117575b8161010160209383610cd1565b810103126101125761011290610d13565b600080fd5b3d91506100f4565b6040513d6000823e3d90fd5b34610112576040366003190112610112576024356001600160a01b03811681036101125760405161015b81610c9a565b6060815260606020820152600060408201526000606082015260006080820152600060a082015260405161018e81610cb6565b6060815260606020820152606060408201526060808201526060608082015260c0820152600060e0820152600061010082015260006101208201526000610140820152906000905b60043582106103185782604051906020825261021961020382516101606020860152610180850190610c0c565b6020830151848203601f19016040860152610c0c565b906040810151151560608401526060810151916004831015610302576102ce6101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102bd6102ab610299610287865160a0875260a0870190610c0c565b60208701518682036020880152610c0c565b60408601518582036040870152610c0c565b60608501518482036060860152610c0c565b920151906080818403910152610c0c565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b600052602160045260246000fd5b60405163111d9dbd60e11b81526001600160a01b0382166004820152919250906000816024816108005afa801561011f57600090610362575b61035c915092610c31565b906101d6565b503d806000833e6103738183610cd1565b6020828281010312610112578151906001600160401b03821161011257610160828401828501031261011257604051916103ac83610c9a565b808401516001600160401b038111610112576103cf908386019083870101610d20565b8352602081850101516001600160401b038111610112576103f7908386019083870101610d20565b602084015261040a604082860101610d13565b60408401526060818501015160048110156101125760608401528381016080818101519085015260a0808201519085015260c00151936001600160401b0385116101125760a0858383010184830103126101125760405161046a81610cb6565b8583830101516001600160401b038111610112576104919085840190888686010101610d20565b81526020868484010101516001600160401b038111610112576104bd9085840190888686010101610d20565b60208201526040868484010101516001600160401b038111610112576104ec9085840190888686010101610d20565b60408201526060868484010101516001600160401b0381116101125761051b9085840190888686010101610d20565b6060820152608086848401010151936001600160401b0385116101125761035c9661014095610551928501918686010101610d20565b608082015260c085015261056960e083830101610d74565b60e085015261057d61010083830101610d74565b6101008501520161012081810151908401520151610140820152610351565b34610112576105aa36610bb6565b91604051916353266bbb60e01b8084523060048501526024916060838601526105d7606486018783610cf2565b93600a604487015260209586818061080098038160008a5af1801561011f576106e0575b5091859391949260005b81811061067c57505060009061063760609596604051998a978896879586523060048701528501526064840191610cf2565b600a604483015203925af1801561011f5761064e57005b81813d8311610675575b6106628183610cd1565b810103126101125761067390610d13565b005b503d610658565b90919395929450303b156101125760405163f66013d760e01b8152600481018890526106c59190600081806106b48a82018e8a610cf2565b038183305af16106d1575b50610c31565b90869492959391610605565b6106da90610c56565b896106bf565b8681813d831161070d575b6106f58183610cd1565b810103126101125761070690610d13565b50876105fb565b503d6106eb565b3461011257602080600319360112610112576004356001600160401b0380821161011257600061074b610788933690600401610b89565b828660405161075981610c7f565b606081520152604051948592839263120bba7360e11b8452306004850152604060248501526044840191610cf2565b03816108005afa90811561011f576000926000926107d2575b505060405192839283526040818401526107c682516040808601526080850190610c0c565b91015160608301520390f35b915091503d806000833e6107e68183610cd1565b81016040828203126101125781519184810151908482116101125701604081830312610112576040519361081985610c7f565b815190811161011257859261082f918301610d20565b84520151838301529083806107a1565b346101125761084d36610bb6565b61085b600093929354610c31565b60005560005b82811061086a57005b303b156101125760405163f66013d760e01b815260206004820152906000828061089860248201878a610cf2565b038183305af191821561011f576108b3926108b85750610c31565b610861565b6108c190610c56565b856106bf565b34610112576108d536610bb6565b91906108e2600054610c31565b60005560005b8281106108f157005b303b156101125760405163f66013d760e01b815260206004820152610933919060008180610923602482018a89610cf2565b038183305af16108b85750610c31565b6108e8565b34610112576060366003190112610112576044356001600160401b03811161011257610968903690600401610b89565b6353266bbb60e01b8352306004840152606060248401529160208180610992606482018787610cf2565b600a6044830152038160006108005af1801561011f57610b50575b5060005b6004358110610a23576040516353266bbb60e01b815230600482015260606024820152602081806109e6606482018888610cf2565b600a6044830152038160006108005af1801561011f57610a0257005b6020813d602011610a1b575b8161066260209383610cd1565b3d9150610a0e565b90303b156101125760405163f66013d760e01b81526020600482015260008180610a51602482018887610cf2565b038183305af19081610b41575b50610b37576040516353266bbb60e01b81523060048201526060602482015260208180610a8f606482018887610cf2565b600a6044830152038160006108005af1801561011f57610afe575b5060005b6024358110610ac7575090610ac290610c31565b6109b1565b303b156101125760405163f66013d760e01b815260206004820152610af9919060008180610923602482018a89610cf2565b610aae565b6020813d602011610b2f575b81610b1760209383610cd1565b8101031261011257610b2890610d13565b5083610aaa565b3d9150610b0a565b90610ac290610c31565b610b4a90610c56565b84610a5e565b6020813d602011610b81575b81610b6960209383610cd1565b8101031261011257610b7a90610d13565b50826109ad565b3d9150610b5c565b9181601f84011215610112578235916001600160401b038311610112576020838186019501011161011257565b9060406003198301126101125760043591602435906001600160401b03821161011257610be591600401610b89565b9091565b60005b838110610bfc5750506000910152565b8181015183820152602001610bec565b90602091610c2581518092818552858086019101610be9565b601f01601f1916010190565b6000198114610c405760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038111610c6957604052565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b03821117610c6957604052565b61016081019081106001600160401b03821117610c6957604052565b60a081019081106001600160401b03821117610c6957604052565b90601f801991011681019081106001600160401b03821117610c6957604052565b908060209392818452848401376000828201840152601f01601f1916010190565b5190811515820361011257565b81601f820112156101125780516001600160401b038111610c695760405192610d53601f8301601f191660200185610cd1565b8184526020828401011161011257610d719160208085019101610be9565b90565b51908160070b82036101125756fea26469706673582212204b99277ce78a90870d2a3dd8b1cfe0c936d27451384c2c734af37693a846925564736f6c63430008140033", - "deployedBytecode": "0x608080604052600436101561001357600080fd5b60003560e01c9081634d9db92b14610938575080634e5a8fe5146108c757806352fce7b11461083f578063668f452b14610714578063922a4b671461059c578063cbc367d41461012b5763f66013d71461006c57600080fd5b34610112576020366003190112610112576004356001600160401b0381116101125760206100a16100ca923690600401610b89565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610cf2565b600a6044830152038160006108005af1801561011f576100e957600080fd5b6020813d8211610117575b8161010160209383610cd1565b810103126101125761011290610d13565b600080fd5b3d91506100f4565b6040513d6000823e3d90fd5b34610112576040366003190112610112576024356001600160a01b03811681036101125760405161015b81610c9a565b6060815260606020820152600060408201526000606082015260006080820152600060a082015260405161018e81610cb6565b6060815260606020820152606060408201526060808201526060608082015260c0820152600060e0820152600061010082015260006101208201526000610140820152906000905b60043582106103185782604051906020825261021961020382516101606020860152610180850190610c0c565b6020830151848203601f19016040860152610c0c565b906040810151151560608401526060810151916004831015610302576102ce6101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102bd6102ab610299610287865160a0875260a0870190610c0c565b60208701518682036020880152610c0c565b60408601518582036040870152610c0c565b60608501518482036060860152610c0c565b920151906080818403910152610c0c565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b600052602160045260246000fd5b60405163111d9dbd60e11b81526001600160a01b0382166004820152919250906000816024816108005afa801561011f57600090610362575b61035c915092610c31565b906101d6565b503d806000833e6103738183610cd1565b6020828281010312610112578151906001600160401b03821161011257610160828401828501031261011257604051916103ac83610c9a565b808401516001600160401b038111610112576103cf908386019083870101610d20565b8352602081850101516001600160401b038111610112576103f7908386019083870101610d20565b602084015261040a604082860101610d13565b60408401526060818501015160048110156101125760608401528381016080818101519085015260a0808201519085015260c00151936001600160401b0385116101125760a0858383010184830103126101125760405161046a81610cb6565b8583830101516001600160401b038111610112576104919085840190888686010101610d20565b81526020868484010101516001600160401b038111610112576104bd9085840190888686010101610d20565b60208201526040868484010101516001600160401b038111610112576104ec9085840190888686010101610d20565b60408201526060868484010101516001600160401b0381116101125761051b9085840190888686010101610d20565b6060820152608086848401010151936001600160401b0385116101125761035c9661014095610551928501918686010101610d20565b608082015260c085015261056960e083830101610d74565b60e085015261057d61010083830101610d74565b6101008501520161012081810151908401520151610140820152610351565b34610112576105aa36610bb6565b91604051916353266bbb60e01b8084523060048501526024916060838601526105d7606486018783610cf2565b93600a604487015260209586818061080098038160008a5af1801561011f576106e0575b5091859391949260005b81811061067c57505060009061063760609596604051998a978896879586523060048701528501526064840191610cf2565b600a604483015203925af1801561011f5761064e57005b81813d8311610675575b6106628183610cd1565b810103126101125761067390610d13565b005b503d610658565b90919395929450303b156101125760405163f66013d760e01b8152600481018890526106c59190600081806106b48a82018e8a610cf2565b038183305af16106d1575b50610c31565b90869492959391610605565b6106da90610c56565b896106bf565b8681813d831161070d575b6106f58183610cd1565b810103126101125761070690610d13565b50876105fb565b503d6106eb565b3461011257602080600319360112610112576004356001600160401b0380821161011257600061074b610788933690600401610b89565b828660405161075981610c7f565b606081520152604051948592839263120bba7360e11b8452306004850152604060248501526044840191610cf2565b03816108005afa90811561011f576000926000926107d2575b505060405192839283526040818401526107c682516040808601526080850190610c0c565b91015160608301520390f35b915091503d806000833e6107e68183610cd1565b81016040828203126101125781519184810151908482116101125701604081830312610112576040519361081985610c7f565b815190811161011257859261082f918301610d20565b84520151838301529083806107a1565b346101125761084d36610bb6565b61085b600093929354610c31565b60005560005b82811061086a57005b303b156101125760405163f66013d760e01b815260206004820152906000828061089860248201878a610cf2565b038183305af191821561011f576108b3926108b85750610c31565b610861565b6108c190610c56565b856106bf565b34610112576108d536610bb6565b91906108e2600054610c31565b60005560005b8281106108f157005b303b156101125760405163f66013d760e01b815260206004820152610933919060008180610923602482018a89610cf2565b038183305af16108b85750610c31565b6108e8565b34610112576060366003190112610112576044356001600160401b03811161011257610968903690600401610b89565b6353266bbb60e01b8352306004840152606060248401529160208180610992606482018787610cf2565b600a6044830152038160006108005af1801561011f57610b50575b5060005b6004358110610a23576040516353266bbb60e01b815230600482015260606024820152602081806109e6606482018888610cf2565b600a6044830152038160006108005af1801561011f57610a0257005b6020813d602011610a1b575b8161066260209383610cd1565b3d9150610a0e565b90303b156101125760405163f66013d760e01b81526020600482015260008180610a51602482018887610cf2565b038183305af19081610b41575b50610b37576040516353266bbb60e01b81523060048201526060602482015260208180610a8f606482018887610cf2565b600a6044830152038160006108005af1801561011f57610afe575b5060005b6024358110610ac7575090610ac290610c31565b6109b1565b303b156101125760405163f66013d760e01b815260206004820152610af9919060008180610923602482018a89610cf2565b610aae565b6020813d602011610b2f575b81610b1760209383610cd1565b8101031261011257610b2890610d13565b5083610aaa565b3d9150610b0a565b90610ac290610c31565b610b4a90610c56565b84610a5e565b6020813d602011610b81575b81610b6960209383610cd1565b8101031261011257610b7a90610d13565b50826109ad565b3d9150610b5c565b9181601f84011215610112578235916001600160401b038311610112576020838186019501011161011257565b9060406003198301126101125760043591602435906001600160401b03821161011257610be591600401610b89565b9091565b60005b838110610bfc5750506000910152565b8181015183820152602001610bec565b90602091610c2581518092818552858086019101610be9565b601f01601f1916010190565b6000198114610c405760010190565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038111610c6957604052565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b03821117610c6957604052565b61016081019081106001600160401b03821117610c6957604052565b60a081019081106001600160401b03821117610c6957604052565b90601f801991011681019081106001600160401b03821117610c6957604052565b908060209392818452848401376000828201840152601f01601f1916010190565b5190811515820361011257565b81601f820112156101125780516001600160401b038111610c695760405192610d53601f8301601f191660200185610cd1565b8184526020828401011161011257610d719160208085019101610be9565b90565b51908160070b82036101125756fea26469706673582212204b99277ce78a90870d2a3dd8b1cfe0c936d27451384c2c734af37693a846925564736f6c63430008140033", + "bytecode": "0x6080806040525f8055610cd490816100158239f3fe6080806040526004361015610012575f80fd5b5f3560e01c9081634d9db92b146108be575080634e5a8fe51461084557806352fce7b1146107c4578063668f452b1461068c578063922a4b6714610529578063cbc367d4146101255763f66013d714610069575f80fd5b3461010e57602036600319011261010e576004356001600160401b03811161010e57602061009e6100c7923690600401610ae1565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610bf9565b600a604483015203815f6108005af1801561011a576100e4575f80fd5b6020813d602011610112575b816100fd60209383610bcb565b8101031261010e5761010e90610bec565b5f80fd5b3d91506100f0565b6040513d5f823e3d90fd5b3461010e57604036600319011261010e576004356024356001600160a01b0381169081900361010e579060405161015b81610b94565b60608152606060208201525f60408201525f60608201525f60808201525f60a082015260405161018a81610bb0565b6060815260606020820152606060408201526060808201526060608082015260c08201525f60e08201525f6101008201525f6101208201525f610140820152915f915b80831061030b5783604051906020825261020e6101f882516101606020860152610180850190610b41565b6020830151848203601f19016040860152610b41565b9060408101511515606084015260608101519160048310156102f7576102c36101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102b26102a061028e61027c865160a0875260a0870190610b41565b60208701518682036020880152610b41565b60408601518582036040870152610b41565b60608501518482036060860152610b41565b920151906080818403910152610b41565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b5f52602160045260245ffd5b9091925060405163111d9dbd60e11b81528260048201525f816024816108005afa801561011a575f90610346575b60019150930191906101cd565b503d805f833e6103568183610bcb565b81019060208183031261010e578051906001600160401b03821161010e57016101608183031261010e576040519061038d82610b94565b80516001600160401b03811161010e57836103a9918301610c3b565b825260208101516001600160401b03811161010e57836103ca918301610c3b565b60208301526103db60408201610bec565b60408301526060810151600481101561010e5760608301526080810151608083015260a081015160a083015260c08101516001600160401b03811161010e5781019060a08285031261010e5760405161043381610bb0565b82516001600160401b03811161010e578561044f918501610c3b565b815260208301516001600160401b03811161010e5785610470918501610c3b565b602082015260408301516001600160401b03811161010e5785610494918501610c3b565b604082015260608301516001600160401b03811161010e57856104b8918501610c3b565b60608201526080830151926001600160401b03841161010e57600195610140946104e29201610c3b565b608082015260c08401526104f860e08201610c90565b60e084015261050a6101008201610c90565b6101008401526101208101516101208401520151610140820152610339565b3461010e5761053736610b0e565b916040516353266bbb60e01b81523060048201526060602482015260208180610564606482018888610bf9565b600a604483015203815f6108005af1801561011a57610655575b505f5b818110610603576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018989610bf9565b600a604483015203815f6108005af1801561011a576105cf57005b6020813d6020116105fb575b816105e860209383610bcb565b8101031261010e576105f990610bec565b005b3d91506105db565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610633602482018a8a610bf9565b038183305af1610645575b5001610581565b5f61064f91610bcb565b8561063e565b6020813d602011610684575b8161066e60209383610bcb565b8101031261010e5761067f90610bec565b61057e565b3d9150610661565b3461010e57602036600319011261010e576004356001600160401b03811161010e575f6106c06106fe923690600401610ae1565b8260206040516106cf81610b65565b606081520152604051938492839263120bba7360e11b8452306004850152604060248501526044840191610bf9565b03816108005afa90811561011a575f905f92610748575b50604051918291825260406020830152602061073c82516040808601526080850190610b41565b91015160608301520390f35b9150503d805f833e61075a8183610bcb565b81019060408183031261010e578051906020810151906001600160401b03821161010e57019160408382031261010e576040519261079784610b65565b80516001600160401b03811161010e576020926107b5918301610c3b565b84520151602083015282610715565b3461010e576107d236610b0e565b6107df5f93929354610c19565b5f555f5b8281106107ec57005b303b1561010e5760405163f66013d760e01b815260206004820152905f828061081960248201878a610bf9565b038183305af191821561011a57600192610835575b50016107e3565b5f61083f91610bcb565b8561082e565b3461010e5761085336610b0e565b919061085f5f54610c19565b5f555f5b82811061086c57005b303b1561010e5760405163f66013d760e01b815260206004820152600191905f818061089c602482018a89610bf9565b038183305af16108ae575b5001610863565b5f6108b891610bcb565b856108a7565b3461010e57606036600319011261010e57602435906004356044356001600160401b03811161010e576108f5903690600401610ae1565b6353266bbb60e01b84523060048501526060602485015293909260208180610921606482018989610bf9565b600a604483015203815f6108005af1801561011a57610aaa575b505f5b828110610971576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018a8a610bf9565b303b1561010e5760405163f66013d760e01b8152602060048201525f818061099d602482018a8a610bf9565b038183305af19081610a9a575b50610a92576040516353266bbb60e01b815230600482015260606024820152602081806109db606482018a8a610bf9565b600a604483015203815f6108005af1801561011a57610a5c575b505f5b828110610a0a57506001905b0161093e565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610a3a602482018c8c610bf9565b038183305af1610a4c575b50016109f8565b5f610a5691610bcb565b87610a45565b6020813d8211610a8a575b81610a7460209383610bcb565b8101031261010e57610a8590610bec565b6109f5565b3d9150610a67565b600190610a04565b5f610aa491610bcb565b866109aa565b6020813d602011610ad9575b81610ac360209383610bcb565b8101031261010e57610ad490610bec565b61093b565b3d9150610ab6565b9181601f8401121561010e578235916001600160401b03831161010e576020838186019501011161010e57565b90604060031983011261010e5760043591602435906001600160401b03821161010e57610b3d91600401610ae1565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b604081019081106001600160401b03821117610b8057604052565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b03821117610b8057604052565b60a081019081106001600160401b03821117610b8057604052565b90601f801991011681019081106001600160401b03821117610b8057604052565b5190811515820361010e57565b908060209392818452848401375f828201840152601f01601f1916010190565b5f198114610c275760010190565b634e487b7160e01b5f52601160045260245ffd5b81601f8201121561010e578051906001600160401b038211610b805760405192610c6f601f8401601f191660200185610bcb565b8284526020838301011161010e57815f9260208093018386015e8301015290565b51908160070b820361010e5756fea264697066735822122043e2b92b58bbf2299a42cb1699f8f5b96a0effcdbb807d3278a1d0275c381b4d64736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c9081634d9db92b146108be575080634e5a8fe51461084557806352fce7b1146107c4578063668f452b1461068c578063922a4b6714610529578063cbc367d4146101255763f66013d714610069575f80fd5b3461010e57602036600319011261010e576004356001600160401b03811161010e57602061009e6100c7923690600401610ae1565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610bf9565b600a604483015203815f6108005af1801561011a576100e4575f80fd5b6020813d602011610112575b816100fd60209383610bcb565b8101031261010e5761010e90610bec565b5f80fd5b3d91506100f0565b6040513d5f823e3d90fd5b3461010e57604036600319011261010e576004356024356001600160a01b0381169081900361010e579060405161015b81610b94565b60608152606060208201525f60408201525f60608201525f60808201525f60a082015260405161018a81610bb0565b6060815260606020820152606060408201526060808201526060608082015260c08201525f60e08201525f6101008201525f6101208201525f610140820152915f915b80831061030b5783604051906020825261020e6101f882516101606020860152610180850190610b41565b6020830151848203601f19016040860152610b41565b9060408101511515606084015260608101519160048310156102f7576102c36101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102b26102a061028e61027c865160a0875260a0870190610b41565b60208701518682036020880152610b41565b60408601518582036040870152610b41565b60608501518482036060860152610b41565b920151906080818403910152610b41565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b5f52602160045260245ffd5b9091925060405163111d9dbd60e11b81528260048201525f816024816108005afa801561011a575f90610346575b60019150930191906101cd565b503d805f833e6103568183610bcb565b81019060208183031261010e578051906001600160401b03821161010e57016101608183031261010e576040519061038d82610b94565b80516001600160401b03811161010e57836103a9918301610c3b565b825260208101516001600160401b03811161010e57836103ca918301610c3b565b60208301526103db60408201610bec565b60408301526060810151600481101561010e5760608301526080810151608083015260a081015160a083015260c08101516001600160401b03811161010e5781019060a08285031261010e5760405161043381610bb0565b82516001600160401b03811161010e578561044f918501610c3b565b815260208301516001600160401b03811161010e5785610470918501610c3b565b602082015260408301516001600160401b03811161010e5785610494918501610c3b565b604082015260608301516001600160401b03811161010e57856104b8918501610c3b565b60608201526080830151926001600160401b03841161010e57600195610140946104e29201610c3b565b608082015260c08401526104f860e08201610c90565b60e084015261050a6101008201610c90565b6101008401526101208101516101208401520151610140820152610339565b3461010e5761053736610b0e565b916040516353266bbb60e01b81523060048201526060602482015260208180610564606482018888610bf9565b600a604483015203815f6108005af1801561011a57610655575b505f5b818110610603576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018989610bf9565b600a604483015203815f6108005af1801561011a576105cf57005b6020813d6020116105fb575b816105e860209383610bcb565b8101031261010e576105f990610bec565b005b3d91506105db565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610633602482018a8a610bf9565b038183305af1610645575b5001610581565b5f61064f91610bcb565b8561063e565b6020813d602011610684575b8161066e60209383610bcb565b8101031261010e5761067f90610bec565b61057e565b3d9150610661565b3461010e57602036600319011261010e576004356001600160401b03811161010e575f6106c06106fe923690600401610ae1565b8260206040516106cf81610b65565b606081520152604051938492839263120bba7360e11b8452306004850152604060248501526044840191610bf9565b03816108005afa90811561011a575f905f92610748575b50604051918291825260406020830152602061073c82516040808601526080850190610b41565b91015160608301520390f35b9150503d805f833e61075a8183610bcb565b81019060408183031261010e578051906020810151906001600160401b03821161010e57019160408382031261010e576040519261079784610b65565b80516001600160401b03811161010e576020926107b5918301610c3b565b84520151602083015282610715565b3461010e576107d236610b0e565b6107df5f93929354610c19565b5f555f5b8281106107ec57005b303b1561010e5760405163f66013d760e01b815260206004820152905f828061081960248201878a610bf9565b038183305af191821561011a57600192610835575b50016107e3565b5f61083f91610bcb565b8561082e565b3461010e5761085336610b0e565b919061085f5f54610c19565b5f555f5b82811061086c57005b303b1561010e5760405163f66013d760e01b815260206004820152600191905f818061089c602482018a89610bf9565b038183305af16108ae575b5001610863565b5f6108b891610bcb565b856108a7565b3461010e57606036600319011261010e57602435906004356044356001600160401b03811161010e576108f5903690600401610ae1565b6353266bbb60e01b84523060048501526060602485015293909260208180610921606482018989610bf9565b600a604483015203815f6108005af1801561011a57610aaa575b505f5b828110610971576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018a8a610bf9565b303b1561010e5760405163f66013d760e01b8152602060048201525f818061099d602482018a8a610bf9565b038183305af19081610a9a575b50610a92576040516353266bbb60e01b815230600482015260606024820152602081806109db606482018a8a610bf9565b600a604483015203815f6108005af1801561011a57610a5c575b505f5b828110610a0a57506001905b0161093e565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610a3a602482018c8c610bf9565b038183305af1610a4c575b50016109f8565b5f610a5691610bcb565b87610a45565b6020813d8211610a8a575b81610a7460209383610bcb565b8101031261010e57610a8590610bec565b6109f5565b3d9150610a67565b600190610a04565b5f610aa491610bcb565b866109aa565b6020813d602011610ad9575b81610ac360209383610bcb565b8101031261010e57610ad490610bec565b61093b565b3d9150610ab6565b9181601f8401121561010e578235916001600160401b03831161010e576020838186019501011161010e57565b90604060031983011261010e5760043591602435906001600160401b03821161010e57610b3d91600401610ae1565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b604081019081106001600160401b03821117610b8057604052565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b03821117610b8057604052565b60a081019081106001600160401b03821117610b8057604052565b90601f801991011681019081106001600160401b03821117610b8057604052565b5190811515820361010e57565b908060209392818452848401375f828201840152601f01601f1916010190565b5f198114610c275760010190565b634e487b7160e01b5f52601160045260245ffd5b81601f8201121561010e578051906001600160401b038211610b805760405192610c6f601f8401601f191660200185610bcb565b8284526020838301011161010e57815f9260208093018386015e8301015290565b51908160070b820361010e5756fea264697066735822122043e2b92b58bbf2299a42cb1699f8f5b96a0effcdbb807d3278a1d0275c381b4d64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/testutil/contracts/StakingReverter.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/werc20/abi.json b/precompiles/werc20/abi.json index 3f97434e8..6a07ef523 100644 --- a/precompiles/werc20/abi.json +++ b/precompiles/werc20/abi.json @@ -1,290 +1,302 @@ -[ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "dst", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Deposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "src", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Withdrawal", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "deposit", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } -] +{ + "_format": "hh3-artifact-1", + "contractName": "IWERC20", + "sourceName": "solidity/precompiles/werc20/IWERC20.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "dst", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "wad", + "type": "uint256" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "src", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "wad", + "type": "uint256" + } + ], + "name": "Withdrawal", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "deposit", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "wad", + "type": "uint256" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "linkReferences": {}, + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/precompiles/werc20/IWERC20.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/precompiles/werc20/testdata/WEVMOS9TestCaller.json b/precompiles/werc20/testdata/WEVMOS9TestCaller.json index dfcd6ca3d..6e9ec3d04 100644 --- a/precompiles/werc20/testdata/WEVMOS9TestCaller.json +++ b/precompiles/werc20/testdata/WEVMOS9TestCaller.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "WEVMOS9TestCaller", "sourceName": "solidity/precompiles/werc20/testdata/WEVMOS9TestCaller.sol", "abi": [ @@ -72,8 +72,22 @@ "type": "function" } ], - "bytecode": "0x60a03461007357601f6102b138819003918201601f19168301916001600160401b038311848410176100785780849260209460405283398101031261007357516001600160a01b03811681036100735760805260008055604051610222908161008f82396080518181816058015260e40152f35b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604081815260048036101561001557600080fd5b600092833560e01c9182635dab6f8c146100a7575050806361bc221a1461008b57637cf5b4fc1461004557600080fd5b34610087578160031936011261008757517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5080fd5b5034610087578160031936011261008757602091549051908152f35b90928092506003193601126101b557803580151581036101b1576024359384151585036101ad578554600019949085811461019a576001018755867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b156100875785848092630d0e30db60e41b825234905af1801561019057610162575b505061014a57835490811561014f575001825561014a5780f35b6101b9565b634e487b7160e01b855260119052602484fd5b67ffffffffffffffff829793971161017d5752933880610130565b634e487b7160e01b835260418452602483fd5b81513d89823e3d90fd5b634e487b7160e01b885260118552602488fd5b8580fd5b8480fd5b8380fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea2646970667358221220b32282c4091e7b1e0ef38cfff23aebf1e60aad8d2696f353a69484cad09862a964736f6c63430008140033", - "deployedBytecode": "0x6080604081815260048036101561001557600080fd5b600092833560e01c9182635dab6f8c146100a7575050806361bc221a1461008b57637cf5b4fc1461004557600080fd5b34610087578160031936011261008757517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5080fd5b5034610087578160031936011261008757602091549051908152f35b90928092506003193601126101b557803580151581036101b1576024359384151585036101ad578554600019949085811461019a576001018755867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b156100875785848092630d0e30db60e41b825234905af1801561019057610162575b505061014a57835490811561014f575001825561014a5780f35b6101b9565b634e487b7160e01b855260119052602484fd5b67ffffffffffffffff829793971161017d5752933880610130565b634e487b7160e01b835260418452602483fd5b81513d89823e3d90fd5b634e487b7160e01b885260118552602488fd5b8580fd5b8480fd5b8380fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea2646970667358221220b32282c4091e7b1e0ef38cfff23aebf1e60aad8d2696f353a69484cad09862a964736f6c63430008140033", + "bytecode": "0x60a034606e57601f61029f38819003918201601f19168301916001600160401b03831184841017607257808492602094604052833981010312606e57516001600160a01b0381168103606e576080525f8055604051610218908161008782396080518181816054015260db0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081635dab6f8c146100a35750806361bc221a1461008657637cf5b4fc1461003f575f80fd5b346100835780600319360112610083576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b80fd5b503461008357806003193601126100835760209054604051908152f35b9050604036600319011261019757600435801515810361019757602435918215158303610197575f545f19811461019b576001015f557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b1561019757816004815f93630d0e30db60e41b825234905af1801561018c5761015b575b506101425781548015610147575f190182556101425780f35b6101af565b634e487b7160e01b83526011600452602483fd5b90925067ffffffffffffffff8111610178576040525f915f610129565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea264697066735822122065671176218dbfbea1d97d0eec5246787e071cc98c1b36faea058e3acb3d193464736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081635dab6f8c146100a35750806361bc221a1461008657637cf5b4fc1461003f575f80fd5b346100835780600319360112610083576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b80fd5b503461008357806003193601126100835760209054604051908152f35b9050604036600319011261019757600435801515810361019757602435918215158303610197575f545f19811461019b576001015f557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b1561019757816004815f93630d0e30db60e41b825234905af1801561018c5761015b575b506101425781548015610147575f190182556101425780f35b6101af565b634e487b7160e01b83526011600452602483fd5b90925067ffffffffffffffff8111610178576040525f915f610129565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea264697066735822122065671176218dbfbea1d97d0eec5246787e071cc98c1b36faea058e3acb3d193464736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": { + "26767": [ + { + "length": 32, + "start": 84 + }, + { + "length": 32, + "start": 219 + } + ] + }, + "inputSourceName": "project/solidity/precompiles/werc20/testdata/WEVMOS9TestCaller.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json b/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json index d2964948a..8ad04ef8e 100644 --- a/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json +++ b/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "SimpleEntryPoint", "sourceName": "solidity/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol", "abi": [ @@ -53,14 +53,9 @@ "type": "bytes" }, { - "internalType": "uint256", - "name": "callGasLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "verificationGasLimit", - "type": "uint256" + "internalType": "bytes32", + "name": "accountGasLimits", + "type": "bytes32" }, { "internalType": "uint256", @@ -68,14 +63,9 @@ "type": "uint256" }, { - "internalType": "uint256", - "name": "maxFeePerGas", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPriorityFeePerGas", - "type": "uint256" + "internalType": "bytes32", + "name": "gasFees", + "type": "bytes32" }, { "internalType": "bytes", @@ -88,7 +78,7 @@ "type": "bytes" } ], - "internalType": "struct UserOperation[]", + "internalType": "struct PackedUserOperation[]", "name": "ops", "type": "tuple[]" } @@ -99,8 +89,11 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50610db1806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063532d3ac914610030575b600080fd5b61004a600480360381019061004591906103bd565b61004c565b005b60005b8282905081101561028e573683838381811061006e5761006d61040a565b5b90506020028101906100809190610448565b9050600061008d82610293565b90508160000160208101906100a291906104cf565b73ffffffffffffffffffffffffffffffffffffffff16633a871cdd838360006040518463ffffffff1660e01b81526004016100df93929190610810565b6020604051808303816000875af192505050801561011b57506040513d601f19601f820116820180604052508101906101189190610863565b60015b6101865781600001602081019061013291906104cf565b73ffffffffffffffffffffffffffffffffffffffff16817f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb78719600060405161017991906108ab565b60405180910390a3610279565b50600082600001602081019061019c91906104cf565b73ffffffffffffffffffffffffffffffffffffffff168380606001906101c291906108c6565b6040516101d0929190610959565b6000604051808303816000865af19150503d806000811461020d576040519150601f19603f3d011682016040523d82523d6000602084013e610212565b606091505b5050905082600001602081019061022991906104cf565b73ffffffffffffffffffffffffffffffffffffffff16827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787198360405161026f91906108ab565b60405180910390a3505b50508080610286906109a1565b91505061004f565b505050565b600080826102a090610c90565b9050600081604001518051906020012090506000826060015180519060200120905060008361012001518051906020012090506000309050600046905085600001518660200151868689608001518a60a001518b60c001518c60e001518d61010001518b8b8b6040516020016103219c9b9a99989796959493929190610cc1565b604051602081830303815290604052805190602001209650505050505050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261037d5761037c610358565b5b8235905067ffffffffffffffff81111561039a5761039961035d565b5b6020830191508360208202830111156103b6576103b5610362565b5b9250929050565b600080602083850312156103d4576103d361034e565b5b600083013567ffffffffffffffff8111156103f2576103f1610353565b5b6103fe85828601610367565b92509250509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b6000823560016101600383360303811261046557610464610439565b5b80830191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061049c82610471565b9050919050565b6104ac81610491565b81146104b757600080fd5b50565b6000813590506104c9816104a3565b92915050565b6000602082840312156104e5576104e461034e565b5b60006104f3848285016104ba565b91505092915050565b600061050b60208401846104ba565b905092915050565b61051c81610491565b82525050565b6000819050919050565b61053581610522565b811461054057600080fd5b50565b6000813590506105528161052c565b92915050565b60006105676020840184610543565b905092915050565b61057881610522565b82525050565b600080fd5b600080fd5b600080fd5b600080833560016020038436030381126105aa576105a9610588565b5b83810192508235915060208301925067ffffffffffffffff8211156105d2576105d161057e565b5b6001820236038313156105e8576105e7610583565b5b509250929050565b600082825260208201905092915050565b82818337600083830152505050565b6000601f19601f8301169050919050565b600061062d83856105f0565b935061063a838584610601565b61064383610610565b840190509392505050565b6000610160830161066260008401846104fc565b61066f6000860182610513565b5061067d6020840184610558565b61068a602086018261056f565b50610698604084018461058d565b85830360408701526106ab838284610621565b925050506106bc606084018461058d565b85830360608701526106cf838284610621565b925050506106e06080840184610558565b6106ed608086018261056f565b506106fb60a0840184610558565b61070860a086018261056f565b5061071660c0840184610558565b61072360c086018261056f565b5061073160e0840184610558565b61073e60e086018261056f565b5061074d610100840184610558565b61075b61010086018261056f565b5061076a61012084018461058d565b85830361012087015261077e838284610621565b9250505061079061014084018461058d565b8583036101408701526107a4838284610621565b925050508091505092915050565b6000819050919050565b6107c5816107b2565b82525050565b6000819050919050565b6000819050919050565b60006107fa6107f56107f0846107cb565b6107d5565b610522565b9050919050565b61080a816107df565b82525050565b6000606082019050818103600083015261082a818661064e565b905061083960208301856107bc565b6108466040830184610801565b949350505050565b60008151905061085d8161052c565b92915050565b6000602082840312156108795761087861034e565b5b60006108878482850161084e565b91505092915050565b60008115159050919050565b6108a581610890565b82525050565b60006020820190506108c0600083018461089c565b92915050565b600080833560016020038436030381126108e3576108e2610439565b5b80840192508235915067ffffffffffffffff8211156109055761090461043e565b5b60208301925060018202360383131561092157610920610443565b5b509250929050565b600081905092915050565b60006109408385610929565b935061094d838584610601565b82840190509392505050565b6000610966828486610934565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006109ac82610522565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036109de576109dd610972565b5b600182019050919050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610a2682610610565b810181811067ffffffffffffffff82111715610a4557610a446109ee565b5b80604052505050565b6000610a58610344565b9050610a648282610a1d565b919050565b600080fd5b600080fd5b600067ffffffffffffffff821115610a8e57610a8d6109ee565b5b610a9782610610565b9050602081019050919050565b6000610ab7610ab284610a73565b610a4e565b905082815260208101848484011115610ad357610ad2610a6e565b5b610ade848285610601565b509392505050565b600082601f830112610afb57610afa610358565b5b8135610b0b848260208601610aa4565b91505092915050565b60006101608284031215610b2b57610b2a6109e9565b5b610b36610160610a4e565b90506000610b46848285016104ba565b6000830152506020610b5a84828501610543565b602083015250604082013567ffffffffffffffff811115610b7e57610b7d610a69565b5b610b8a84828501610ae6565b604083015250606082013567ffffffffffffffff811115610bae57610bad610a69565b5b610bba84828501610ae6565b6060830152506080610bce84828501610543565b60808301525060a0610be284828501610543565b60a08301525060c0610bf684828501610543565b60c08301525060e0610c0a84828501610543565b60e083015250610100610c1f84828501610543565b6101008301525061012082013567ffffffffffffffff811115610c4557610c44610a69565b5b610c5184828501610ae6565b6101208301525061014082013567ffffffffffffffff811115610c7757610c76610a69565b5b610c8384828501610ae6565b6101408301525092915050565b6000610c9c3683610b14565b9050919050565b610cac81610491565b82525050565b610cbb81610522565b82525050565b600061018082019050610cd7600083018f610ca3565b610ce4602083018e610cb2565b610cf1604083018d6107bc565b610cfe606083018c6107bc565b610d0b608083018b610cb2565b610d1860a083018a610cb2565b610d2560c0830189610cb2565b610d3260e0830188610cb2565b610d40610100830187610cb2565b610d4e6101208301866107bc565b610d5c610140830185610ca3565b610d6a610160830184610cb2565b9d9c5050505050505050505050505056fea26469706673582212208c7d78c56fc85f3203e4c9a3ac969f7f6b4283b7772b432a017fecf89e8e4a5264736f6c63430008140033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063532d3ac914610030575b600080fd5b61004a600480360381019061004591906103bd565b61004c565b005b60005b8282905081101561028e573683838381811061006e5761006d61040a565b5b90506020028101906100809190610448565b9050600061008d82610293565b90508160000160208101906100a291906104cf565b73ffffffffffffffffffffffffffffffffffffffff16633a871cdd838360006040518463ffffffff1660e01b81526004016100df93929190610810565b6020604051808303816000875af192505050801561011b57506040513d601f19601f820116820180604052508101906101189190610863565b60015b6101865781600001602081019061013291906104cf565b73ffffffffffffffffffffffffffffffffffffffff16817f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb78719600060405161017991906108ab565b60405180910390a3610279565b50600082600001602081019061019c91906104cf565b73ffffffffffffffffffffffffffffffffffffffff168380606001906101c291906108c6565b6040516101d0929190610959565b6000604051808303816000865af19150503d806000811461020d576040519150601f19603f3d011682016040523d82523d6000602084013e610212565b606091505b5050905082600001602081019061022991906104cf565b73ffffffffffffffffffffffffffffffffffffffff16827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787198360405161026f91906108ab565b60405180910390a3505b50508080610286906109a1565b91505061004f565b505050565b600080826102a090610c90565b9050600081604001518051906020012090506000826060015180519060200120905060008361012001518051906020012090506000309050600046905085600001518660200151868689608001518a60a001518b60c001518c60e001518d61010001518b8b8b6040516020016103219c9b9a99989796959493929190610cc1565b604051602081830303815290604052805190602001209650505050505050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f84011261037d5761037c610358565b5b8235905067ffffffffffffffff81111561039a5761039961035d565b5b6020830191508360208202830111156103b6576103b5610362565b5b9250929050565b600080602083850312156103d4576103d361034e565b5b600083013567ffffffffffffffff8111156103f2576103f1610353565b5b6103fe85828601610367565b92509250509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b6000823560016101600383360303811261046557610464610439565b5b80830191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061049c82610471565b9050919050565b6104ac81610491565b81146104b757600080fd5b50565b6000813590506104c9816104a3565b92915050565b6000602082840312156104e5576104e461034e565b5b60006104f3848285016104ba565b91505092915050565b600061050b60208401846104ba565b905092915050565b61051c81610491565b82525050565b6000819050919050565b61053581610522565b811461054057600080fd5b50565b6000813590506105528161052c565b92915050565b60006105676020840184610543565b905092915050565b61057881610522565b82525050565b600080fd5b600080fd5b600080fd5b600080833560016020038436030381126105aa576105a9610588565b5b83810192508235915060208301925067ffffffffffffffff8211156105d2576105d161057e565b5b6001820236038313156105e8576105e7610583565b5b509250929050565b600082825260208201905092915050565b82818337600083830152505050565b6000601f19601f8301169050919050565b600061062d83856105f0565b935061063a838584610601565b61064383610610565b840190509392505050565b6000610160830161066260008401846104fc565b61066f6000860182610513565b5061067d6020840184610558565b61068a602086018261056f565b50610698604084018461058d565b85830360408701526106ab838284610621565b925050506106bc606084018461058d565b85830360608701526106cf838284610621565b925050506106e06080840184610558565b6106ed608086018261056f565b506106fb60a0840184610558565b61070860a086018261056f565b5061071660c0840184610558565b61072360c086018261056f565b5061073160e0840184610558565b61073e60e086018261056f565b5061074d610100840184610558565b61075b61010086018261056f565b5061076a61012084018461058d565b85830361012087015261077e838284610621565b9250505061079061014084018461058d565b8583036101408701526107a4838284610621565b925050508091505092915050565b6000819050919050565b6107c5816107b2565b82525050565b6000819050919050565b6000819050919050565b60006107fa6107f56107f0846107cb565b6107d5565b610522565b9050919050565b61080a816107df565b82525050565b6000606082019050818103600083015261082a818661064e565b905061083960208301856107bc565b6108466040830184610801565b949350505050565b60008151905061085d8161052c565b92915050565b6000602082840312156108795761087861034e565b5b60006108878482850161084e565b91505092915050565b60008115159050919050565b6108a581610890565b82525050565b60006020820190506108c0600083018461089c565b92915050565b600080833560016020038436030381126108e3576108e2610439565b5b80840192508235915067ffffffffffffffff8211156109055761090461043e565b5b60208301925060018202360383131561092157610920610443565b5b509250929050565b600081905092915050565b60006109408385610929565b935061094d838584610601565b82840190509392505050565b6000610966828486610934565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006109ac82610522565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036109de576109dd610972565b5b600182019050919050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610a2682610610565b810181811067ffffffffffffffff82111715610a4557610a446109ee565b5b80604052505050565b6000610a58610344565b9050610a648282610a1d565b919050565b600080fd5b600080fd5b600067ffffffffffffffff821115610a8e57610a8d6109ee565b5b610a9782610610565b9050602081019050919050565b6000610ab7610ab284610a73565b610a4e565b905082815260208101848484011115610ad357610ad2610a6e565b5b610ade848285610601565b509392505050565b600082601f830112610afb57610afa610358565b5b8135610b0b848260208601610aa4565b91505092915050565b60006101608284031215610b2b57610b2a6109e9565b5b610b36610160610a4e565b90506000610b46848285016104ba565b6000830152506020610b5a84828501610543565b602083015250604082013567ffffffffffffffff811115610b7e57610b7d610a69565b5b610b8a84828501610ae6565b604083015250606082013567ffffffffffffffff811115610bae57610bad610a69565b5b610bba84828501610ae6565b6060830152506080610bce84828501610543565b60808301525060a0610be284828501610543565b60a08301525060c0610bf684828501610543565b60c08301525060e0610c0a84828501610543565b60e083015250610100610c1f84828501610543565b6101008301525061012082013567ffffffffffffffff811115610c4557610c44610a69565b5b610c5184828501610ae6565b6101208301525061014082013567ffffffffffffffff811115610c7757610c76610a69565b5b610c8384828501610ae6565b6101408301525092915050565b6000610c9c3683610b14565b9050919050565b610cac81610491565b82525050565b610cbb81610522565b82525050565b600061018082019050610cd7600083018f610ca3565b610ce4602083018e610cb2565b610cf1604083018d6107bc565b610cfe606083018c6107bc565b610d0b608083018b610cb2565b610d1860a083018a610cb2565b610d2560c0830189610cb2565b610d3260e0830188610cb2565b610d40610100830187610cb2565b610d4e6101208301866107bc565b610d5c610140830185610ca3565b610d6a610160830184610cb2565b9d9c5050505050505050505050505056fea26469706673582212208c7d78c56fc85f3203e4c9a3ac969f7f6b4283b7772b432a017fecf89e8e4a5264736f6c63430008140033", + "bytecode": "0x608080604052346015576105d2908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c6357956b5814610024575f80fd5b34610459576020366003190112610459576004356001600160401b03811161045957366023820112156104595780600401356001600160401b038111610459573660248260051b840101116104595790368190036101421901905f5b8381101561049f5760248160051b8301013583811215610459578201903682900360231901602483016101208212610459576040519161012083018381106001600160401b0382111761048b576040526100d9826104d6565b835260448501359460208401868152606482019687356001600160401b0381116104595761010d9060243691860101610556565b976040870198895260848401918235946001600160401b0386116104595787946024878301019b61013f8d3690610556565b60608c0190815260a48401359260808d0184815260c48601359d8e9360a0820194855260e48801359460c08301908682526101048a019788356001600160401b038111610459578b60246101969236920101610556565b9060e086019182526101248c019b8c356001600160401b03811161045957369101602401906101c491610556565b610100870152518051906020012093518051906020012090518051906020012094600160a01b60019003905116965195519151925193604051966020880198895260408801526060870152608086015260a085015260c084015260e083015261010082015230610120820152466101408201526101408152610248610160826104b5565b5190209b6001600160a01b0361025d8a6104a1565b6040516306608bdf60e21b8152606060048201529a9116988a9889989192916001600160a01b0361028d846104d6565b1660648b015260848a01526102a290826104ea565b60a48a0161012090526101848a01906102ba9261051b565b916102c4916104ea565b8883036063190160c48a01526102da929161051b565b9360e48701526101048601526101248501526102f6908a6104ea565b8483036063190161014486015261030d929161051b565b9061031890896104ea565b8383036063190161016485015261032f929161051b565b886024830152604482015f905203815a6020945f91f1908161045d575b5061039c5750600194506001600160a01b039161036991506104a1565b16907f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb7871960206040515f8152a35b01610080565b6103a78394936104a1565b91601e19011315610459578435946001600160401b03861161045957602001908536038213610459575f8060209288827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787199660019b6040519384928337810182815203925af1933d15610454573d61041e8161053b565b9061042c60405192836104b5565b81525f833d92013e5b610444878060a01b03916104a1565b16936040519015158152a3610396565b610435565b5f80fd5b6020813d8211610483575b81610475602093836104b5565b81010312610459575161034c565b3d9150610468565b634e487b7160e01b5f52604160045260245ffd5b005b356001600160a01b03811681036104595790565b90601f801991011681019081106001600160401b0382111761048b57604052565b35906001600160a01b038216820361045957565b9035601e19823603018112156104595701602081359101916001600160401b03821161045957813603831361045957565b908060209392818452848401375f828201840152601f01601f1916010190565b6001600160401b03811161048b57601f01601f191660200190565b81601f820112156104595780359061056d8261053b565b9261057b60405194856104b5565b8284526020838301011161045957815f92602080930183860137830101529056fea2646970667358221220cacea8cfbe8faabc7cfdabc9206e55b1d42854c550af811b1352559270a5c47b64736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c6357956b5814610024575f80fd5b34610459576020366003190112610459576004356001600160401b03811161045957366023820112156104595780600401356001600160401b038111610459573660248260051b840101116104595790368190036101421901905f5b8381101561049f5760248160051b8301013583811215610459578201903682900360231901602483016101208212610459576040519161012083018381106001600160401b0382111761048b576040526100d9826104d6565b835260448501359460208401868152606482019687356001600160401b0381116104595761010d9060243691860101610556565b976040870198895260848401918235946001600160401b0386116104595787946024878301019b61013f8d3690610556565b60608c0190815260a48401359260808d0184815260c48601359d8e9360a0820194855260e48801359460c08301908682526101048a019788356001600160401b038111610459578b60246101969236920101610556565b9060e086019182526101248c019b8c356001600160401b03811161045957369101602401906101c491610556565b610100870152518051906020012093518051906020012090518051906020012094600160a01b60019003905116965195519151925193604051966020880198895260408801526060870152608086015260a085015260c084015260e083015261010082015230610120820152466101408201526101408152610248610160826104b5565b5190209b6001600160a01b0361025d8a6104a1565b6040516306608bdf60e21b8152606060048201529a9116988a9889989192916001600160a01b0361028d846104d6565b1660648b015260848a01526102a290826104ea565b60a48a0161012090526101848a01906102ba9261051b565b916102c4916104ea565b8883036063190160c48a01526102da929161051b565b9360e48701526101048601526101248501526102f6908a6104ea565b8483036063190161014486015261030d929161051b565b9061031890896104ea565b8383036063190161016485015261032f929161051b565b886024830152604482015f905203815a6020945f91f1908161045d575b5061039c5750600194506001600160a01b039161036991506104a1565b16907f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb7871960206040515f8152a35b01610080565b6103a78394936104a1565b91601e19011315610459578435946001600160401b03861161045957602001908536038213610459575f8060209288827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787199660019b6040519384928337810182815203925af1933d15610454573d61041e8161053b565b9061042c60405192836104b5565b81525f833d92013e5b610444878060a01b03916104a1565b16936040519015158152a3610396565b610435565b5f80fd5b6020813d8211610483575b81610475602093836104b5565b81010312610459575161034c565b3d9150610468565b634e487b7160e01b5f52604160045260245ffd5b005b356001600160a01b03811681036104595790565b90601f801991011681019081106001600160401b0382111761048b57604052565b35906001600160a01b038216820361045957565b9035601e19823603018112156104595701602081359101916001600160401b03821161045957813603831361045957565b908060209392818452848401375f828201840152601f01601f1916010190565b6001600160401b03811161048b57601f01601f191660200190565b81601f820112156104595780359061056d8261053b565b9261057b60405194856104b5565b8284526020838301011161045957815f92602080930183860137830101529056fea2646970667358221220cacea8cfbe8faabc7cfdabc9206e55b1d42854c550af811b1352559270a5c47b64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json b/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json index be3118596..f2fdfdbb7 100644 --- a/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json +++ b/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "SimpleSmartWallet", "sourceName": "solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol", "abi": [ @@ -95,14 +95,9 @@ "type": "bytes" }, { - "internalType": "uint256", - "name": "callGasLimit", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "verificationGasLimit", - "type": "uint256" + "internalType": "bytes32", + "name": "accountGasLimits", + "type": "bytes32" }, { "internalType": "uint256", @@ -110,14 +105,9 @@ "type": "uint256" }, { - "internalType": "uint256", - "name": "maxFeePerGas", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxPriorityFeePerGas", - "type": "uint256" + "internalType": "bytes32", + "name": "gasFees", + "type": "bytes32" }, { "internalType": "bytes", @@ -130,7 +120,7 @@ "type": "bytes" } ], - "internalType": "struct UserOperation", + "internalType": "struct PackedUserOperation", "name": "userOp", "type": "tuple" }, @@ -161,8 +151,11 @@ "type": "receive" } ], - "bytecode": "0x608060405234801561001057600080fd5b50610d71806100206000396000f3fe60806040526004361061004e5760003560e01c80633a871cdd1461005a578063485cc955146100975780638da5cb5b146100c0578063b0d691fe146100eb578063b61d27f61461011657610055565b3661005557005b600080fd5b34801561006657600080fd5b50610081600480360381019061007c91906106d0565b61013f565b60405161008e919061074e565b60405180910390f35b3480156100a357600080fd5b506100be60048036038101906100b99190610817565b610328565b005b3480156100cc57600080fd5b506100d561043c565b6040516100e29190610866565b60405180910390f35b3480156100f757600080fd5b50610100610460565b60405161010d91906108e0565b60405180910390f35b34801561012257600080fd5b5061013d60048036038101906101389190610960565b610486565b005b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101c890610a31565b60405180910390fd5b6000806000610232878061014001906101ea9190610a60565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506105cd565b92509250925060006001878585856040516000815260200160405260405161025d9493929190610aee565b6020604051602081039080840390855afa15801561027f573d6000803e3d6000fd5b50505060206040510351905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610319576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161031090610b7f565b60405180910390fd5b60009450505050509392505050565b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146103b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103ae90610beb565b60405180910390fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610516576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161050d90610a31565b60405180910390fd5b60008473ffffffffffffffffffffffffffffffffffffffff16848484604051610540929190610c4a565b60006040518083038185875af1925050503d806000811461057d576040519150601f19603f3d011682016040523d82523d6000602084013e610582565b606091505b50509050806105c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105bd90610caf565b60405180910390fd5b5050505050565b60008060006041845114610616576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060d90610d1b565b60405180910390fd5b6020840151915060408401519050606084015160001a92509193909250565b600080fd5b600080fd5b600080fd5b6000610160828403121561065b5761065a61063f565b5b81905092915050565b6000819050919050565b61067781610664565b811461068257600080fd5b50565b6000813590506106948161066e565b92915050565b6000819050919050565b6106ad8161069a565b81146106b857600080fd5b50565b6000813590506106ca816106a4565b92915050565b6000806000606084860312156106e9576106e8610635565b5b600084013567ffffffffffffffff8111156107075761070661063a565b5b61071386828701610644565b935050602061072486828701610685565b9250506040610735868287016106bb565b9150509250925092565b6107488161069a565b82525050565b6000602082019050610763600083018461073f565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061079482610769565b9050919050565b6107a481610789565b81146107af57600080fd5b50565b6000813590506107c18161079b565b92915050565b60006107d282610769565b9050919050565b60006107e4826107c7565b9050919050565b6107f4816107d9565b81146107ff57600080fd5b50565b600081359050610811816107eb565b92915050565b6000806040838503121561082e5761082d610635565b5b600061083c858286016107b2565b925050602061084d85828601610802565b9150509250929050565b61086081610789565b82525050565b600060208201905061087b6000830184610857565b92915050565b6000819050919050565b60006108a66108a161089c84610769565b610881565b610769565b9050919050565b60006108b88261088b565b9050919050565b60006108ca826108ad565b9050919050565b6108da816108bf565b82525050565b60006020820190506108f560008301846108d1565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126109205761091f6108fb565b5b8235905067ffffffffffffffff81111561093d5761093c610900565b5b60208301915083600182028301111561095957610958610905565b5b9250929050565b6000806000806060858703121561097a57610979610635565b5b6000610988878288016107b2565b9450506020610999878288016106bb565b935050604085013567ffffffffffffffff8111156109ba576109b961063a565b5b6109c68782880161090a565b925092505092959194509250565b600082825260208201905092915050565b7f6f6e6c7920456e747279506f696e740000000000000000000000000000000000600082015250565b6000610a1b600f836109d4565b9150610a26826109e5565b602082019050919050565b60006020820190508181036000830152610a4a81610a0e565b9050919050565b600080fd5b600080fd5b600080fd5b60008083356001602003843603038112610a7d57610a7c610a51565b5b80840192508235915067ffffffffffffffff821115610a9f57610a9e610a56565b5b602083019250600182023603831315610abb57610aba610a5b565b5b509250929050565b610acc81610664565b82525050565b600060ff82169050919050565b610ae881610ad2565b82525050565b6000608082019050610b036000830187610ac3565b610b106020830186610adf565b610b1d6040830185610ac3565b610b2a6060830184610ac3565b95945050505050565b7f496e76616c6964207369676e6174757265000000000000000000000000000000600082015250565b6000610b696011836109d4565b9150610b7482610b33565b602082019050919050565b60006020820190508181036000830152610b9881610b5c565b9050919050565b7f616c726561647920696e697469616c697a656400000000000000000000000000600082015250565b6000610bd56013836109d4565b9150610be082610b9f565b602082019050919050565b60006020820190508181036000830152610c0481610bc8565b9050919050565b600081905092915050565b82818337600083830152505050565b6000610c318385610c0b565b9350610c3e838584610c16565b82840190509392505050565b6000610c57828486610c25565b91508190509392505050565b7f457865637574696f6e206661696c656400000000000000000000000000000000600082015250565b6000610c996010836109d4565b9150610ca482610c63565b602082019050919050565b60006020820190508181036000830152610cc881610c8c565b9050919050565b7f696e76616c6964207369676e6174757265206c656e6774680000000000000000600082015250565b6000610d056018836109d4565b9150610d1082610ccf565b602082019050919050565b60006020820190508181036000830152610d3481610cf8565b905091905056fea26469706673582212202c2c5b43eeb782fbe350b110535f44d858d4290cec37b9b86124fe5886827a0364736f6c63430008140033", - "deployedBytecode": "0x60806040526004361061004e5760003560e01c80633a871cdd1461005a578063485cc955146100975780638da5cb5b146100c0578063b0d691fe146100eb578063b61d27f61461011657610055565b3661005557005b600080fd5b34801561006657600080fd5b50610081600480360381019061007c91906106d0565b61013f565b60405161008e919061074e565b60405180910390f35b3480156100a357600080fd5b506100be60048036038101906100b99190610817565b610328565b005b3480156100cc57600080fd5b506100d561043c565b6040516100e29190610866565b60405180910390f35b3480156100f757600080fd5b50610100610460565b60405161010d91906108e0565b60405180910390f35b34801561012257600080fd5b5061013d60048036038101906101389190610960565b610486565b005b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101c890610a31565b60405180910390fd5b6000806000610232878061014001906101ea9190610a60565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506105cd565b92509250925060006001878585856040516000815260200160405260405161025d9493929190610aee565b6020604051602081039080840390855afa15801561027f573d6000803e3d6000fd5b50505060206040510351905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610319576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161031090610b7f565b60405180910390fd5b60009450505050509392505050565b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146103b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103ae90610beb565b60405180910390fd5b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610516576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161050d90610a31565b60405180910390fd5b60008473ffffffffffffffffffffffffffffffffffffffff16848484604051610540929190610c4a565b60006040518083038185875af1925050503d806000811461057d576040519150601f19603f3d011682016040523d82523d6000602084013e610582565b606091505b50509050806105c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105bd90610caf565b60405180910390fd5b5050505050565b60008060006041845114610616576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060d90610d1b565b60405180910390fd5b6020840151915060408401519050606084015160001a92509193909250565b600080fd5b600080fd5b600080fd5b6000610160828403121561065b5761065a61063f565b5b81905092915050565b6000819050919050565b61067781610664565b811461068257600080fd5b50565b6000813590506106948161066e565b92915050565b6000819050919050565b6106ad8161069a565b81146106b857600080fd5b50565b6000813590506106ca816106a4565b92915050565b6000806000606084860312156106e9576106e8610635565b5b600084013567ffffffffffffffff8111156107075761070661063a565b5b61071386828701610644565b935050602061072486828701610685565b9250506040610735868287016106bb565b9150509250925092565b6107488161069a565b82525050565b6000602082019050610763600083018461073f565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061079482610769565b9050919050565b6107a481610789565b81146107af57600080fd5b50565b6000813590506107c18161079b565b92915050565b60006107d282610769565b9050919050565b60006107e4826107c7565b9050919050565b6107f4816107d9565b81146107ff57600080fd5b50565b600081359050610811816107eb565b92915050565b6000806040838503121561082e5761082d610635565b5b600061083c858286016107b2565b925050602061084d85828601610802565b9150509250929050565b61086081610789565b82525050565b600060208201905061087b6000830184610857565b92915050565b6000819050919050565b60006108a66108a161089c84610769565b610881565b610769565b9050919050565b60006108b88261088b565b9050919050565b60006108ca826108ad565b9050919050565b6108da816108bf565b82525050565b60006020820190506108f560008301846108d1565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126109205761091f6108fb565b5b8235905067ffffffffffffffff81111561093d5761093c610900565b5b60208301915083600182028301111561095957610958610905565b5b9250929050565b6000806000806060858703121561097a57610979610635565b5b6000610988878288016107b2565b9450506020610999878288016106bb565b935050604085013567ffffffffffffffff8111156109ba576109b961063a565b5b6109c68782880161090a565b925092505092959194509250565b600082825260208201905092915050565b7f6f6e6c7920456e747279506f696e740000000000000000000000000000000000600082015250565b6000610a1b600f836109d4565b9150610a26826109e5565b602082019050919050565b60006020820190508181036000830152610a4a81610a0e565b9050919050565b600080fd5b600080fd5b600080fd5b60008083356001602003843603038112610a7d57610a7c610a51565b5b80840192508235915067ffffffffffffffff821115610a9f57610a9e610a56565b5b602083019250600182023603831315610abb57610aba610a5b565b5b509250929050565b610acc81610664565b82525050565b600060ff82169050919050565b610ae881610ad2565b82525050565b6000608082019050610b036000830187610ac3565b610b106020830186610adf565b610b1d6040830185610ac3565b610b2a6060830184610ac3565b95945050505050565b7f496e76616c6964207369676e6174757265000000000000000000000000000000600082015250565b6000610b696011836109d4565b9150610b7482610b33565b602082019050919050565b60006020820190508181036000830152610b9881610b5c565b9050919050565b7f616c726561647920696e697469616c697a656400000000000000000000000000600082015250565b6000610bd56013836109d4565b9150610be082610b9f565b602082019050919050565b60006020820190508181036000830152610c0481610bc8565b9050919050565b600081905092915050565b82818337600083830152505050565b6000610c318385610c0b565b9350610c3e838584610c16565b82840190509392505050565b6000610c57828486610c25565b91508190509392505050565b7f457865637574696f6e206661696c656400000000000000000000000000000000600082015250565b6000610c996010836109d4565b9150610ca482610c63565b602082019050919050565b60006020820190508181036000830152610cc881610c8c565b9050919050565b7f696e76616c6964207369676e6174757265206c656e6774680000000000000000600082015250565b6000610d056018836109d4565b9150610d1082610ccf565b602082019050919050565b60006020820190508181036000830152610d3481610cf8565b905091905056fea26469706673582212202c2c5b43eeb782fbe350b110535f44d858d4290cec37b9b86124fe5886827a0364736f6c63430008140033", + "bytecode": "0x60808060405234601557610506908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806319822f7c14610069578063485cc955146100645780638da5cb5b1461005f578063b0d691fe1461005a5763b61d27f60361000e57610263565b61023b565b610214565b610177565b346101625760603660031901126101625760043567ffffffffffffffff81116101625780360390610120600319830112610162576100b260018060a01b036001541633146102cf565b6101048101359160221901821215610162570160048101359067ffffffffffffffff8211610162576024018136038113610162576101286101006100fb5f936020953691610368565b610472565b60408051602435815260ff909416602085015283019190915260608201529081906080820190565b838052039060015afa1561015d575f80519054610152916001600160a01b039081169116146103a3565b6040515f8152602090f35b610398565b5f80fd5b6001600160a01b0381160361016257565b346101625760403660031901126101625760043561019481610166565b6024356101a081610166565b5f546001600160a01b0381166101d9576001600160a01b039283166001600160a01b0319918216175f5560018054929093169116179055005b60405162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606490fd5b34610162575f366003190112610162575f546040516001600160a01b039091168152602090f35b34610162575f366003190112610162576001546040516001600160a01b039091168152602090f35b346101625760603660031901126101625760043561028081610166565b6024356044359167ffffffffffffffff831161016257366023840112156101625782600401359167ffffffffffffffff83116101625736602484860101116101625760246100189401916103e3565b156102d657565b60405162461bcd60e51b815260206004820152600f60248201526e1bdb9b1e48115b9d1c9e541bda5b9d608a1b6044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff81118382101761034757604052565b61030d565b67ffffffffffffffff811161034757601f01601f191660200190565b92919261037c6103778361034c565b610321565b938285528282011161016257815f926020928387013784010152565b6040513d5f823e3d90fd5b156103aa57565b60405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b6044820152606490fd5b90925f9384936103fe60018060a01b036001541633146102cf565b826040519384928337810185815203925af13d1561046d573d6104236103778261034c565b9081525f60203d92013e5b1561043557565b60405162461bcd60e51b815260206004820152601060248201526f115e1958dd5d1a5bdb8819985a5b195960821b6044820152606490fd5b61042e565b604181510361049057602081015190606060408201519101515f1a92565b60405162461bcd60e51b81526020600482015260186024820152770d2dcecc2d8d2c840e6d2cedcc2e8eae4ca40d8cadccee8d60431b6044820152606490fdfea26469706673582212201b583de4c3c08e3214885b6517e303d3315e6dc789adaf44982b8809f87409f264736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806319822f7c14610069578063485cc955146100645780638da5cb5b1461005f578063b0d691fe1461005a5763b61d27f60361000e57610263565b61023b565b610214565b610177565b346101625760603660031901126101625760043567ffffffffffffffff81116101625780360390610120600319830112610162576100b260018060a01b036001541633146102cf565b6101048101359160221901821215610162570160048101359067ffffffffffffffff8211610162576024018136038113610162576101286101006100fb5f936020953691610368565b610472565b60408051602435815260ff909416602085015283019190915260608201529081906080820190565b838052039060015afa1561015d575f80519054610152916001600160a01b039081169116146103a3565b6040515f8152602090f35b610398565b5f80fd5b6001600160a01b0381160361016257565b346101625760403660031901126101625760043561019481610166565b6024356101a081610166565b5f546001600160a01b0381166101d9576001600160a01b039283166001600160a01b0319918216175f5560018054929093169116179055005b60405162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606490fd5b34610162575f366003190112610162575f546040516001600160a01b039091168152602090f35b34610162575f366003190112610162576001546040516001600160a01b039091168152602090f35b346101625760603660031901126101625760043561028081610166565b6024356044359167ffffffffffffffff831161016257366023840112156101625782600401359167ffffffffffffffff83116101625736602484860101116101625760246100189401916103e3565b156102d657565b60405162461bcd60e51b815260206004820152600f60248201526e1bdb9b1e48115b9d1c9e541bda5b9d608a1b6044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff81118382101761034757604052565b61030d565b67ffffffffffffffff811161034757601f01601f191660200190565b92919261037c6103778361034c565b610321565b938285528282011161016257815f926020928387013784010152565b6040513d5f823e3d90fd5b156103aa57565b60405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b6044820152606490fd5b90925f9384936103fe60018060a01b036001541633146102cf565b826040519384928337810185815203925af13d1561046d573d6104236103778261034c565b9081525f60203d92013e5b1561043557565b60405162461bcd60e51b815260206004820152601060248201526f115e1958dd5d1a5bdb8819985a5b195960821b6044820152606490fd5b61042e565b604181510361049057602081015190606060408201519101515f1a92565b60405162461bcd60e51b81526020600482015260186024820152770d2dcecc2d8d2c840e6d2cedcc2e8eae4ca40d8cadccee8d60431b6044820152606490fdfea26469706673582212201b583de4c3c08e3214885b6517e303d3315e6dc789adaf44982b8809f87409f264736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/tests/contracts/account_abstraction/tokens/SimpleERC20.json b/tests/contracts/account_abstraction/tokens/SimpleERC20.json index d98d81221..644649995 100644 --- a/tests/contracts/account_abstraction/tokens/SimpleERC20.json +++ b/tests/contracts/account_abstraction/tokens/SimpleERC20.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "SimpleERC20", "sourceName": "solidity/tests/contracts/account_abstraction/tokens/SimpleERC20.sol", "abi": [ @@ -231,8 +231,11 @@ "type": "function" } ], - "bytecode": "0x60806040526040518060400160405280600881526020017f4d7920546f6b656e000000000000000000000000000000000000000000000000815250600090816200004a9190620003b6565b506040518060400160405280600381526020017f4d544b000000000000000000000000000000000000000000000000000000000081525060019081620000919190620003b6565b506012600260006101000a81548160ff021916908360ff160217905550600260009054906101000a900460ff1660ff16600a620000cf919062000620565b620f4240620000df919062000671565b600355348015620000ef57600080fd5b50600354600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620006bc565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620001be57607f821691505b602082108103620001d457620001d362000176565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200023e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620001ff565b6200024a8683620001ff565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000297620002916200028b8462000262565b6200026c565b62000262565b9050919050565b6000819050919050565b620002b38362000276565b620002cb620002c2826200029e565b8484546200020c565b825550505050565b600090565b620002e2620002d3565b620002ef818484620002a8565b505050565b5b8181101562000317576200030b600082620002d8565b600181019050620002f5565b5050565b601f82111562000366576200033081620001da565b6200033b84620001ef565b810160208510156200034b578190505b620003636200035a85620001ef565b830182620002f4565b50505b505050565b600082821c905092915050565b60006200038b600019846008026200036b565b1980831691505092915050565b6000620003a6838362000378565b9150826002028217905092915050565b620003c1826200013c565b67ffffffffffffffff811115620003dd57620003dc62000147565b5b620003e98254620001a5565b620003f68282856200031b565b600060209050601f8311600181146200042e576000841562000419578287015190505b62000425858262000398565b86555062000495565b601f1984166200043e86620001da565b60005b82811015620004685784890151825560018201915060208501945060208101905062000441565b8683101562000488578489015162000484601f89168262000378565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200052b578086048111156200050357620005026200049d565b5b6001851615620005135780820291505b80810290506200052385620004cc565b9450620004e3565b94509492505050565b60008262000546576001905062000619565b8162000556576000905062000619565b81600181146200056f57600281146200057a57620005b0565b600191505062000619565b60ff8411156200058f576200058e6200049d565b5b8360020a915084821115620005a957620005a86200049d565b5b5062000619565b5060208310610133831016604e8410600b8410161715620005ea5782820a905083811115620005e457620005e36200049d565b5b62000619565b620005f98484846001620004d9565b925090508184048111156200061357620006126200049d565b5b81810290505b9392505050565b60006200062d8262000262565b91506200063a8362000262565b9250620006697fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000534565b905092915050565b60006200067e8262000262565b91506200068b8362000262565b92508282026200069b8162000262565b91508282048414831517620006b557620006b46200049d565b5b5092915050565b610ddc80620006cc6000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063313ce56711610066578063313ce5671461013457806370a082311461015257806395d89b4114610182578063a9059cbb146101a0578063dd62ed3e146101d057610093565b806306fdde0314610098578063095ea7b3146100b657806318160ddd146100e657806323b872dd14610104575b600080fd5b6100a0610200565b6040516100ad9190610985565b60405180910390f35b6100d060048036038101906100cb9190610a40565b61028e565b6040516100dd9190610a9b565b60405180910390f35b6100ee610380565b6040516100fb9190610ac5565b60405180910390f35b61011e60048036038101906101199190610ae0565b610386565b60405161012b9190610a9b565b60405180910390f35b61013c610678565b6040516101499190610b4f565b60405180910390f35b61016c60048036038101906101679190610b6a565b61068b565b6040516101799190610ac5565b60405180910390f35b61018a6106a3565b6040516101979190610985565b60405180910390f35b6101ba60048036038101906101b59190610a40565b610731565b6040516101c79190610a9b565b60405180910390f35b6101ea60048036038101906101e59190610b97565b6108d0565b6040516101f79190610ac5565b60405180910390f35b6000805461020d90610c06565b80601f016020809104026020016040519081016040528092919081815260200182805461023990610c06565b80156102865780601f1061025b57610100808354040283529160200191610286565b820191906000526020600020905b81548152906001019060200180831161026957829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161036e9190610ac5565b60405180910390a36001905092915050565b60035481565b600081600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561040a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161040190610c83565b60405180910390fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156104c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c090610cef565b60405180910390fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546105189190610d3e565b9250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461056e9190610d72565b9250508190555081600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106019190610d3e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106659190610ac5565b60405180910390a3600190509392505050565b600260009054906101000a900460ff1681565b60046020528060005260406000206000915090505481565b600180546106b090610c06565b80601f01602080910402602001604051908101604052809291908181526020018280546106dc90610c06565b80156107295780601f106106fe57610100808354040283529160200191610729565b820191906000526020600020905b81548152906001019060200180831161070c57829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156107b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ac90610c83565b60405180910390fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108049190610d3e565b9250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461085a9190610d72565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516108be9190610ac5565b60405180910390a36001905092915050565b6005602052816000526040600020602052806000526040600020600091509150505481565b600081519050919050565b600082825260208201905092915050565b60005b8381101561092f578082015181840152602081019050610914565b60008484015250505050565b6000601f19601f8301169050919050565b6000610957826108f5565b6109618185610900565b9350610971818560208601610911565b61097a8161093b565b840191505092915050565b6000602082019050818103600083015261099f818461094c565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109d7826109ac565b9050919050565b6109e7816109cc565b81146109f257600080fd5b50565b600081359050610a04816109de565b92915050565b6000819050919050565b610a1d81610a0a565b8114610a2857600080fd5b50565b600081359050610a3a81610a14565b92915050565b60008060408385031215610a5757610a566109a7565b5b6000610a65858286016109f5565b9250506020610a7685828601610a2b565b9150509250929050565b60008115159050919050565b610a9581610a80565b82525050565b6000602082019050610ab06000830184610a8c565b92915050565b610abf81610a0a565b82525050565b6000602082019050610ada6000830184610ab6565b92915050565b600080600060608486031215610af957610af86109a7565b5b6000610b07868287016109f5565b9350506020610b18868287016109f5565b9250506040610b2986828701610a2b565b9150509250925092565b600060ff82169050919050565b610b4981610b33565b82525050565b6000602082019050610b646000830184610b40565b92915050565b600060208284031215610b8057610b7f6109a7565b5b6000610b8e848285016109f5565b91505092915050565b60008060408385031215610bae57610bad6109a7565b5b6000610bbc858286016109f5565b9250506020610bcd858286016109f5565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680610c1e57607f821691505b602082108103610c3157610c30610bd7565b5b50919050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b6000610c6d601483610900565b9150610c7882610c37565b602082019050919050565b60006020820190508181036000830152610c9c81610c60565b9050919050565b7f416c6c6f77616e63652065786365656465640000000000000000000000000000600082015250565b6000610cd9601283610900565b9150610ce482610ca3565b602082019050919050565b60006020820190508181036000830152610d0881610ccc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610d4982610a0a565b9150610d5483610a0a565b9250828203905081811115610d6c57610d6b610d0f565b5b92915050565b6000610d7d82610a0a565b9150610d8883610a0a565b9250828201905080821115610da057610d9f610d0f565b5b9291505056fea26469706673582212205e5b4e6009202ed6a767ad753a94f511f3265595766d8b580fd95cba0711e5e364736f6c63430008140033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063313ce56711610066578063313ce5671461013457806370a082311461015257806395d89b4114610182578063a9059cbb146101a0578063dd62ed3e146101d057610093565b806306fdde0314610098578063095ea7b3146100b657806318160ddd146100e657806323b872dd14610104575b600080fd5b6100a0610200565b6040516100ad9190610985565b60405180910390f35b6100d060048036038101906100cb9190610a40565b61028e565b6040516100dd9190610a9b565b60405180910390f35b6100ee610380565b6040516100fb9190610ac5565b60405180910390f35b61011e60048036038101906101199190610ae0565b610386565b60405161012b9190610a9b565b60405180910390f35b61013c610678565b6040516101499190610b4f565b60405180910390f35b61016c60048036038101906101679190610b6a565b61068b565b6040516101799190610ac5565b60405180910390f35b61018a6106a3565b6040516101979190610985565b60405180910390f35b6101ba60048036038101906101b59190610a40565b610731565b6040516101c79190610a9b565b60405180910390f35b6101ea60048036038101906101e59190610b97565b6108d0565b6040516101f79190610ac5565b60405180910390f35b6000805461020d90610c06565b80601f016020809104026020016040519081016040528092919081815260200182805461023990610c06565b80156102865780601f1061025b57610100808354040283529160200191610286565b820191906000526020600020905b81548152906001019060200180831161026957829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161036e9190610ac5565b60405180910390a36001905092915050565b60035481565b600081600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561040a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161040190610c83565b60405180910390fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156104c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c090610cef565b60405180910390fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546105189190610d3e565b9250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461056e9190610d72565b9250508190555081600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106019190610d3e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516106659190610ac5565b60405180910390a3600190509392505050565b600260009054906101000a900460ff1681565b60046020528060005260406000206000915090505481565b600180546106b090610c06565b80601f01602080910402602001604051908101604052809291908181526020018280546106dc90610c06565b80156107295780601f106106fe57610100808354040283529160200191610729565b820191906000526020600020905b81548152906001019060200180831161070c57829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156107b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ac90610c83565b60405180910390fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108049190610d3e565b9250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461085a9190610d72565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516108be9190610ac5565b60405180910390a36001905092915050565b6005602052816000526040600020602052806000526040600020600091509150505481565b600081519050919050565b600082825260208201905092915050565b60005b8381101561092f578082015181840152602081019050610914565b60008484015250505050565b6000601f19601f8301169050919050565b6000610957826108f5565b6109618185610900565b9350610971818560208601610911565b61097a8161093b565b840191505092915050565b6000602082019050818103600083015261099f818461094c565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109d7826109ac565b9050919050565b6109e7816109cc565b81146109f257600080fd5b50565b600081359050610a04816109de565b92915050565b6000819050919050565b610a1d81610a0a565b8114610a2857600080fd5b50565b600081359050610a3a81610a14565b92915050565b60008060408385031215610a5757610a566109a7565b5b6000610a65858286016109f5565b9250506020610a7685828601610a2b565b9150509250929050565b60008115159050919050565b610a9581610a80565b82525050565b6000602082019050610ab06000830184610a8c565b92915050565b610abf81610a0a565b82525050565b6000602082019050610ada6000830184610ab6565b92915050565b600080600060608486031215610af957610af86109a7565b5b6000610b07868287016109f5565b9350506020610b18868287016109f5565b9250506040610b2986828701610a2b565b9150509250925092565b600060ff82169050919050565b610b4981610b33565b82525050565b6000602082019050610b646000830184610b40565b92915050565b600060208284031215610b8057610b7f6109a7565b5b6000610b8e848285016109f5565b91505092915050565b60008060408385031215610bae57610bad6109a7565b5b6000610bbc858286016109f5565b9250506020610bcd858286016109f5565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680610c1e57607f821691505b602082108103610c3157610c30610bd7565b5b50919050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b6000610c6d601483610900565b9150610c7882610c37565b602082019050919050565b60006020820190508181036000830152610c9c81610c60565b9050919050565b7f416c6c6f77616e63652065786365656465640000000000000000000000000000600082015250565b6000610cd9601283610900565b9150610ce482610ca3565b602082019050919050565b60006020820190508181036000830152610d0881610ccc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610d4982610a0a565b9150610d5483610a0a565b9250828203905081811115610d6c57610d6b610d0f565b5b92915050565b6000610d7d82610a0a565b9150610d8883610a0a565b9250828201905080821115610da057610d9f610d0f565b5b9291505056fea26469706673582212205e5b4e6009202ed6a767ad753a94f511f3265595766d8b580fd95cba0711e5e364736f6c63430008140033", + "bytecode": "0x608060405234610133576100135f54610137565b601f81116100ec575b507f4d7920546f6b656e0000000000000000000000000000000000000000000000105f5560015461004c90610137565b601f81116100a4575b6006624d544b60e81b01600155601260ff19600254161760025569d3c21bcecceda1000000600355335f52600460205269d3c21bcecceda100000060405f205560405161068390816101708239f35b60015f52601f0160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6908101905b8181106100e15750610055565b5f81556001016100d4565b5f8052601f0160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563908101905b818110610128575061001c565b5f815560010161011b565b5f80fd5b90600182811c92168015610165575b602083101461015157565b634e487b7160e01b5f52602260045260245ffd5b91607f169161014656fe60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146104b4578063095ea7b31461043b57806318160ddd1461041e57806323b872dd146102ed578063313ce567146102cd57806370a082311461029557806395d89b4114610177578063a9059cbb146100d05763dd62ed3e1461007c575f80fd5b346100cc5760403660031901126100cc576100956105b0565b61009d6105c6565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100cc5760403660031901126100cc576100e96105b0565b60243590335f5260046020526101058260405f205410156105dc565b335f52600460205260405f2061011c83825461061f565b905560018060a01b031690815f52600460205260405f2061013e828254610640565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100cc575f3660031901126100cc576040515f6001548060011c9060018116801561028b575b6020831081146102775782855290811561025b5750600114610205575b50819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60015f9081529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b828210610245575060209150820101826101bb565b6001816020925483858801015201910190610230565b90506020925060ff191682840152151560051b820101826101bb565b634e487b7160e01b5f52602260045260245ffd5b91607f169161019e565b346100cc5760203660031901126100cc576001600160a01b036102b66105b0565b165f526004602052602060405f2054604051908152f35b346100cc575f3660031901126100cc57602060ff60025416604051908152f35b346100cc5760603660031901126100cc576103066105b0565b61030e6105c6565b6044359160018060a01b031690815f5260046020526103338360405f205410156105dc565b5f82815260056020908152604080832033845290915290205483116103e45760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91835f526004825260405f2061038c86825461061f565b905560018060a01b031693845f526004825260405f206103ad828254610640565b90555f8481526005835260408082203383528452902080546103d090839061061f565b9055604051908152a3602060405160018152f35b60405162461bcd60e51b8152602060048201526012602482015271105b1b1bddd85b98d948195e18d95959195960721b6044820152606490fd5b346100cc575f3660031901126100cc576020600354604051908152f35b346100cc5760403660031901126100cc576104546105b0565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100cc575f3660031901126100cc576040515f5f548060011c9060018116801561057c575b6020831081146102775782855290811561025b57506001146105285750819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b5f8080529091507f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b828210610566575060209150820101826101bb565b6001816020925483858801015201910190610551565b91607f16916104da565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100cc57565b602435906001600160a01b03821682036100cc57565b156105e357565b60405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161062c57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161062c5756fea2646970667358221220487ad41778b113beec55fb8d8b4e047d9cf98497952cf4c232abbec0b15e821964736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146104b4578063095ea7b31461043b57806318160ddd1461041e57806323b872dd146102ed578063313ce567146102cd57806370a082311461029557806395d89b4114610177578063a9059cbb146100d05763dd62ed3e1461007c575f80fd5b346100cc5760403660031901126100cc576100956105b0565b61009d6105c6565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100cc5760403660031901126100cc576100e96105b0565b60243590335f5260046020526101058260405f205410156105dc565b335f52600460205260405f2061011c83825461061f565b905560018060a01b031690815f52600460205260405f2061013e828254610640565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100cc575f3660031901126100cc576040515f6001548060011c9060018116801561028b575b6020831081146102775782855290811561025b5750600114610205575b50819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60015f9081529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b828210610245575060209150820101826101bb565b6001816020925483858801015201910190610230565b90506020925060ff191682840152151560051b820101826101bb565b634e487b7160e01b5f52602260045260245ffd5b91607f169161019e565b346100cc5760203660031901126100cc576001600160a01b036102b66105b0565b165f526004602052602060405f2054604051908152f35b346100cc575f3660031901126100cc57602060ff60025416604051908152f35b346100cc5760603660031901126100cc576103066105b0565b61030e6105c6565b6044359160018060a01b031690815f5260046020526103338360405f205410156105dc565b5f82815260056020908152604080832033845290915290205483116103e45760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91835f526004825260405f2061038c86825461061f565b905560018060a01b031693845f526004825260405f206103ad828254610640565b90555f8481526005835260408082203383528452902080546103d090839061061f565b9055604051908152a3602060405160018152f35b60405162461bcd60e51b8152602060048201526012602482015271105b1b1bddd85b98d948195e18d95959195960721b6044820152606490fd5b346100cc575f3660031901126100cc576020600354604051908152f35b346100cc5760403660031901126100cc576104546105b0565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100cc575f3660031901126100cc576040515f5f548060011c9060018116801561057c575b6020831081146102775782855290811561025b57506001146105285750819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b5f8080529091507f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b828210610566575060209150820101826101bb565b6001816020925483858801015201910190610551565b91607f16916104da565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100cc57565b602435906001600160a01b03821682036100cc57565b156105e357565b60405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161062c57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161062c5756fea2646970667358221220487ad41778b113beec55fb8d8b4e047d9cf98497952cf4c232abbec0b15e821964736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/tests/contracts/account_abstraction/tokens/SimpleERC20.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/x/erc20/keeper/testdata/Bytes32MetadataToken.json b/x/erc20/keeper/testdata/Bytes32MetadataToken.json index ef3f2bcb9..1421a77c8 100644 --- a/x/erc20/keeper/testdata/Bytes32MetadataToken.json +++ b/x/erc20/keeper/testdata/Bytes32MetadataToken.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "Bytes32MetadataToken", "sourceName": "solidity/x/erc20/keeper/testdata/Bytes32MetadataToken.sol", "abi": [ @@ -558,8 +558,11 @@ "type": "event" } ], - "bytecode": "0x6080604052601260075534801561001557600080fd5b50604051604080611af88339810180604052810190808051906020019092919080519060200190929190505050600080600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806000819055505033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a28160058160001916905550806006816000191690555050506119bd8061013b6000396000f30060806040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461014357806307da68f514610176578063095ea7b31461018d57806313af4035146101f257806318160ddd1461023557806323b872dd14610260578063313ce567146102e557806340c10f191461031057806342966c681461035d57806370a082311461038a57806375f12b21146103e15780637a9e5e4b146104105780638da5cb5b1461045357806395d89b41146104aa5780639dc29fac146104dd578063a0712d681461052a578063a9059cbb14610557578063b753a98c146105bc578063bb35783b14610609578063be9a655514610676578063bf7e214f1461068d578063daea85c5146106e4578063dd62ed3e1461073f578063f2d5d56b146107b6575b600080fd5b34801561014f57600080fd5b50610158610803565b60405180826000191660001916815260200191505060405180910390f35b34801561018257600080fd5b5061018b610809565b005b34801561019957600080fd5b506101d8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061090c565b604051808215151515815260200191505060405180910390f35b3480156101fe57600080fd5b50610233600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061093c565b005b34801561024157600080fd5b5061024a610a1e565b6040518082815260200191505060405180910390f35b34801561026c57600080fd5b506102cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a27565b604051808215151515815260200191505060405180910390f35b3480156102f157600080fd5b506102fa610db1565b6040518082815260200191505060405180910390f35b34801561031c57600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610db7565b005b34801561036957600080fd5b5061038860048036038101908080359060200190929190505050610efc565b005b34801561039657600080fd5b506103cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f09565b6040518082815260200191505060405180910390f35b3480156103ed57600080fd5b506103f6610f52565b604051808215151515815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f65565b005b34801561045f57600080fd5b50610468611047565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104b657600080fd5b506104bf61106d565b60405180826000191660001916815260200191505060405180910390f35b3480156104e957600080fd5b50610528600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611073565b005b34801561053657600080fd5b506105556004803603810190808035906020019092919050505061139c565b005b34801561056357600080fd5b506105a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113a9565b604051808215151515815260200191505060405180910390f35b3480156105c857600080fd5b50610607600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113be565b005b34801561061557600080fd5b50610674600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ce565b005b34801561068257600080fd5b5061068b6113df565b005b34801561069957600080fd5b506106a26114e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106f057600080fd5b50610725600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611508565b604051808215151515815260200191505060405180910390f35b34801561074b57600080fd5b506107a0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611557565b6040518082815260200191505060405180910390f35b3480156107c257600080fd5b50610801600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115de565b005b60055481565b610837336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561084257600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46001600460146101000a81548160ff0219169083151502179055505050565b6000600460149054906101000a900460ff1615151561092a57600080fd5b6109348383611867565b905092915050565b61096a336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561097557600080fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b60008054905090565b6000600460149054906101000a900460ff16151515610a4557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610b1d57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b15610c2957610ba8600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610c72600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610cfe600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611975565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60075481565b610de5336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610df057600080fd5b600460149054906101000a900460ff16151515610e0c57600080fd5b610e55600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611975565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ea460005482611975565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040518082815260200191505060405180910390a25050565b610f063382611073565b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600460149054906101000a900460ff1681565b610f93336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610f9e57600080fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b6110a1336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b15156110ac57600080fd5b600460149054906101000a900460ff161515156110c857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111a057507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b156112ac5761122b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6112f5600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061134460005482611959565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a25050565b6113a63382610db7565b50565b60006113b6338484610a27565b905092915050565b6113c9338383610a27565b505050565b6113d9838383610a27565b50505050565b61140d336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561141857600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46000600460146101000a81548160ff0219169083151502179055505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460149054906101000a900460ff1615151561152657600080fd5b611550827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611867565b9050919050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6115e9823383610a27565b505050565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561162d5760019050611861565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561168c5760019050611861565b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156116ec5760009050611861565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019350505050602060405180830381600087803b15801561182357600080fd5b505af1158015611837573d6000803e3d6000fd5b505050506040513d602081101561184d57600080fd5b810190808051906020019092919050505090505b92915050565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000828284039150811115151561196f57600080fd5b92915050565b6000828284019150811015151561198b57600080fd5b929150505600a165627a7a723058204807a0c6598840a4406d9bb2cd7ed7aeae3f099b30d761b3112dffd43989d5760029", - "deployedBytecode": "0x60806040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461014357806307da68f514610176578063095ea7b31461018d57806313af4035146101f257806318160ddd1461023557806323b872dd14610260578063313ce567146102e557806340c10f191461031057806342966c681461035d57806370a082311461038a57806375f12b21146103e15780637a9e5e4b146104105780638da5cb5b1461045357806395d89b41146104aa5780639dc29fac146104dd578063a0712d681461052a578063a9059cbb14610557578063b753a98c146105bc578063bb35783b14610609578063be9a655514610676578063bf7e214f1461068d578063daea85c5146106e4578063dd62ed3e1461073f578063f2d5d56b146107b6575b600080fd5b34801561014f57600080fd5b50610158610803565b60405180826000191660001916815260200191505060405180910390f35b34801561018257600080fd5b5061018b610809565b005b34801561019957600080fd5b506101d8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061090c565b604051808215151515815260200191505060405180910390f35b3480156101fe57600080fd5b50610233600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061093c565b005b34801561024157600080fd5b5061024a610a1e565b6040518082815260200191505060405180910390f35b34801561026c57600080fd5b506102cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a27565b604051808215151515815260200191505060405180910390f35b3480156102f157600080fd5b506102fa610db1565b6040518082815260200191505060405180910390f35b34801561031c57600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610db7565b005b34801561036957600080fd5b5061038860048036038101908080359060200190929190505050610efc565b005b34801561039657600080fd5b506103cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f09565b6040518082815260200191505060405180910390f35b3480156103ed57600080fd5b506103f6610f52565b604051808215151515815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f65565b005b34801561045f57600080fd5b50610468611047565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104b657600080fd5b506104bf61106d565b60405180826000191660001916815260200191505060405180910390f35b3480156104e957600080fd5b50610528600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611073565b005b34801561053657600080fd5b506105556004803603810190808035906020019092919050505061139c565b005b34801561056357600080fd5b506105a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113a9565b604051808215151515815260200191505060405180910390f35b3480156105c857600080fd5b50610607600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113be565b005b34801561061557600080fd5b50610674600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ce565b005b34801561068257600080fd5b5061068b6113df565b005b34801561069957600080fd5b506106a26114e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106f057600080fd5b50610725600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611508565b604051808215151515815260200191505060405180910390f35b34801561074b57600080fd5b506107a0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611557565b6040518082815260200191505060405180910390f35b3480156107c257600080fd5b50610801600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115de565b005b60055481565b610837336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561084257600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46001600460146101000a81548160ff0219169083151502179055505050565b6000600460149054906101000a900460ff1615151561092a57600080fd5b6109348383611867565b905092915050565b61096a336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561097557600080fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b60008054905090565b6000600460149054906101000a900460ff16151515610a4557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610b1d57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b15610c2957610ba8600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610c72600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610cfe600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611975565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60075481565b610de5336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610df057600080fd5b600460149054906101000a900460ff16151515610e0c57600080fd5b610e55600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611975565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ea460005482611975565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040518082815260200191505060405180910390a25050565b610f063382611073565b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600460149054906101000a900460ff1681565b610f93336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610f9e57600080fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b6110a1336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b15156110ac57600080fd5b600460149054906101000a900460ff161515156110c857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111a057507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b156112ac5761122b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6112f5600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061134460005482611959565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a25050565b6113a63382610db7565b50565b60006113b6338484610a27565b905092915050565b6113c9338383610a27565b505050565b6113d9838383610a27565b50505050565b61140d336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561141857600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46000600460146101000a81548160ff0219169083151502179055505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460149054906101000a900460ff1615151561152657600080fd5b611550827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611867565b9050919050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6115e9823383610a27565b505050565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561162d5760019050611861565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561168c5760019050611861565b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156116ec5760009050611861565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019350505050602060405180830381600087803b15801561182357600080fd5b505af1158015611837573d6000803e3d6000fd5b505050506040513d602081101561184d57600080fd5b810190808051906020019092919050505090505b92915050565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000828284039150811115151561196f57600080fd5b92915050565b6000828284019150811015151561198b57600080fd5b929150505600a165627a7a723058204807a0c6598840a4406d9bb2cd7ed7aeae3f099b30d761b3112dffd43989d5760029", + "bytecode": "0x6080604052601260075534801561001557600080fd5b50604051604080611af88339810180604052810190808051906020019092919080519060200190929190505050600080600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806000819055505033600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a28160058160001916905550806006816000191690555050506119bd8061013b6000396000f30060806040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461014357806307da68f514610176578063095ea7b31461018d57806313af4035146101f257806318160ddd1461023557806323b872dd14610260578063313ce567146102e557806340c10f191461031057806342966c681461035d57806370a082311461038a57806375f12b21146103e15780637a9e5e4b146104105780638da5cb5b1461045357806395d89b41146104aa5780639dc29fac146104dd578063a0712d681461052a578063a9059cbb14610557578063b753a98c146105bc578063bb35783b14610609578063be9a655514610676578063bf7e214f1461068d578063daea85c5146106e4578063dd62ed3e1461073f578063f2d5d56b146107b6575b600080fd5b34801561014f57600080fd5b50610158610803565b60405180826000191660001916815260200191505060405180910390f35b34801561018257600080fd5b5061018b610809565b005b34801561019957600080fd5b506101d8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061090c565b604051808215151515815260200191505060405180910390f35b3480156101fe57600080fd5b50610233600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061093c565b005b34801561024157600080fd5b5061024a610a1e565b6040518082815260200191505060405180910390f35b34801561026c57600080fd5b506102cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a27565b604051808215151515815260200191505060405180910390f35b3480156102f157600080fd5b506102fa610db1565b6040518082815260200191505060405180910390f35b34801561031c57600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610db7565b005b34801561036957600080fd5b5061038860048036038101908080359060200190929190505050610efc565b005b34801561039657600080fd5b506103cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f09565b6040518082815260200191505060405180910390f35b3480156103ed57600080fd5b506103f6610f52565b604051808215151515815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f65565b005b34801561045f57600080fd5b50610468611047565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104b657600080fd5b506104bf61106d565b60405180826000191660001916815260200191505060405180910390f35b3480156104e957600080fd5b50610528600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611073565b005b34801561053657600080fd5b506105556004803603810190808035906020019092919050505061139c565b005b34801561056357600080fd5b506105a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113a9565b604051808215151515815260200191505060405180910390f35b3480156105c857600080fd5b50610607600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113be565b005b34801561061557600080fd5b50610674600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ce565b005b34801561068257600080fd5b5061068b6113df565b005b34801561069957600080fd5b506106a26114e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106f057600080fd5b50610725600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611508565b604051808215151515815260200191505060405180910390f35b34801561074b57600080fd5b506107a0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611557565b6040518082815260200191505060405180910390f35b3480156107c257600080fd5b50610801600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115de565b005b60055481565b610837336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561084257600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46001600460146101000a81548160ff0219169083151502179055505050565b6000600460149054906101000a900460ff1615151561092a57600080fd5b6109348383611867565b905092915050565b61096a336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561097557600080fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b60008054905090565b6000600460149054906101000a900460ff16151515610a4557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610b1d57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b15610c2957610ba8600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610c72600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610cfe600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611975565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60075481565b610de5336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610df057600080fd5b600460149054906101000a900460ff16151515610e0c57600080fd5b610e55600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611975565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ea460005482611975565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040518082815260200191505060405180910390a25050565b610f063382611073565b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600460149054906101000a900460ff1681565b610f93336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610f9e57600080fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b6110a1336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b15156110ac57600080fd5b600460149054906101000a900460ff161515156110c857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111a057507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b156112ac5761122b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6112f5600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061134460005482611959565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a25050565b6113a63382610db7565b50565b60006113b6338484610a27565b905092915050565b6113c9338383610a27565b505050565b6113d9838383610a27565b50505050565b61140d336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561141857600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46000600460146101000a81548160ff0219169083151502179055505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460149054906101000a900460ff1615151561152657600080fd5b611550827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611867565b9050919050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6115e9823383610a27565b505050565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561162d5760019050611861565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561168c5760019050611861565b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156116ec5760009050611861565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019350505050602060405180830381600087803b15801561182357600080fd5b505af1158015611837573d6000803e3d6000fd5b505050506040513d602081101561184d57600080fd5b810190808051906020019092919050505090505b92915050565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000828284039150811115151561196f57600080fd5b92915050565b6000828284019150811015151561198b57600080fd5b929150505600a165627a7a7230582018ae1658de4cee7c6655c5cc44e6f129c36236905f3ed749fa248ab484dc51570029", + "deployedBytecode": "0x60806040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461014357806307da68f514610176578063095ea7b31461018d57806313af4035146101f257806318160ddd1461023557806323b872dd14610260578063313ce567146102e557806340c10f191461031057806342966c681461035d57806370a082311461038a57806375f12b21146103e15780637a9e5e4b146104105780638da5cb5b1461045357806395d89b41146104aa5780639dc29fac146104dd578063a0712d681461052a578063a9059cbb14610557578063b753a98c146105bc578063bb35783b14610609578063be9a655514610676578063bf7e214f1461068d578063daea85c5146106e4578063dd62ed3e1461073f578063f2d5d56b146107b6575b600080fd5b34801561014f57600080fd5b50610158610803565b60405180826000191660001916815260200191505060405180910390f35b34801561018257600080fd5b5061018b610809565b005b34801561019957600080fd5b506101d8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061090c565b604051808215151515815260200191505060405180910390f35b3480156101fe57600080fd5b50610233600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061093c565b005b34801561024157600080fd5b5061024a610a1e565b6040518082815260200191505060405180910390f35b34801561026c57600080fd5b506102cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a27565b604051808215151515815260200191505060405180910390f35b3480156102f157600080fd5b506102fa610db1565b6040518082815260200191505060405180910390f35b34801561031c57600080fd5b5061035b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610db7565b005b34801561036957600080fd5b5061038860048036038101908080359060200190929190505050610efc565b005b34801561039657600080fd5b506103cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f09565b6040518082815260200191505060405180910390f35b3480156103ed57600080fd5b506103f6610f52565b604051808215151515815260200191505060405180910390f35b34801561041c57600080fd5b50610451600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f65565b005b34801561045f57600080fd5b50610468611047565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104b657600080fd5b506104bf61106d565b60405180826000191660001916815260200191505060405180910390f35b3480156104e957600080fd5b50610528600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611073565b005b34801561053657600080fd5b506105556004803603810190808035906020019092919050505061139c565b005b34801561056357600080fd5b506105a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113a9565b604051808215151515815260200191505060405180910390f35b3480156105c857600080fd5b50610607600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113be565b005b34801561061557600080fd5b50610674600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506113ce565b005b34801561068257600080fd5b5061068b6113df565b005b34801561069957600080fd5b506106a26114e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106f057600080fd5b50610725600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611508565b604051808215151515815260200191505060405180910390f35b34801561074b57600080fd5b506107a0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611557565b6040518082815260200191505060405180910390f35b3480156107c257600080fd5b50610801600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115de565b005b60055481565b610837336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561084257600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46001600460146101000a81548160ff0219169083151502179055505050565b6000600460149054906101000a900460ff1615151561092a57600080fd5b6109348383611867565b905092915050565b61096a336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561097557600080fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9460405160405180910390a250565b60008054905090565b6000600460149054906101000a900460ff16151515610a4557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610b1d57507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b15610c2957610ba8600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610c72600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611959565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610cfe600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611975565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60075481565b610de5336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610df057600080fd5b600460149054906101000a900460ff16151515610e0c57600080fd5b610e55600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611975565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ea460005482611975565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040518082815260200191505060405180910390a25050565b610f063382611073565b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600460149054906101000a900460ff1681565b610f93336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b1515610f9e57600080fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada460405160405180910390a250565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b6110a1336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b15156110ac57600080fd5b600460149054906101000a900460ff161515156110c857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111a057507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414155b156112ac5761122b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6112f5600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611959565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061134460005482611959565b6000819055508173ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5826040518082815260200191505060405180910390a25050565b6113a63382610db7565b50565b60006113b6338484610a27565b905092915050565b6113c9338383610a27565b505050565b6113d9838383610a27565b50505050565b61140d336000357fffffffff00000000000000000000000000000000000000000000000000000000166115ee565b151561141857600080fd5b60008060043591506024359050806000191682600019163373ffffffffffffffffffffffffffffffffffffffff166000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19163460003660405180848152602001806020018281038252848482818152602001925080828437820191505094505050505060405180910390a46000600460146101000a81548160ff0219169083151502179055505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460149054906101000a900460ff1615151561152657600080fd5b611550827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff611867565b9050919050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6115e9823383610a27565b505050565b60003073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561162d5760019050611861565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561168c5760019050611861565b600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156116ec5760009050611861565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b70096138430856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020019350505050602060405180830381600087803b15801561182357600080fd5b505af1158015611837573d6000803e3d6000fd5b505050506040513d602081101561184d57600080fd5b810190808051906020019092919050505090505b92915050565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000828284039150811115151561196f57600080fd5b92915050565b6000828284019150811015151561198b57600080fd5b929150505600a165627a7a7230582018ae1658de4cee7c6655c5cc44e6f129c36236905f3ed749fa248ab484dc51570029", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/x/erc20/keeper/testdata/Bytes32MetadataToken.sol", + "buildInfoId": "solc-0_4_22-c2ca4723fc9f314f95b3b254c471e2775e030459" +} \ No newline at end of file diff --git a/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json b/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json index e0ebe7dd3..1cd9be0ff 100644 --- a/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json +++ b/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20DirectBalanceManipulation", "sourceName": "solidity/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol", "abi": [ @@ -15,41 +15,135 @@ "type": "constructor" }, { - "anonymous": false, + "inputs": [], + "name": "AccessControlBadConfirmation", + "type": "error" + }, + { "inputs": [ { - "indexed": true, "internalType": "address", - "name": "owner", + "name": "account", "type": "address" }, { - "indexed": true, + "internalType": "bytes32", + "name": "neededRole", + "type": "bytes32" + } + ], + "name": "AccessControlUnauthorizedAccount", + "type": "error" + }, + { + "inputs": [ + { "internalType": "address", "name": "spender", "type": "address" }, { - "indexed": false, "internalType": "uint256", - "name": "value", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", "type": "uint256" } ], - "name": "Approval", - "type": "event" + "name": "ERC20InsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientBalance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "approver", + "type": "address" + } + ], + "name": "ERC20InvalidApprover", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "ERC20InvalidReceiver", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "ERC20InvalidSender", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "ERC20InvalidSpender", + "type": "error" }, { "anonymous": false, "inputs": [ { - "indexed": false, + "indexed": true, "internalType": "address", - "name": "account", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" } ], - "name": "Paused", + "name": "Approval", "type": "event" }, { @@ -152,19 +246,6 @@ "name": "Transfer", "type": "event" }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", @@ -178,32 +259,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [], - "name": "MINTER_ROLE", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "PAUSER_ROLE", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -237,7 +292,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -271,37 +326,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "burn", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "burnFrom", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [], "name": "decimals", @@ -315,30 +339,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { @@ -358,49 +358,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "index", - "type": "uint256" - } - ], - "name": "getRoleMember", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - } - ], - "name": "getRoleMemberCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -443,48 +400,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "addedValue", - "type": "uint256" - } - ], - "name": "increaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "mint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [], "name": "name", @@ -498,26 +413,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -527,7 +422,7 @@ }, { "internalType": "address", - "name": "account", + "name": "callerConfirmation", "type": "address" } ], @@ -637,7 +532,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -651,17 +546,13 @@ ], "stateMutability": "nonpayable", "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" } ], - "bytecode": "0x6080346200064f57601f62001f3738819003828101601f199081168501946001600160401b039490939092858711858810176200056a57808592604098895283396020948591810103126200064f5751936200005a62000654565b916200006562000654565b908351918383116200056a5760059283546001968782811c9216801562000644575b8a83101462000549578189849311620005f0575b5089908983116001146200058c5760009262000580575b5050600019600383901b1c191690861b1783555b80519384116200056a576006548581811c911680156200055f575b8882101462000549578493878211620004f0575b505086918684116001146200048957506000926200047d575b5050600019600383901b1c191690821b176006555b60ff19806007541660075560008052600084528560002033600052845260ff8660002054161562000442575b600080528184526200016533876000206200069e565b507f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a680600052600085528660002033600052855260ff8760002054161562000407575b600052818452620001bd33876000206200069e565b507f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a80600052600085528660002033600052855260ff87600020541615620003cc575b6000528184526200021533876000206200069e565b5060078054610100600160a81b031916744dc6ac40af078661fc43823086e1513635eeab1400179055600080805280855286812033825285528690205460ff161562000390575b506000805282526200027233856000206200069e565b5033156200034e575060ff60075416620002f857600454828101809111620002e2576000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef916004553383526002815284832084815401905584519384523393a3516117eb90816200072c8239f35b634e487b7160e01b600052601160045260246000fd5b60849083519062461bcd60e51b82526004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b6064925083519162461bcd60e51b8352600483015260248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b6000805260008452856000203360005284528186600020918254161790553333600060008051602062001f178339815191528180a4386200025c565b80600052600085528660002033600052855286600020838382541617905533338260008051602062001f17833981519152600080a462000200565b80600052600085528660002033600052855286600020838382541617905533338260008051602062001f17833981519152600080a4620001a8565b6000805260008452856000203360005284528560002082828254161790553333600060008051602062001f178339815191528180a46200014f565b0151905038806200010e565b859492919216916006600052876000209260005b89828210620004d95750508411620004bf575b505050811b0160065562000123565b015160001960f88460031b161c19169055388080620004b0565b83850151865588979095019493840193016200049d565b90919293506006600052876000209087808701821c8301938a88106200053f575b91879695949391899301901c01915b8281106200052f5750620000f5565b6000815586955087910162000520565b9350829362000511565b634e487b7160e01b600052602260045260246000fd5b90607f1690620000e1565b634e487b7160e01b600052604160045260246000fd5b015190503880620000b2565b908589941691876000528b6000209260005b8d828210620005d95750508411620005bf575b505050811b018355620000c6565b015160001960f88460031b161c19169055388080620005b1565b8385015186558c979095019493840193016200059e565b909150856000528960002089808501881c8201928c86106200063a575b918a918695949301891c01915b8281106200062a5750506200009b565b600081558594508a91016200061a565b925081926200060d565b91607f169162000087565b600080fd5b60408051919082016001600160401b038111838210176200056a57604052601e82527f455243323044697265637442616c616e63654d616e6970756c6174696f6e00006020830152565b91906001830160009082825280602052604082205415600014620007255784549468010000000000000000861015620007115760018601808255861015620006fd57836040949596828552602085200155549382526020522055600190565b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b83526041600452602483fd5b5092505056fe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610c615750816306fdde0314610bc0578163095ea7b314610b9657816318160ddd14610b7857816323b872dd14610b3b578163248a9ca314610b115781632f2ff15d14610a5d578163313ce56714610a4157816336568abe146109af578163395093511461095f5781633f4ba83a1461085557816340c10f19146106c057816342966c68146106a25781635c975abb1461067e57816370a082311461064657816379cc6790146106165781638456cb59146105105781639010d07c146104cf57816391d148541461048957816395d89b41146103a4578163a217fddf14610389578163a457c2d7146102e4578163a9059cbb14610271578163ca15c87314610249578163d53913931461020e578163d547741f146101cc57508063dd62ed3e146101845763e63ab1e91461015957600080fd5b34610180578160031936011261018057602090516000805160206117768339815191528152f35b5080fd5b5034610180578060031936011261018057806020926101a1610d1d565b6101a9610d38565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b9190503461020a578060031936011261020a57610207913561020260016101f1610d38565b938387528660205286200154610d4e565b6110ae565b80f35b8280fd5b505034610180578160031936011261018057602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b90503461020a57602036600319011261020a5760209282913581526001845220549051908152f35b8284346102e157816003193601126102e15761028b610d1d565b600754602435600181901c938482039260081c6001600160a01b03169183116102ce576020866102c787876102c1888833611158565b33611158565b5160018152f35b634e487b7160e01b815260118752602490fd5b80fd5b905082346102e157826003193601126102e1576102ff610d1d565b918360243592338152600360205281812060018060a01b0386168252602052205490828210610338576020856102c78585038733611318565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b50503461018057816003193601126101805751908152602090f35b9190503461020a578260031936011261020a57805191836006549060019082821c92828116801561047f575b602095868610821461046c575084885290811561044a575060011461040f575b61040b8686610401828b0383611076565b5191829182610cf1565b0390f35b929550600683528583205b828410610437575050508261040b946104019282010194386103f0565b805486850188015292860192810161041a565b60ff191687860152505050151560051b83010192506104018261040b386103f0565b634e487b7160e01b845260229052602483fd5b93607f16936103d0565b90503461020a578160031936011261020a578160209360ff926104aa610d38565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b90503461020a578160031936011261020a576020926104fa91358152600184528260243591206115dc565b905491519160018060a01b039160031b1c168152f35b90503461020a578260031936011261020a5760008051602061177683398151915283528260205281832033845260205260ff8284205416156105c6576007549060ff8216610590575060ff1916600117600755513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602090a180f35b606490602084519162461bcd60e51b8352820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152fd5b6020608492519162461bcd60e51b83528201526037602482015260008051602061175683398151915260448201527676652070617573657220726f6c6520746f20706175736560481b6064820152fd5b505034610180573660031901126102e157610207610632610d1d565b6024359061064182338361141a565b6114b2565b5050346101805760203660031901126101805760209181906001600160a01b0361066e610d1d565b1681526002845220549051908152f35b50503461018057816003193601126101805760209060ff6007541690519015158152f35b839034610180576020366003190112610180576102079035336114b2565b9190503461020a578060031936011261020a576106db610d1d565b90602435907f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68552602092858452818620338752845260ff828720541615610805576001600160a01b03169384156107c45760ff60075416610770579185939183610756836000805160206117968339815191529654611135565b90558585526002835280852082815401905551908152a380f35b83608492519162461bcd60e51b8352820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b83606492519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b815162461bcd60e51b8152808601859052603660248201526000805160206117568339815191526044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b6064820152608490fd5b90503461020a578260031936011261020a5760008051602061177683398151915283528260205281832033845260205260ff82842054161561090d576007549060ff8216156108d3575060ff1916600755513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a180f35b606490602084519162461bcd60e51b8352820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152fd5b6020608492519162461bcd60e51b83528201526039602482015260008051602061175683398151915260448201527876652070617573657220726f6c6520746f20756e706175736560381b6064820152fd5b5050346101805780600319360112610180576102c76020926109a8610982610d1d565b338352600386528483206001600160a01b03821684528652918490205460243590611135565b9033611318565b839150346101805782600319360112610180576109ca610d38565b90336001600160a01b038316036109e6579061020791356110ae565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b5050346101805781600319360112610180576020905160128152f35b9190503461020a578060031936011261020a57610ac69135906001610a80610d38565b92808652602090868252610a98838589200154610d4e565b80875286825283872094838060a01b031694858852825260ff848820541615610aca575b86525283206115f4565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610abc565b90503461020a57602036600319011261020a57816020936001923581528085522001549051908152f35b505034610180576060366003190112610180576020906102c7610b5c610d1d565b610b64610d38565b60443591610b7383338361141a565b611158565b90503461020a578260031936011261020a5760209250549051908152f35b5050346101805780600319360112610180576020906102c7610bb6610d1d565b6024359033611318565b9190503461020a578260031936011261020a57805191836005549060019082821c928281168015610c57575b602095868610821461046c575084885290811561044a5750600114610c1c5761040b8686610401828b0383611076565b929550600583528583205b828410610c44575050508261040b946104019282010194386103f0565b8054868501880152928601928101610c27565b93607f1693610bec565b84913461020a57602036600319011261020a573563ffffffff60e01b811680910361020a5760209250635a05180f60e01b8114908115610ca3575b5015158152f35b637965db0b60e01b811491508115610cbd575b5083610c9c565b6301ffc9a760e01b14905083610cb6565b60005b838110610ce15750506000910152565b8181015183820152602001610cd1565b60409160208252610d118151809281602086015260208686019101610cce565b601f01601f1916010190565b600435906001600160a01b0382168203610d3357565b600080fd5b602435906001600160a01b0382168203610d3357565b6000818152602090808252604092838220338352835260ff848320541615610d765750505050565b835167ffffffffffffffff9190336060820184811183821017611062578752602a8252858201928736853782511561104e576030845382519160019283101561103a576078602185015360295b838111610fd05750610f8e5790875194608086019086821090821117610f7a57885260428552868501956060368837855115610f6657603087538551821015610f665790607860218701536041915b818311610ef857505050610eb657938593610e9c93610e8d604894610e6476020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b99610eb29b519a8b978801525180926037880190610cce565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190610cce565b01036028810185520183611076565b5162461bcd60e51b815291829160048301610cf1565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f81166010811015610f52576f181899199a1a9b1b9c1cb0b131b232b360811b901a610f2885896115b5565b5360041c928015610f3e57600019019190610e12565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f81166010811015611026576f181899199a1a9b1b9c1cb0b131b232b360811b901a610ffe83876115b5565b5360041c9080156110125760001901610dc3565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90601f8019910116810190811067ffffffffffffffff82111761109857604052565b634e487b7160e01b600052604160045260246000fd5b9060406110eb92600090808252816020528282209360018060a01b03169384835260205260ff83832054166110ee575b8152600160205220611679565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a46110de565b9190820180921161114257565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b039081169182156112c557169182156112745760ff6007541661121c57600082815260026020526040812054918083106111c8576040828260008051602061179683398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156113c957169182156113795760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b0380831660005260036020526040600020908216600052602052604060002054926000198403611452575b50505050565b80841061146d57611464930391611318565b3880808061144c565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b031680156115665760ff6007541661121c57806000526002602052604060002054918083106115165760208160008051602061179683398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b9081518110156115c6570160200190565b634e487b7160e01b600052603260045260246000fd5b80548210156115c65760005260206000200190600090565b9190600183016000908282528060205260408220541560001461167357845494600160401b86101561165f578361164f611638886001604098999a018555846115dc565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b9060018201906000928184528260205260408420549081151560001461174e576000199180830181811161173a5782549084820191821161101257808203611705575b505050805480156116f1578201916116d483836115dc565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b61172561171561163893866115dc565b90549060031b1c928392866115dc565b905586528460205260408620553880806116bc565b634e487b7160e01b87526011600452602487fd5b505050509056fe45524332305072657365744d696e7465725061757365723a206d75737420686165d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862addf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220487a5706488fe467f28c39bcfc12e0aef2533a87fec1d9e291529501d9b86f3964736f6c634300081400332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "deployedBytecode": "0x608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610c615750816306fdde0314610bc0578163095ea7b314610b9657816318160ddd14610b7857816323b872dd14610b3b578163248a9ca314610b115781632f2ff15d14610a5d578163313ce56714610a4157816336568abe146109af578163395093511461095f5781633f4ba83a1461085557816340c10f19146106c057816342966c68146106a25781635c975abb1461067e57816370a082311461064657816379cc6790146106165781638456cb59146105105781639010d07c146104cf57816391d148541461048957816395d89b41146103a4578163a217fddf14610389578163a457c2d7146102e4578163a9059cbb14610271578163ca15c87314610249578163d53913931461020e578163d547741f146101cc57508063dd62ed3e146101845763e63ab1e91461015957600080fd5b34610180578160031936011261018057602090516000805160206117768339815191528152f35b5080fd5b5034610180578060031936011261018057806020926101a1610d1d565b6101a9610d38565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b9190503461020a578060031936011261020a57610207913561020260016101f1610d38565b938387528660205286200154610d4e565b6110ae565b80f35b8280fd5b505034610180578160031936011261018057602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b90503461020a57602036600319011261020a5760209282913581526001845220549051908152f35b8284346102e157816003193601126102e15761028b610d1d565b600754602435600181901c938482039260081c6001600160a01b03169183116102ce576020866102c787876102c1888833611158565b33611158565b5160018152f35b634e487b7160e01b815260118752602490fd5b80fd5b905082346102e157826003193601126102e1576102ff610d1d565b918360243592338152600360205281812060018060a01b0386168252602052205490828210610338576020856102c78585038733611318565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b50503461018057816003193601126101805751908152602090f35b9190503461020a578260031936011261020a57805191836006549060019082821c92828116801561047f575b602095868610821461046c575084885290811561044a575060011461040f575b61040b8686610401828b0383611076565b5191829182610cf1565b0390f35b929550600683528583205b828410610437575050508261040b946104019282010194386103f0565b805486850188015292860192810161041a565b60ff191687860152505050151560051b83010192506104018261040b386103f0565b634e487b7160e01b845260229052602483fd5b93607f16936103d0565b90503461020a578160031936011261020a578160209360ff926104aa610d38565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b90503461020a578160031936011261020a576020926104fa91358152600184528260243591206115dc565b905491519160018060a01b039160031b1c168152f35b90503461020a578260031936011261020a5760008051602061177683398151915283528260205281832033845260205260ff8284205416156105c6576007549060ff8216610590575060ff1916600117600755513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602090a180f35b606490602084519162461bcd60e51b8352820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152fd5b6020608492519162461bcd60e51b83528201526037602482015260008051602061175683398151915260448201527676652070617573657220726f6c6520746f20706175736560481b6064820152fd5b505034610180573660031901126102e157610207610632610d1d565b6024359061064182338361141a565b6114b2565b5050346101805760203660031901126101805760209181906001600160a01b0361066e610d1d565b1681526002845220549051908152f35b50503461018057816003193601126101805760209060ff6007541690519015158152f35b839034610180576020366003190112610180576102079035336114b2565b9190503461020a578060031936011261020a576106db610d1d565b90602435907f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68552602092858452818620338752845260ff828720541615610805576001600160a01b03169384156107c45760ff60075416610770579185939183610756836000805160206117968339815191529654611135565b90558585526002835280852082815401905551908152a380f35b83608492519162461bcd60e51b8352820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b83606492519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b815162461bcd60e51b8152808601859052603660248201526000805160206117568339815191526044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b6064820152608490fd5b90503461020a578260031936011261020a5760008051602061177683398151915283528260205281832033845260205260ff82842054161561090d576007549060ff8216156108d3575060ff1916600755513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a180f35b606490602084519162461bcd60e51b8352820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152fd5b6020608492519162461bcd60e51b83528201526039602482015260008051602061175683398151915260448201527876652070617573657220726f6c6520746f20756e706175736560381b6064820152fd5b5050346101805780600319360112610180576102c76020926109a8610982610d1d565b338352600386528483206001600160a01b03821684528652918490205460243590611135565b9033611318565b839150346101805782600319360112610180576109ca610d38565b90336001600160a01b038316036109e6579061020791356110ae565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b5050346101805781600319360112610180576020905160128152f35b9190503461020a578060031936011261020a57610ac69135906001610a80610d38565b92808652602090868252610a98838589200154610d4e565b80875286825283872094838060a01b031694858852825260ff848820541615610aca575b86525283206115f4565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610abc565b90503461020a57602036600319011261020a57816020936001923581528085522001549051908152f35b505034610180576060366003190112610180576020906102c7610b5c610d1d565b610b64610d38565b60443591610b7383338361141a565b611158565b90503461020a578260031936011261020a5760209250549051908152f35b5050346101805780600319360112610180576020906102c7610bb6610d1d565b6024359033611318565b9190503461020a578260031936011261020a57805191836005549060019082821c928281168015610c57575b602095868610821461046c575084885290811561044a5750600114610c1c5761040b8686610401828b0383611076565b929550600583528583205b828410610c44575050508261040b946104019282010194386103f0565b8054868501880152928601928101610c27565b93607f1693610bec565b84913461020a57602036600319011261020a573563ffffffff60e01b811680910361020a5760209250635a05180f60e01b8114908115610ca3575b5015158152f35b637965db0b60e01b811491508115610cbd575b5083610c9c565b6301ffc9a760e01b14905083610cb6565b60005b838110610ce15750506000910152565b8181015183820152602001610cd1565b60409160208252610d118151809281602086015260208686019101610cce565b601f01601f1916010190565b600435906001600160a01b0382168203610d3357565b600080fd5b602435906001600160a01b0382168203610d3357565b6000818152602090808252604092838220338352835260ff848320541615610d765750505050565b835167ffffffffffffffff9190336060820184811183821017611062578752602a8252858201928736853782511561104e576030845382519160019283101561103a576078602185015360295b838111610fd05750610f8e5790875194608086019086821090821117610f7a57885260428552868501956060368837855115610f6657603087538551821015610f665790607860218701536041915b818311610ef857505050610eb657938593610e9c93610e8d604894610e6476020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b99610eb29b519a8b978801525180926037880190610cce565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190610cce565b01036028810185520183611076565b5162461bcd60e51b815291829160048301610cf1565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f81166010811015610f52576f181899199a1a9b1b9c1cb0b131b232b360811b901a610f2885896115b5565b5360041c928015610f3e57600019019190610e12565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f81166010811015611026576f181899199a1a9b1b9c1cb0b131b232b360811b901a610ffe83876115b5565b5360041c9080156110125760001901610dc3565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90601f8019910116810190811067ffffffffffffffff82111761109857604052565b634e487b7160e01b600052604160045260246000fd5b9060406110eb92600090808252816020528282209360018060a01b03169384835260205260ff83832054166110ee575b8152600160205220611679565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a46110de565b9190820180921161114257565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b039081169182156112c557169182156112745760ff6007541661121c57600082815260026020526040812054918083106111c8576040828260008051602061179683398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156113c957169182156113795760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b0380831660005260036020526040600020908216600052602052604060002054926000198403611452575b50505050565b80841061146d57611464930391611318565b3880808061144c565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b031680156115665760ff6007541661121c57806000526002602052604060002054918083106115165760208160008051602061179683398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b9081518110156115c6570160200190565b634e487b7160e01b600052603260045260246000fd5b80548210156115c65760005260206000200190600090565b9190600183016000908282528060205260408220541560001461167357845494600160401b86101561165f578361164f611638886001604098999a018555846115dc565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b9060018201906000928184528260205260408420549081151560001461174e576000199180830181811161173a5782549084820191821161101257808203611705575b505050805480156116f1578201916116d483836115dc565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b61172561171561163893866115dc565b90549060031b1c928392866115dc565b905586528460205260408620553880806116bc565b634e487b7160e01b87526011600452602487fd5b505050509056fe45524332305072657365744d696e7465725061757365723a206d75737420686165d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862addf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220487a5706488fe467f28c39bcfc12e0aef2533a87fec1d9e291529501d9b86f3964736f6c63430008140033", + "bytecode": "0x6080604052346103b257604051601f610e3538819003918201601f19168301916001600160401b038311848410176102c3578084926020946040528339810103126103b2575161004d6103b6565b906100566103b6565b82519091906001600160401b0381116102c357600354600181811c911680156103a8575b60208210146102a557601f8111610345575b506020601f82116001146102e257819293945f926102d7575b50508160011b915f199060031b1c1916176003555b81516001600160401b0381116102c357600454600181811c911680156102b9575b60208210146102a557601f8111610242575b50602092601f82116001146101e157928192935f926101d6575b50508160011b915f199060031b1c1916176004555b600680546001600160a01b031916734dc6ac40af078661fc43823086e1513635eeab1417905561014b336103ff565b5033156101c3576002548181018091116101af57600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a360405161098c90816104898239f35b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b015190505f80610107565b601f1982169360045f52805f20915f5b86811061022a5750836001959610610212575b505050811b0160045561011c565b01515f1960f88460031b161c191690555f8080610204565b919260206001819286850151815501940192016101f1565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c8101916020841061029b575b601f0160051c01905b81811061029057506100ed565b5f8155600101610283565b909150819061027a565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100db565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100a5565b601f1982169060035f52805f20915f5b81811061032d57509583600195969710610315575b505050811b016003556100ba565b01515f1960f88460031b161c191690555f8080610307565b9192602060018192868b0151815501940192016102f2565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061039e575b601f0160051c01905b818110610393575061008c565b5f8155600101610386565b909150819061037d565b90607f169061007a565b5f80fd5b60408051919082016001600160401b038111838210176102c357604052601e82527f455243323044697265637442616c616e63654d616e6970756c6174696f6e00006020830152565b6001600160a01b0381165f9081525f516020610e155f395f51905f52602052604090205460ff16610483576001600160a01b03165f8181525f516020610e155f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146106a65750806306fdde03146105d3578063095ea7b31461055157806318160ddd1461053457806323b872dd14610455578063248a9ca3146104225780632f2ff15d146103e4578063313ce567146103c957806336568abe1461038557806370a082311461034e57806391d148541461030557806395d89b41146101e9578063a217fddf146101cf578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e5610723565b6100ed610739565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f610739565b9061015e610159825f526005602052600160405f20015490565b61080c565b6108d2565b005b3461011c57604036600319011261011c5761017e610723565b602435908160011c9060018060a01b03600654168284039384116101bb576101b0936101aa913361074f565b3361074f565b602060405160018152f35b634e487b7160e01b5f52601160045260245ffd5b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102fb575b6020831081146102e7578285529081156102cb5750600114610275575b50819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102b55750602091508201018261022d565b60018160209254838588010152019101906102a0565b90506020925060ff191682840152151560051b8201018261022d565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610210565b3461011c57604036600319011261011c5761031e610739565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361036f610723565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761039e610739565b336001600160a01b038216036103ba57610163906004356108d2565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c57610163600435610403610739565b9061041d610159825f526005602052600160405f20015490565b610846565b3461011c57602036600319011261011c57602061044d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761046e610723565b610476610739565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f1981106104b4575b506101b0935061074f565b8381106105195784156105065733156104f3576101b0945f52600160205260405f2060018060a01b0333165f526020528360405f2091039055846104a9565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c5761056a610723565b602435903315610506576001600160a01b03169081156104f357335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b3461011c575f36600319011261011c576040515f6003548060011c9060018116801561069c575b6020831081146102e7578285529081156102cb57506001146106465750819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b8282106106865750602091508201018261022d565b6001816020925483858801015201910190610671565b91607f16916105fa565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b81149081156106e8575b5015158152f35b6301ffc9a760e01b149050836106e1565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b03169081156107f9576001600160a01b03169182156107e657815f525f60205260405f20548181106107cd57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156108305750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff166108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16156108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a460019056fea2646970667358221220f51f16e074dc0b9a8d059ca87ce327a2c011792bb8461b7f9233f84152cb304564736f6c634300081c003305b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146106a65750806306fdde03146105d3578063095ea7b31461055157806318160ddd1461053457806323b872dd14610455578063248a9ca3146104225780632f2ff15d146103e4578063313ce567146103c957806336568abe1461038557806370a082311461034e57806391d148541461030557806395d89b41146101e9578063a217fddf146101cf578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e5610723565b6100ed610739565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f610739565b9061015e610159825f526005602052600160405f20015490565b61080c565b6108d2565b005b3461011c57604036600319011261011c5761017e610723565b602435908160011c9060018060a01b03600654168284039384116101bb576101b0936101aa913361074f565b3361074f565b602060405160018152f35b634e487b7160e01b5f52601160045260245ffd5b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102fb575b6020831081146102e7578285529081156102cb5750600114610275575b50819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102b55750602091508201018261022d565b60018160209254838588010152019101906102a0565b90506020925060ff191682840152151560051b8201018261022d565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610210565b3461011c57604036600319011261011c5761031e610739565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361036f610723565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761039e610739565b336001600160a01b038216036103ba57610163906004356108d2565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c57610163600435610403610739565b9061041d610159825f526005602052600160405f20015490565b610846565b3461011c57602036600319011261011c57602061044d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761046e610723565b610476610739565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f1981106104b4575b506101b0935061074f565b8381106105195784156105065733156104f3576101b0945f52600160205260405f2060018060a01b0333165f526020528360405f2091039055846104a9565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c5761056a610723565b602435903315610506576001600160a01b03169081156104f357335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b3461011c575f36600319011261011c576040515f6003548060011c9060018116801561069c575b6020831081146102e7578285529081156102cb57506001146106465750819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b8282106106865750602091508201018261022d565b6001816020925483858801015201910190610671565b91607f16916105fa565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b81149081156106e8575b5015158152f35b6301ffc9a760e01b149050836106e1565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b03169081156107f9576001600160a01b03169182156107e657815f525f60205260405f20548181106107cd57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156108305750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff166108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16156108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a460019056fea2646970667358221220f51f16e074dc0b9a8d059ca87ce327a2c011792bb8461b7f9233f84152cb304564736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json b/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json index 2c92d92cc..06098ad0c 100644 --- a/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json +++ b/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "ERC20MaliciousDelayed", "sourceName": "solidity/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol", "abi": [ @@ -15,41 +15,135 @@ "type": "constructor" }, { - "anonymous": false, + "inputs": [], + "name": "AccessControlBadConfirmation", + "type": "error" + }, + { "inputs": [ { - "indexed": true, "internalType": "address", - "name": "owner", + "name": "account", "type": "address" }, { - "indexed": true, + "internalType": "bytes32", + "name": "neededRole", + "type": "bytes32" + } + ], + "name": "AccessControlUnauthorizedAccount", + "type": "error" + }, + { + "inputs": [ + { "internalType": "address", "name": "spender", "type": "address" }, { - "indexed": false, "internalType": "uint256", - "name": "value", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", "type": "uint256" } ], - "name": "Approval", - "type": "event" + "name": "ERC20InsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "needed", + "type": "uint256" + } + ], + "name": "ERC20InsufficientBalance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "approver", + "type": "address" + } + ], + "name": "ERC20InvalidApprover", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "ERC20InvalidReceiver", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "ERC20InvalidSender", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "ERC20InvalidSpender", + "type": "error" }, { "anonymous": false, "inputs": [ { - "indexed": false, + "indexed": true, "internalType": "address", - "name": "account", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" } ], - "name": "Paused", + "name": "Approval", "type": "event" }, { @@ -152,19 +246,6 @@ "name": "Transfer", "type": "event" }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", @@ -178,32 +259,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [], - "name": "MINTER_ROLE", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "PAUSER_ROLE", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -237,7 +292,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -271,37 +326,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "burn", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "burnFrom", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [], "name": "decimals", @@ -315,30 +339,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "subtractedValue", - "type": "uint256" - } - ], - "name": "decreaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [ { @@ -358,49 +358,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "index", - "type": "uint256" - } - ], - "name": "getRoleMember", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes32", - "name": "role", - "type": "bytes32" - } - ], - "name": "getRoleMemberCount", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -443,48 +400,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "addedValue", - "type": "uint256" - } - ], - "name": "increaseAllowance", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "mint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, { "inputs": [], "name": "name", @@ -498,26 +413,6 @@ "stateMutability": "view", "type": "function" }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, { "inputs": [ { @@ -527,7 +422,7 @@ }, { "internalType": "address", - "name": "account", + "name": "callerConfirmation", "type": "address" } ], @@ -637,7 +532,7 @@ }, { "internalType": "uint256", - "name": "amount", + "name": "value", "type": "uint256" } ], @@ -651,17 +546,13 @@ ], "stateMutability": "nonpayable", "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" } ], - "bytecode": "0x608034620006ad57601f62001f4938819003828101601f199081168501946001600160401b03949093909285871185881017620005c85780859260409889528339602094859181010312620006ad5751936200005a620006b2565b91601583527f45524332304d616c6963696f757344656c617965640000000000000000000000858401526200008e620006b2565b90601582527f45524332304d414c4943494f555344454c41594544000000000000000000000086830152835191838311620005c85760059283546001968782811c92168015620006a2575b8a831014620005a75781898493116200064e575b508990898311600114620005ea57600092620005de575b5050600019600383901b1c191690861b1783555b8051938411620005c8576006548581811c91168015620005bd575b88821014620005a75784938782116200054e575b50508691868411600114620004e75750600092620004db575b5050600019600383901b1c191690821b176006555b60ff19806007541660075560008052600084528560002033600052845260ff86600020541615620004a0575b60008052818452620001b73387600020620006d2565b507f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a680600052600085528660002033600052855260ff8760002054161562000465575b6000528184526200020f3387600020620006d2565b507f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a80600052600085528660002033600052855260ff876000205416156200042a575b600052818452620002673387600020620006d2565b5060078054610100600160a81b031916744dc6ac40af078661fc43823086e1513635eeab1400179055670de0b6b3a7640000600855600080805280855286812033825285528690205460ff1615620003ee575b50600080528252620002d03385600020620006d2565b503315620003ac575060ff60075416620003565760045482810180911162000340576000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef916004553383526002815284832084815401905584519384523393a3516117c99081620007608239f35b634e487b7160e01b600052601160045260246000fd5b60849083519062461bcd60e51b82526004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b6064925083519162461bcd60e51b8352600483015260248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b6000805260008452856000203360005284528186600020918254161790553333600060008051602062001f298339815191528180a438620002ba565b80600052600085528660002033600052855286600020838382541617905533338260008051602062001f29833981519152600080a462000252565b80600052600085528660002033600052855286600020838382541617905533338260008051602062001f29833981519152600080a4620001fa565b6000805260008452856000203360005284528560002082828254161790553333600060008051602062001f298339815191528180a4620001a1565b01519050388062000160565b859492919216916006600052876000209260005b898282106200053757505084116200051d575b505050811b0160065562000175565b015160001960f88460031b161c191690553880806200050e565b8385015186558897909501949384019301620004fb565b90919293506006600052876000209087808701821c8301938a88106200059d575b91879695949391899301901c01915b8281106200058d575062000147565b600081558695508791016200057e565b935082936200056f565b634e487b7160e01b600052602260045260246000fd5b90607f169062000133565b634e487b7160e01b600052604160045260246000fd5b01519050388062000104565b908589941691876000528b6000209260005b8d8282106200063757505084116200061d575b505050811b01835562000118565b015160001960f88460031b161c191690553880806200060f565b8385015186558c97909501949384019301620005fc565b909150856000528960002089808501881c8201928c861062000698575b918a918695949301891c01915b82811062000688575050620000ed565b600081558594508a910162000678565b925081926200066b565b91607f1691620000d9565b600080fd5b60408051919082016001600160401b03811183821017620005c857604052565b919060018301600090828252806020526040822054156000146200075957845494680100000000000000008610156200074557600186018082558610156200073157836040949596828552602085200155549382526020522055600190565b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b83526041600452602483fd5b5092505056fe608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610c3f5750816306fdde0314610b9e578163095ea7b314610b7457816318160ddd14610b5657816323b872dd14610b19578163248a9ca314610aef5781632f2ff15d14610a3b578163313ce56714610a1f57816336568abe1461098d578163395093511461093d5781633f4ba83a1461083357816340c10f191461069e57816342966c68146106805781635c975abb1461065c57816370a082311461062457816379cc6790146105f45781638456cb59146104ee5781639010d07c146104ad57816391d148541461046757816395d89b4114610382578163a217fddf14610367578163a457c2d7146102bf578163a9059cbb14610271578163ca15c87314610249578163d53913931461020e578163d547741f146101cc57508063dd62ed3e146101845763e63ab1e91461015957600080fd5b34610180578160031936011261018057602090516000805160206117548339815191528152f35b5080fd5b5034610180578060031936011261018057806020926101a1610cfb565b6101a9610d16565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b9190503461020a578060031936011261020a57610207913561020260016101f1610d16565b938387528660205286200154610d2c565b61108c565b80f35b8280fd5b505034610180578160031936011261018057602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b90503461020a57602036600319011261020a5760209282913581526001845220549051908152f35b5050346101805780600319360112610180576020906102b8610291610cfb565b600754600880546102ae9290911c6001600160a01b0316836112f6565b6024359033611136565b5160018152f35b905082346103645782600319360112610364576102da610cfb565b918360243592338152600360205281812060018060a01b0386168252602052205490828210610313576020856102b885850387336112f6565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b50503461018057816003193601126101805751908152602090f35b9190503461020a578260031936011261020a57805191836006549060019082821c92828116801561045d575b602095868610821461044a575084885290811561042857506001146103ed575b6103e986866103df828b0383611054565b5191829182610ccf565b0390f35b929550600683528583205b82841061041557505050826103e9946103df9282010194386103ce565b80548685018801529286019281016103f8565b60ff191687860152505050151560051b83010192506103df826103e9386103ce565b634e487b7160e01b845260229052602483fd5b93607f16936103ae565b90503461020a578160031936011261020a578160209360ff92610488610d16565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b90503461020a578160031936011261020a576020926104d891358152600184528260243591206115ba565b905491519160018060a01b039160031b1c168152f35b90503461020a578260031936011261020a5760008051602061175483398151915283528260205281832033845260205260ff8284205416156105a4576007549060ff821661056e575060ff1916600117600755513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602090a180f35b606490602084519162461bcd60e51b8352820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152fd5b6020608492519162461bcd60e51b83528201526037602482015260008051602061173483398151915260448201527676652070617573657220726f6c6520746f20706175736560481b6064820152fd5b5050346101805736600319011261036457610207610610610cfb565b6024359061061f8233836113f8565b611490565b5050346101805760203660031901126101805760209181906001600160a01b0361064c610cfb565b1681526002845220549051908152f35b50503461018057816003193601126101805760209060ff6007541690519015158152f35b83903461018057602036600319011261018057610207903533611490565b9190503461020a578060031936011261020a576106b9610cfb565b90602435907f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68552602092858452818620338752845260ff8287205416156107e3576001600160a01b03169384156107a25760ff6007541661074e579185939183610734836000805160206117748339815191529654611113565b90558585526002835280852082815401905551908152a380f35b83608492519162461bcd60e51b8352820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b83606492519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b815162461bcd60e51b8152808601859052603660248201526000805160206117348339815191526044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b6064820152608490fd5b90503461020a578260031936011261020a5760008051602061175483398151915283528260205281832033845260205260ff8284205416156108eb576007549060ff8216156108b1575060ff1916600755513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a180f35b606490602084519162461bcd60e51b8352820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152fd5b6020608492519162461bcd60e51b83528201526039602482015260008051602061173483398151915260448201527876652070617573657220726f6c6520746f20756e706175736560381b6064820152fd5b5050346101805780600319360112610180576102b8602092610986610960610cfb565b338352600386528483206001600160a01b03821684528652918490205460243590611113565b90336112f6565b839150346101805782600319360112610180576109a8610d16565b90336001600160a01b038316036109c45790610207913561108c565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b5050346101805781600319360112610180576020905160128152f35b9190503461020a578060031936011261020a57610aa49135906001610a5e610d16565b92808652602090868252610a76838589200154610d2c565b80875286825283872094838060a01b031694858852825260ff848820541615610aa8575b86525283206115d2565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610a9a565b90503461020a57602036600319011261020a57816020936001923581528085522001549051908152f35b505034610180576060366003190112610180576020906102b8610b3a610cfb565b610b42610d16565b60443591610b518333836113f8565b611136565b90503461020a578260031936011261020a5760209250549051908152f35b5050346101805780600319360112610180576020906102b8610b94610cfb565b60243590336112f6565b9190503461020a578260031936011261020a57805191836005549060019082821c928281168015610c35575b602095868610821461044a57508488529081156104285750600114610bfa576103e986866103df828b0383611054565b929550600583528583205b828410610c2257505050826103e9946103df9282010194386103ce565b8054868501880152928601928101610c05565b93607f1693610bca565b84913461020a57602036600319011261020a573563ffffffff60e01b811680910361020a5760209250635a05180f60e01b8114908115610c81575b5015158152f35b637965db0b60e01b811491508115610c9b575b5083610c7a565b6301ffc9a760e01b14905083610c94565b60005b838110610cbf5750506000910152565b8181015183820152602001610caf565b60409160208252610cef8151809281602086015260208686019101610cac565b601f01601f1916010190565b600435906001600160a01b0382168203610d1157565b600080fd5b602435906001600160a01b0382168203610d1157565b6000818152602090808252604092838220338352835260ff848320541615610d545750505050565b835167ffffffffffffffff9190336060820184811183821017611040578752602a8252858201928736853782511561102c5760308453825191600192831015611018576078602185015360295b838111610fae5750610f6c5790875194608086019086821090821117610f5857885260428552868501956060368837855115610f4457603087538551821015610f445790607860218701536041915b818311610ed657505050610e9457938593610e7a93610e6b604894610e4276020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b99610e909b519a8b978801525180926037880190610cac565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190610cac565b01036028810185520183611054565b5162461bcd60e51b815291829160048301610ccf565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f81166010811015610f30576f181899199a1a9b1b9c1cb0b131b232b360811b901a610f068589611593565b5360041c928015610f1c57600019019190610df0565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f81166010811015611004576f181899199a1a9b1b9c1cb0b131b232b360811b901a610fdc8387611593565b5360041c908015610ff05760001901610da1565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90601f8019910116810190811067ffffffffffffffff82111761107657604052565b634e487b7160e01b600052604160045260246000fd5b9060406110c992600090808252816020528282209360018060a01b03169384835260205260ff83832054166110cc575b8152600160205220611657565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a46110bc565b9190820180921161112057565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b039081169182156112a357169182156112525760ff600754166111fa57600082815260026020526040812054918083106111a6576040828260008051602061177483398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156113a757169182156113575760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b0380831660005260036020526040600020908216600052602052604060002054926000198403611430575b50505050565b80841061144b576114429303916112f6565b3880808061142a565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b031680156115445760ff600754166111fa57806000526002602052604060002054918083106114f45760208160008051602061177483398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b9081518110156115a4570160200190565b634e487b7160e01b600052603260045260246000fd5b80548210156115a45760005260206000200190600090565b9190600183016000908282528060205260408220541560001461165157845494600160401b86101561163d578361162d611616886001604098999a018555846115ba565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b9060018201906000928184528260205260408420549081151560001461172c576000199180830181811161171857825490848201918211610ff0578082036116e3575b505050805480156116cf578201916116b283836115ba565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b6117036116f361161693866115ba565b90549060031b1c928392866115ba565b9055865284602052604086205538808061169a565b634e487b7160e01b87526011600452602487fd5b505050509056fe45524332305072657365744d696e7465725061757365723a206d75737420686165d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862addf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220ec73c04cf4f0e3e343c75efacb35e3cd998ec74c7392e9a70a70d062b788b23d64736f6c634300081400332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d", - "deployedBytecode": "0x608060408181526004918236101561001657600080fd5b600092833560e01c91826301ffc9a714610c3f5750816306fdde0314610b9e578163095ea7b314610b7457816318160ddd14610b5657816323b872dd14610b19578163248a9ca314610aef5781632f2ff15d14610a3b578163313ce56714610a1f57816336568abe1461098d578163395093511461093d5781633f4ba83a1461083357816340c10f191461069e57816342966c68146106805781635c975abb1461065c57816370a082311461062457816379cc6790146105f45781638456cb59146104ee5781639010d07c146104ad57816391d148541461046757816395d89b4114610382578163a217fddf14610367578163a457c2d7146102bf578163a9059cbb14610271578163ca15c87314610249578163d53913931461020e578163d547741f146101cc57508063dd62ed3e146101845763e63ab1e91461015957600080fd5b34610180578160031936011261018057602090516000805160206117548339815191528152f35b5080fd5b5034610180578060031936011261018057806020926101a1610cfb565b6101a9610d16565b6001600160a01b0391821683526003865283832091168252845220549051908152f35b9190503461020a578060031936011261020a57610207913561020260016101f1610d16565b938387528660205286200154610d2c565b61108c565b80f35b8280fd5b505034610180578160031936011261018057602090517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b90503461020a57602036600319011261020a5760209282913581526001845220549051908152f35b5050346101805780600319360112610180576020906102b8610291610cfb565b600754600880546102ae9290911c6001600160a01b0316836112f6565b6024359033611136565b5160018152f35b905082346103645782600319360112610364576102da610cfb565b918360243592338152600360205281812060018060a01b0386168252602052205490828210610313576020856102b885850387336112f6565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b50503461018057816003193601126101805751908152602090f35b9190503461020a578260031936011261020a57805191836006549060019082821c92828116801561045d575b602095868610821461044a575084885290811561042857506001146103ed575b6103e986866103df828b0383611054565b5191829182610ccf565b0390f35b929550600683528583205b82841061041557505050826103e9946103df9282010194386103ce565b80548685018801529286019281016103f8565b60ff191687860152505050151560051b83010192506103df826103e9386103ce565b634e487b7160e01b845260229052602483fd5b93607f16936103ae565b90503461020a578160031936011261020a578160209360ff92610488610d16565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b90503461020a578160031936011261020a576020926104d891358152600184528260243591206115ba565b905491519160018060a01b039160031b1c168152f35b90503461020a578260031936011261020a5760008051602061175483398151915283528260205281832033845260205260ff8284205416156105a4576007549060ff821661056e575060ff1916600117600755513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25890602090a180f35b606490602084519162461bcd60e51b8352820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152fd5b6020608492519162461bcd60e51b83528201526037602482015260008051602061173483398151915260448201527676652070617573657220726f6c6520746f20706175736560481b6064820152fd5b5050346101805736600319011261036457610207610610610cfb565b6024359061061f8233836113f8565b611490565b5050346101805760203660031901126101805760209181906001600160a01b0361064c610cfb565b1681526002845220549051908152f35b50503461018057816003193601126101805760209060ff6007541690519015158152f35b83903461018057602036600319011261018057610207903533611490565b9190503461020a578060031936011261020a576106b9610cfb565b90602435907f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68552602092858452818620338752845260ff8287205416156107e3576001600160a01b03169384156107a25760ff6007541661074e579185939183610734836000805160206117748339815191529654611113565b90558585526002835280852082815401905551908152a380f35b83608492519162461bcd60e51b8352820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152fd5b83606492519162461bcd60e51b8352820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152fd5b815162461bcd60e51b8152808601859052603660248201526000805160206117348339815191526044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b6064820152608490fd5b90503461020a578260031936011261020a5760008051602061175483398151915283528260205281832033845260205260ff8284205416156108eb576007549060ff8216156108b1575060ff1916600755513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa90602090a180f35b606490602084519162461bcd60e51b8352820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152fd5b6020608492519162461bcd60e51b83528201526039602482015260008051602061173483398151915260448201527876652070617573657220726f6c6520746f20756e706175736560381b6064820152fd5b5050346101805780600319360112610180576102b8602092610986610960610cfb565b338352600386528483206001600160a01b03821684528652918490205460243590611113565b90336112f6565b839150346101805782600319360112610180576109a8610d16565b90336001600160a01b038316036109c45790610207913561108c565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b5050346101805781600319360112610180576020905160128152f35b9190503461020a578060031936011261020a57610aa49135906001610a5e610d16565b92808652602090868252610a76838589200154610d2c565b80875286825283872094838060a01b031694858852825260ff848820541615610aa8575b86525283206115d2565b5080f35b8087528682528387208588528252838720805460ff1916841790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610a9a565b90503461020a57602036600319011261020a57816020936001923581528085522001549051908152f35b505034610180576060366003190112610180576020906102b8610b3a610cfb565b610b42610d16565b60443591610b518333836113f8565b611136565b90503461020a578260031936011261020a5760209250549051908152f35b5050346101805780600319360112610180576020906102b8610b94610cfb565b60243590336112f6565b9190503461020a578260031936011261020a57805191836005549060019082821c928281168015610c35575b602095868610821461044a57508488529081156104285750600114610bfa576103e986866103df828b0383611054565b929550600583528583205b828410610c2257505050826103e9946103df9282010194386103ce565b8054868501880152928601928101610c05565b93607f1693610bca565b84913461020a57602036600319011261020a573563ffffffff60e01b811680910361020a5760209250635a05180f60e01b8114908115610c81575b5015158152f35b637965db0b60e01b811491508115610c9b575b5083610c7a565b6301ffc9a760e01b14905083610c94565b60005b838110610cbf5750506000910152565b8181015183820152602001610caf565b60409160208252610cef8151809281602086015260208686019101610cac565b601f01601f1916010190565b600435906001600160a01b0382168203610d1157565b600080fd5b602435906001600160a01b0382168203610d1157565b6000818152602090808252604092838220338352835260ff848320541615610d545750505050565b835167ffffffffffffffff9190336060820184811183821017611040578752602a8252858201928736853782511561102c5760308453825191600192831015611018576078602185015360295b838111610fae5750610f6c5790875194608086019086821090821117610f5857885260428552868501956060368837855115610f4457603087538551821015610f445790607860218701536041915b818311610ed657505050610e9457938593610e7a93610e6b604894610e4276020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b99610e909b519a8b978801525180926037880190610cac565b8401917001034b99036b4b9b9b4b733903937b6329607d1b603784015251809386840190610cac565b01036028810185520183611054565b5162461bcd60e51b815291829160048301610ccf565b0390fd5b60648587519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f81166010811015610f30576f181899199a1a9b1b9c1cb0b131b232b360811b901a610f068589611593565b5360041c928015610f1c57600019019190610df0565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b634e487b7160e01b87526041600452602487fd5b60648789519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b90600f81166010811015611004576f181899199a1a9b1b9c1cb0b131b232b360811b901a610fdc8387611593565b5360041c908015610ff05760001901610da1565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b89526032600452602489fd5b634e487b7160e01b87526032600452602487fd5b634e487b7160e01b86526032600452602486fd5b634e487b7160e01b86526041600452602486fd5b90601f8019910116810190811067ffffffffffffffff82111761107657604052565b634e487b7160e01b600052604160045260246000fd5b9060406110c992600090808252816020528282209360018060a01b03169384835260205260ff83832054166110cc575b8152600160205220611657565b50565b8082528160205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a46110bc565b9190820180921161112057565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b039081169182156112a357169182156112525760ff600754166111fa57600082815260026020526040812054918083106111a6576040828260008051602061177483398151915295876020965260028652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156113a757169182156113575760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260038252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b9060018060a01b0380831660005260036020526040600020908216600052602052604060002054926000198403611430575b50505050565b80841061144b576114429303916112f6565b3880808061142a565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b6001600160a01b031680156115445760ff600754166111fa57806000526002602052604060002054918083106114f45760208160008051602061177483398151915292600095858752600284520360408620558060045403600455604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608490fd5b9081518110156115a4570160200190565b634e487b7160e01b600052603260045260246000fd5b80548210156115a45760005260206000200190600090565b9190600183016000908282528060205260408220541560001461165157845494600160401b86101561163d578361162d611616886001604098999a018555846115ba565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b9060018201906000928184528260205260408420549081151560001461172c576000199180830181811161171857825490848201918211610ff0578082036116e3575b505050805480156116cf578201916116b283836115ba565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b6117036116f361161693866115ba565b90549060031b1c928392866115ba565b9055865284602052604086205538808061169a565b634e487b7160e01b87526011600452602487fd5b505050509056fe45524332305072657365744d696e7465725061757365723a206d75737420686165d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862addf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220ec73c04cf4f0e3e343c75efacb35e3cd998ec74c7392e9a70a70d062b788b23d64736f6c63430008140033", + "bytecode": "0x6080604052346103fb57610e416020813803918261001c816103ff565b9384928339810103126103fb575161003460406103ff565b90601582527f45524332304d616c6963696f757344656c617965640000000000000000000000602083015261006960406103ff565b601581527f45524332304d414c4943494f555344454c415945440000000000000000000000602082015282519091906001600160401b03811161030c57600354600181811c911680156103f1575b60208210146102ee57601f811161038e575b506020601f821160011461032b57819293945f92610320575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161030c57600454600181811c91168015610302575b60208210146102ee57601f811161028b575b50602092601f821160011461022a57928192935f9261021f575b50508160011b915f199060031b1c1916176004555b600680546001600160a01b031916734dc6ac40af078661fc43823086e1513635eeab14179055670de0b6b3a764000060075561019433610424565b50331561020c576002548181018091116101f857600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a360405161097390816104ae8239f35b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b015190505f80610144565b601f1982169360045f52805f20915f5b868110610273575083600195961061025b575b505050811b01600455610159565b01515f1960f88460031b161c191690555f808061024d565b9192602060018192868501518155019401920161023a565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c810191602084106102e4575b601f0160051c01905b8181106102d9575061012a565b5f81556001016102cc565b90915081906102c3565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610118565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100e2565b601f1982169060035f52805f20915f5b8181106103765750958360019596971061035e575b505050811b016003556100f7565b01515f1960f88460031b161c191690555f8080610350565b9192602060018192868b01518155019401920161033b565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c810191602084106103e7575b601f0160051c01905b8181106103dc57506100c9565b5f81556001016103cf565b90915081906103c6565b90607f16906100b7565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761030c57604052565b6001600160a01b0381165f9081525f516020610e215f395f51905f52602052604090205460ff166104a8576001600160a01b03165f8181525f516020610e215f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461062a5750806306fdde0314610557578063095ea7b31461053157806318160ddd1461051457806323b872dd14610435578063248a9ca3146104025780632f2ff15d146103c4578063313ce567146103a957806336568abe1461036557806370a082311461032e57806391d14854146102e557806395d89b41146101c9578063a217fddf146101af578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e56106a7565b6100ed6106bd565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f6106bd565b9061015e610159825f526005602052600160405f20015490565b610790565b610856565b005b3461011c57604036600319011261011c576101a46101816106a7565b60065460075461019a916001600160a01b0316836108da565b60243590336106d3565b602060405160018152f35b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102db575b6020831081146102c7578285529081156102ab5750600114610255575b50819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102955750602091508201018261020d565b6001816020925483858801015201910190610280565b90506020925060ff191682840152151560051b8201018261020d565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101f0565b3461011c57604036600319011261011c576102fe6106bd565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361034f6106a7565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761037e6106bd565b336001600160a01b0382160361039a5761016390600435610856565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c576101636004356103e36106bd565b906103fd610159825f526005602052600160405f20015490565b6107ca565b3461011c57602036600319011261011c57602061042d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761044e6106a7565b6104566106bd565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610494575b506101a493506106d3565b8381106104f95784156104e65733156104d3576101a4945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610489565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c576101a461054d6106a7565b60243590336108da565b3461011c575f36600319011261011c576040515f6003548060011c90600181168015610620575b6020831081146102c7578285529081156102ab57506001146105ca5750819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b82821061060a5750602091508201018261020d565b60018160209254838588010152019101906105f5565b91607f169161057e565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b811490811561066c575b5015158152f35b6301ffc9a760e01b14905083610665565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b031690811561077d576001600160a01b031691821561076a57815f525f60205260405f205481811061075157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156107b45750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff1615610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b6001600160a01b03169081156104e6576001600160a01b03169182156104d35760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a356fea26469706673582212203cc72150e4e3453727c1486fd5d8b9476b0303ff8955102ec4330b4d49c81a5864736f6c634300081c003305b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461062a5750806306fdde0314610557578063095ea7b31461053157806318160ddd1461051457806323b872dd14610435578063248a9ca3146104025780632f2ff15d146103c4578063313ce567146103a957806336568abe1461036557806370a082311461032e57806391d14854146102e557806395d89b41146101c9578063a217fddf146101af578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e56106a7565b6100ed6106bd565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f6106bd565b9061015e610159825f526005602052600160405f20015490565b610790565b610856565b005b3461011c57604036600319011261011c576101a46101816106a7565b60065460075461019a916001600160a01b0316836108da565b60243590336106d3565b602060405160018152f35b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102db575b6020831081146102c7578285529081156102ab5750600114610255575b50819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102955750602091508201018261020d565b6001816020925483858801015201910190610280565b90506020925060ff191682840152151560051b8201018261020d565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101f0565b3461011c57604036600319011261011c576102fe6106bd565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361034f6106a7565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761037e6106bd565b336001600160a01b0382160361039a5761016390600435610856565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c576101636004356103e36106bd565b906103fd610159825f526005602052600160405f20015490565b6107ca565b3461011c57602036600319011261011c57602061042d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761044e6106a7565b6104566106bd565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610494575b506101a493506106d3565b8381106104f95784156104e65733156104d3576101a4945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610489565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c576101a461054d6106a7565b60243590336108da565b3461011c575f36600319011261011c576040515f6003548060011c90600181168015610620575b6020831081146102c7578285529081156102ab57506001146105ca5750819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b82821061060a5750602091508201018261020d565b60018160209254838588010152019101906105f5565b91607f169161057e565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b811490811561066c575b5015158152f35b6301ffc9a760e01b14905083610665565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b031690811561077d576001600160a01b031691821561076a57815f525f60205260405f205481811061075157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156107b45750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff1615610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b6001600160a01b03169081156104e6576001600160a01b03169182156104d35760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a356fea26469706673582212203cc72150e4e3453727c1486fd5d8b9476b0303ff8955102ec4330b4d49c81a5864736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file diff --git a/x/ibc/callbacks/testutil/CounterWithCallbacks.json b/x/ibc/callbacks/testutil/CounterWithCallbacks.json index 9b15d9a50..d25c40e24 100644 --- a/x/ibc/callbacks/testutil/CounterWithCallbacks.json +++ b/x/ibc/callbacks/testutil/CounterWithCallbacks.json @@ -1,5 +1,5 @@ { - "_format": "hh-sol-artifact-1", + "_format": "hh3-artifact-1", "contractName": "CounterWithCallbacks", "sourceName": "solidity/x/ibc/callbacks/testutil/CounterWithCallbacks.sol", "abi": [ @@ -282,8 +282,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234610016576105dd908161001c8239f35b600080fdfe6040608081526004908136101561001557600080fd5b600090813560e01c80631f8ee6031461034f57806339b4073a1461024c57806345f2d105146101e857806361bc221a146102305780638ada066e14610230578063c489744b146101e8578063dbdf7fce146101ce5763f5d82b6b1461007957600080fd5b346101ca57806003193601126101ca576100916104e0565b6024359060018060a01b03169180516323b872dd60e01b81523386820152306024820152826044820152602090818160648189895af180156101c057610185575b506100dd855461050c565b855533855260018152818520848652815281852080549084820180921161017257907f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535993929155855482519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f0823392a2338652600181528186208587528152818620549082519485528401523392a380f35b634e487b7160e01b875260118852602487fd5b8181813d83116101b9575b61019a8183610435565b810103126101b55751801515036101b157386100d2565b8480fd5b8580fd5b503d610190565b83513d88823e3d90fd5b5080fd5b82346101e557806003193601126101e55780805580f35b80fd5b50346101ca57806003193601126101ca57806020926102056104e0565b61020d6104f6565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b50346101ca57816003193601126101ca57602091549051908152f35b50823461034b5760a036600319011261034b5767ffffffffffffffff9080358281116101b15761027f903690830161046d565b916024358181116101b557610297903690840161046d565b926102a06104c9565b90606435838111610347576102b8903690860161046d565b95608435918483116103435761032461030a6103046102fe7f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f996103319736910161046d565b93610562565b98610562565b988351968796168652606060208701526060860190610582565b9184830390850152610582565b0390a361033e815461050c565b815580f35b8880fd5b8780fd5b8280fd5b5082903461034b57608036600319011261034b5767ffffffffffffffff82358181116101b157610382903690850161046d565b6024358281116101b557610399903690860161046d565b916103a26104c9565b606435828111610347577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c8936103f06103ea6103e46104079436908c0161046d565b92610562565b96610562565b968051948594168452806020850152830190610582565b0390a381549060001982019182136001166104225750815580f35b634e487b7160e01b835260119052602482fd5b90601f8019910116810190811067ffffffffffffffff82111761045757604052565b634e487b7160e01b600052604160045260246000fd5b81601f820112156104c45780359067ffffffffffffffff821161045757604051926104a2601f8401601f191660200185610435565b828452602083830101116104c457816000926020809301838601378301015290565b600080fd5b6044359067ffffffffffffffff821682036104c457565b600435906001600160a01b03821682036104c457565b602435906001600160a01b03821682036104c457565b906001820191600060018412911290801582169115161761052957565b634e487b7160e01b600052601160045260246000fd5b60005b8381106105525750506000910152565b8181015183820152602001610542565b61057a9060206040519282848094519384920161053f565b810103902090565b9060209161059b8151809281855285808601910161053f565b601f01601f191601019056fea2646970667358221220dbedd47e18fee307035f3e535245d5c88f15f8b2c71471301779b5234b00d88d64736f6c63430008140033", - "deployedBytecode": "0x6040608081526004908136101561001557600080fd5b600090813560e01c80631f8ee6031461034f57806339b4073a1461024c57806345f2d105146101e857806361bc221a146102305780638ada066e14610230578063c489744b146101e8578063dbdf7fce146101ce5763f5d82b6b1461007957600080fd5b346101ca57806003193601126101ca576100916104e0565b6024359060018060a01b03169180516323b872dd60e01b81523386820152306024820152826044820152602090818160648189895af180156101c057610185575b506100dd855461050c565b855533855260018152818520848652815281852080549084820180921161017257907f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535993929155855482519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f0823392a2338652600181528186208587528152818620549082519485528401523392a380f35b634e487b7160e01b875260118852602487fd5b8181813d83116101b9575b61019a8183610435565b810103126101b55751801515036101b157386100d2565b8480fd5b8580fd5b503d610190565b83513d88823e3d90fd5b5080fd5b82346101e557806003193601126101e55780805580f35b80fd5b50346101ca57806003193601126101ca57806020926102056104e0565b61020d6104f6565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b50346101ca57816003193601126101ca57602091549051908152f35b50823461034b5760a036600319011261034b5767ffffffffffffffff9080358281116101b15761027f903690830161046d565b916024358181116101b557610297903690840161046d565b926102a06104c9565b90606435838111610347576102b8903690860161046d565b95608435918483116103435761032461030a6103046102fe7f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f996103319736910161046d565b93610562565b98610562565b988351968796168652606060208701526060860190610582565b9184830390850152610582565b0390a361033e815461050c565b815580f35b8880fd5b8780fd5b8280fd5b5082903461034b57608036600319011261034b5767ffffffffffffffff82358181116101b157610382903690850161046d565b6024358281116101b557610399903690860161046d565b916103a26104c9565b606435828111610347577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c8936103f06103ea6103e46104079436908c0161046d565b92610562565b96610562565b968051948594168452806020850152830190610582565b0390a381549060001982019182136001166104225750815580f35b634e487b7160e01b835260119052602482fd5b90601f8019910116810190811067ffffffffffffffff82111761045757604052565b634e487b7160e01b600052604160045260246000fd5b81601f820112156104c45780359067ffffffffffffffff821161045757604051926104a2601f8401601f191660200185610435565b828452602083830101116104c457816000926020809301838601378301015290565b600080fd5b6044359067ffffffffffffffff821682036104c457565b600435906001600160a01b03821682036104c457565b602435906001600160a01b03821682036104c457565b906001820191600060018412911290801582169115161761052957565b634e487b7160e01b600052601160045260246000fd5b60005b8381106105525750506000910152565b8181015183820152602001610542565b61057a9060206040519282848094519384920161053f565b810103902090565b9060209161059b8151809281855285808601910161053f565b601f01601f191601019056fea2646970667358221220dbedd47e18fee307035f3e535245d5c88f15f8b2c71471301779b5234b00d88d64736f6c63430008140033", + "bytecode": "0x6080806040523460155761059c908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631f8ee6031461035f57806339b4073a1461024c57806345f2d105146101e057806361bc221a146102305780638ada066e14610230578063c489744b146101e0578063dbdf7fce146101cb5763f5d82b6b14610071575f80fd5b346101b45760403660031901126101b45761008a6104de565b6024359060018060a01b0316906040516323b872dd60e01b81523360048201523060248201528160448201526020816064815f875af180156101c057610188575b506100d65f5461054a565b5f55335f52600160205260405f20825f5260205260405f2080549082820180921161017457555f546040519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f060203392a2335f52600160205260405f20825f5260205260405f205460405191825260208201527f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535960403392a3005b634e487b7160e01b5f52601160045260245ffd5b6020813d6020116101b8575b816101a160209383610440565b810103126101b4575180151581146100cb575b5f80fd5b3d9150610194565b6040513d5f823e3d90fd5b346101b4575f3660031901126101b4575f8055005b346101b45760403660031901126101b4576101f96104de565b6102016104f4565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101b4575f3660031901126101b45760205f54604051908152f35b346101b45760a03660031901126101b4576004356001600160401b0381116101b45761027c903690600401610475565b6024356001600160401b0381116101b45761029b903690600401610475565b6102a36104c8565b6064356001600160401b0381116101b4576102c2903690600401610475565b92608435916001600160401b0383116101b45761034e6001600160401b039261034061032561031f6103197f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f983690600401610475565b9361050a565b9761050a565b97604051958695168552606060208601526060850190610526565b908382036040850152610526565b0390a361035b5f5461054a565b5f55005b346101b45760803660031901126101b4576004356001600160401b0381116101b45761038f903690600401610475565b6024356001600160401b0381116101b4576103ae903690600401610475565b6103b66104c8565b6064356001600160401b0381116101b4577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c89161042961040e61040861031f6001600160401b03953690600401610475565b9561050a565b95604051938493168352604060208401526040830190610526565b0390a35f545f198101908113600116610174575f55005b90601f801991011681019081106001600160401b0382111761046157604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156101b4576020813591016001600160401b03821161046157604051926104ac601f8401601f191660200185610440565b828452828201116101b457815f92602092838601378301015290565b604435906001600160401b03821682036101b457565b600435906001600160a01b03821682036101b457565b602435906001600160a01b03821682036101b457565b602090604051918183925191829101835e81015f815203902090565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060018201915f6001841291129080158216911516176101745756fea2646970667358221220dacec0b65394990427cc63670aabba33db94bea385d570badb7c98ec31aebe0f64736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631f8ee6031461035f57806339b4073a1461024c57806345f2d105146101e057806361bc221a146102305780638ada066e14610230578063c489744b146101e0578063dbdf7fce146101cb5763f5d82b6b14610071575f80fd5b346101b45760403660031901126101b45761008a6104de565b6024359060018060a01b0316906040516323b872dd60e01b81523360048201523060248201528160448201526020816064815f875af180156101c057610188575b506100d65f5461054a565b5f55335f52600160205260405f20825f5260205260405f2080549082820180921161017457555f546040519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f060203392a2335f52600160205260405f20825f5260205260405f205460405191825260208201527f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535960403392a3005b634e487b7160e01b5f52601160045260245ffd5b6020813d6020116101b8575b816101a160209383610440565b810103126101b4575180151581146100cb575b5f80fd5b3d9150610194565b6040513d5f823e3d90fd5b346101b4575f3660031901126101b4575f8055005b346101b45760403660031901126101b4576101f96104de565b6102016104f4565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101b4575f3660031901126101b45760205f54604051908152f35b346101b45760a03660031901126101b4576004356001600160401b0381116101b45761027c903690600401610475565b6024356001600160401b0381116101b45761029b903690600401610475565b6102a36104c8565b6064356001600160401b0381116101b4576102c2903690600401610475565b92608435916001600160401b0383116101b45761034e6001600160401b039261034061032561031f6103197f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f983690600401610475565b9361050a565b9761050a565b97604051958695168552606060208601526060850190610526565b908382036040850152610526565b0390a361035b5f5461054a565b5f55005b346101b45760803660031901126101b4576004356001600160401b0381116101b45761038f903690600401610475565b6024356001600160401b0381116101b4576103ae903690600401610475565b6103b66104c8565b6064356001600160401b0381116101b4577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c89161042961040e61040861031f6001600160401b03953690600401610475565b9561050a565b95604051938493168352604060208401526040830190610526565b0390a35f545f198101908113600116610174575f55005b90601f801991011681019081106001600160401b0382111761046157604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156101b4576020813591016001600160401b03821161046157604051926104ac601f8401601f191660200185610440565b828452828201116101b457815f92602092838601378301015290565b604435906001600160401b03821682036101b457565b600435906001600160a01b03821682036101b457565b602435906001600160a01b03821682036101b457565b602090604051918183925191829101835e81015f815203902090565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060018201915f6001841291129080158216911516176101745756fea2646970667358221220dacec0b65394990427cc63670aabba33db94bea385d570badb7c98ec31aebe0f64736f6c634300081c0033", "linkReferences": {}, - "deployedLinkReferences": {} -} + "deployedLinkReferences": {}, + "immutableReferences": {}, + "inputSourceName": "project/solidity/x/ibc/callbacks/testutil/CounterWithCallbacks.sol", + "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" +} \ No newline at end of file From a659167179334276986b936b8532d0b01621f521 Mon Sep 17 00:00:00 2001 From: nowooj Date: Thu, 26 Feb 2026 17:40:17 +0900 Subject: [PATCH 3/8] fix: for use same abi format --- .../compile_smart_contracts.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/scripts/compile_smart_contracts/compile_smart_contracts.py b/scripts/compile_smart_contracts/compile_smart_contracts.py index e89186e56..6dc6b7ec6 100644 --- a/scripts/compile_smart_contracts/compile_smart_contracts.py +++ b/scripts/compile_smart_contracts/compile_smart_contracts.py @@ -11,6 +11,7 @@ """ +import json import os import re import sys @@ -269,7 +270,20 @@ def copy_compiled_contracts_back_to_source( print(f"-> did not find compiled JSON file for {contract.filename}") continue - copy(compiled_path, contract.compiled_json_path) + # Go precompiles expect abi.json to contain only the ABI array (go-ethereum abi.JSON). + if contract.compiled_json_path.name == "abi.json": + with open(compiled_path, encoding="utf-8") as fh: + artifact = json.load(fh) + abi_list = artifact.get("abi") + if abi_list is None: + raise ValueError( + f"Artifact at {compiled_path} has no 'abi' key; cannot write {contract.compiled_json_path}" + ) + contract.compiled_json_path.parent.mkdir(parents=True, exist_ok=True) + with open(contract.compiled_json_path, "w", encoding="utf-8") as fh: + json.dump(abi_list, fh, indent=2) + else: + copy(compiled_path, contract.compiled_json_path) def clean_up_hardhat_project(hardhat_dir: Path): From 19407bc864ae5ab582c87bb0a2871ba33cefc731 Mon Sep 17 00:00:00 2001 From: nowooj Date: Thu, 26 Feb 2026 17:40:30 +0900 Subject: [PATCH 4/8] chore: make contracts-all --- precompiles/bank/abi.json | 166 +-- precompiles/bech32/abi.json | 102 +- precompiles/callbacks/abi.json | 138 +- precompiles/distribution/abi.json | 1522 ++++++++++---------- precompiles/erc20/abi.json | 460 +++--- precompiles/gov/abi.json | 2226 ++++++++++++++--------------- precompiles/ics02/abi.json | 296 ++-- precompiles/ics20/abi.json | 554 ++++--- precompiles/slashing/abi.json | 524 ++++--- precompiles/staking/abi.json | 2134 ++++++++++++++------------- precompiles/werc20/abi.json | 592 ++++---- 11 files changed, 4291 insertions(+), 4423 deletions(-) diff --git a/precompiles/bank/abi.json b/precompiles/bank/abi.json index d8bb4b7b6..2e9f00139 100644 --- a/precompiles/bank/abi.json +++ b/precompiles/bank/abi.json @@ -1,89 +1,77 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "IBank", - "sourceName": "solidity/precompiles/bank/IBank.sol", - "abi": [ - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balances", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Balance[]", - "name": "balances", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "erc20Address", - "type": "address" - } - ], - "name": "supplyOf", - "outputs": [ - { - "internalType": "uint256", - "name": "totalSupply", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "contractAddress", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Balance[]", - "name": "totalSupply", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/bank/IBank.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balances", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Balance[]", + "name": "balances", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "erc20Address", + "type": "address" + } + ], + "name": "supplyOf", + "outputs": [ + { + "internalType": "uint256", + "name": "totalSupply", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "contractAddress", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Balance[]", + "name": "totalSupply", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/bech32/abi.json b/precompiles/bech32/abi.json index e9dc6dc6e..1b41800b4 100644 --- a/precompiles/bech32/abi.json +++ b/precompiles/bech32/abi.json @@ -1,57 +1,45 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "Bech32I", - "sourceName": "solidity/precompiles/bech32/Bech32I.sol", - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "bech32Address", - "type": "string" - } - ], - "name": "bech32ToHex", - "outputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "addr", - "type": "address" - }, - { - "internalType": "string", - "name": "prefix", - "type": "string" - } - ], - "name": "hexToBech32", - "outputs": [ - { - "internalType": "string", - "name": "bech32Address", - "type": "string" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/bech32/Bech32I.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "inputs": [ + { + "internalType": "string", + "name": "bech32Address", + "type": "string" + } + ], + "name": "bech32ToHex", + "outputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "addr", + "type": "address" + }, + { + "internalType": "string", + "name": "prefix", + "type": "string" + } + ], + "name": "hexToBech32", + "outputs": [ + { + "internalType": "string", + "name": "bech32Address", + "type": "string" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/callbacks/abi.json b/precompiles/callbacks/abi.json index 5a0778063..f4285f23b 100644 --- a/precompiles/callbacks/abi.json +++ b/precompiles/callbacks/abi.json @@ -1,75 +1,63 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "ICallbacks", - "sourceName": "solidity/precompiles/callbacks/ICallbacks.sol", - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "channelId", - "type": "string" - }, - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "uint64", - "name": "sequence", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - }, - { - "internalType": "bytes", - "name": "acknowledgement", - "type": "bytes" - } - ], - "name": "onPacketAcknowledgement", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "channelId", - "type": "string" - }, - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "uint64", - "name": "sequence", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "data", - "type": "bytes" - } - ], - "name": "onPacketTimeout", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/callbacks/ICallbacks.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "inputs": [ + { + "internalType": "string", + "name": "channelId", + "type": "string" + }, + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "uint64", + "name": "sequence", + "type": "uint64" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "acknowledgement", + "type": "bytes" + } + ], + "name": "onPacketAcknowledgement", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "channelId", + "type": "string" + }, + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "uint64", + "name": "sequence", + "type": "uint64" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onPacketTimeout", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/distribution/abi.json b/precompiles/distribution/abi.json index 8be341bce..6324ac83e 100644 --- a/precompiles/distribution/abi.json +++ b/precompiles/distribution/abi.json @@ -1,767 +1,755 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "DistributionI", - "sourceName": "solidity/precompiles/distribution/DistributionI.sol", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "ClaimRewards", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "DepositValidatorRewardsPool", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "FundCommunityPool", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "caller", - "type": "address" - }, - { - "indexed": false, - "internalType": "string", - "name": "withdrawerAddress", - "type": "string" - } - ], - "name": "SetWithdrawerAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "WithdrawDelegatorReward", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "commission", - "type": "uint256" - } - ], - "name": "WithdrawValidatorCommission", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "uint32", - "name": "maxRetrieve", - "type": "uint32" - } - ], - "name": "claimRewards", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "communityPool", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "coins", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "delegationRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "rewards", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - } - ], - "name": "delegationTotalRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "reward", - "type": "tuple[]" - } - ], - "internalType": "struct DelegationDelegatorReward[]", - "name": "rewards", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "total", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - } - ], - "name": "delegatorValidators", - "outputs": [ - { - "internalType": "string[]", - "name": "validators", - "type": "string[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - } - ], - "name": "delegatorWithdrawAddress", - "outputs": [ - { - "internalType": "string", - "name": "withdrawAddress", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "depositValidatorRewardsPool", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "fundCommunityPool", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "withdrawerAddress", - "type": "string" - } - ], - "name": "setWithdrawAddress", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "validatorCommission", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "commission", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "validatorDistributionInfo", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "operatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "selfBondRewards", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "commission", - "type": "tuple[]" - } - ], - "internalType": "struct ValidatorDistributionInfo", - "name": "distributionInfo", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "validatorOutstandingRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct DecCoin[]", - "name": "rewards", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint64", - "name": "startingHeight", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "endingHeight", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "validatorSlashes", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "validatorPeriod", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "fraction", - "type": "tuple" - } - ], - "internalType": "struct ValidatorSlashEvent[]", - "name": "slashes", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "withdrawDelegatorRewards", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "withdrawValidatorCommission", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/distribution/DistributionI.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "ClaimRewards", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "DepositValidatorRewardsPool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "FundCommunityPool", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "indexed": false, + "internalType": "string", + "name": "withdrawerAddress", + "type": "string" + } + ], + "name": "SetWithdrawerAddress", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "WithdrawDelegatorReward", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "commission", + "type": "uint256" + } + ], + "name": "WithdrawValidatorCommission", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "uint32", + "name": "maxRetrieve", + "type": "uint32" + } + ], + "name": "claimRewards", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "communityPool", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "coins", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "delegationRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "rewards", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + } + ], + "name": "delegationTotalRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "reward", + "type": "tuple[]" + } + ], + "internalType": "struct DelegationDelegatorReward[]", + "name": "rewards", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "total", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + } + ], + "name": "delegatorValidators", + "outputs": [ + { + "internalType": "string[]", + "name": "validators", + "type": "string[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + } + ], + "name": "delegatorWithdrawAddress", + "outputs": [ + { + "internalType": "string", + "name": "withdrawAddress", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "depositValidatorRewardsPool", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "fundCommunityPool", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "withdrawerAddress", + "type": "string" + } + ], + "name": "setWithdrawAddress", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "validatorCommission", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "commission", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "validatorDistributionInfo", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "operatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "selfBondRewards", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "commission", + "type": "tuple[]" + } + ], + "internalType": "struct ValidatorDistributionInfo", + "name": "distributionInfo", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "validatorOutstandingRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct DecCoin[]", + "name": "rewards", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint64", + "name": "startingHeight", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "endingHeight", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "validatorSlashes", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "validatorPeriod", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "fraction", + "type": "tuple" + } + ], + "internalType": "struct ValidatorSlashEvent[]", + "name": "slashes", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "withdrawDelegatorRewards", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "withdrawValidatorCommission", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/erc20/abi.json b/precompiles/erc20/abi.json index 537ca4651..7fd43e994 100644 --- a/precompiles/erc20/abi.json +++ b/precompiles/erc20/abi.json @@ -1,236 +1,224 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "IERC20Metadata", - "sourceName": "solidity/precompiles/erc20/IERC20Metadata.sol", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/erc20/IERC20Metadata.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/gov/abi.json b/precompiles/gov/abi.json index fd0641335..1e8052b7c 100644 --- a/precompiles/gov/abi.json +++ b/precompiles/gov/abi.json @@ -1,1119 +1,1107 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "IGov", - "sourceName": "solidity/precompiles/gov/IGov.sol", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "CancelProposal", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "indexed": false, - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "Deposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "SubmitProposal", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "uint8", - "name": "option", - "type": "uint8" - } - ], - "name": "Vote", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "indexed": false, - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - } - ], - "name": "VoteWeighted", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "cancelProposal", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "name": "deposit", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "getConstitution", - "outputs": [ - { - "internalType": "string", - "name": "constitution", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - } - ], - "name": "getDeposit", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "internalType": "struct DepositData", - "name": "deposit", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getDeposits", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "amount", - "type": "tuple[]" - } - ], - "internalType": "struct DepositData[]", - "name": "deposits", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getParams", - "outputs": [ - { - "components": [ - { - "internalType": "int64", - "name": "votingPeriod", - "type": "int64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "minDeposit", - "type": "tuple[]" - }, - { - "internalType": "int64", - "name": "maxDepositPeriod", - "type": "int64" - }, - { - "internalType": "string", - "name": "quorum", - "type": "string" - }, - { - "internalType": "string", - "name": "threshold", - "type": "string" - }, - { - "internalType": "string", - "name": "vetoThreshold", - "type": "string" - }, - { - "internalType": "string", - "name": "minInitialDepositRatio", - "type": "string" - }, - { - "internalType": "string", - "name": "proposalCancelRatio", - "type": "string" - }, - { - "internalType": "string", - "name": "proposalCancelDest", - "type": "string" - }, - { - "internalType": "int64", - "name": "expeditedVotingPeriod", - "type": "int64" - }, - { - "internalType": "string", - "name": "expeditedThreshold", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "expeditedMinDeposit", - "type": "tuple[]" - }, - { - "internalType": "bool", - "name": "burnVoteQuorum", - "type": "bool" - }, - { - "internalType": "bool", - "name": "burnProposalDepositPrevote", - "type": "bool" - }, - { - "internalType": "bool", - "name": "burnVoteVeto", - "type": "bool" - }, - { - "internalType": "string", - "name": "minDepositRatio", - "type": "string" - } - ], - "internalType": "struct Params", - "name": "params", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "getProposal", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "id", - "type": "uint64" - }, - { - "internalType": "string[]", - "name": "messages", - "type": "string[]" - }, - { - "internalType": "uint32", - "name": "status", - "type": "uint32" - }, - { - "components": [ - { - "internalType": "string", - "name": "yes", - "type": "string" - }, - { - "internalType": "string", - "name": "abstain", - "type": "string" - }, - { - "internalType": "string", - "name": "no", - "type": "string" - }, - { - "internalType": "string", - "name": "noWithVeto", - "type": "string" - } - ], - "internalType": "struct TallyResultData", - "name": "finalTallyResult", - "type": "tuple" - }, - { - "internalType": "uint64", - "name": "submitTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "depositEndTime", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "totalDeposit", - "type": "tuple[]" - }, - { - "internalType": "uint64", - "name": "votingStartTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "votingEndTime", - "type": "uint64" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - }, - { - "internalType": "string", - "name": "title", - "type": "string" - }, - { - "internalType": "string", - "name": "summary", - "type": "string" - }, - { - "internalType": "address", - "name": "proposer", - "type": "address" - } - ], - "internalType": "struct ProposalData", - "name": "proposal", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint32", - "name": "proposalStatus", - "type": "uint32" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "internalType": "address", - "name": "depositor", - "type": "address" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getProposals", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "id", - "type": "uint64" - }, - { - "internalType": "string[]", - "name": "messages", - "type": "string[]" - }, - { - "internalType": "uint32", - "name": "status", - "type": "uint32" - }, - { - "components": [ - { - "internalType": "string", - "name": "yes", - "type": "string" - }, - { - "internalType": "string", - "name": "abstain", - "type": "string" - }, - { - "internalType": "string", - "name": "no", - "type": "string" - }, - { - "internalType": "string", - "name": "noWithVeto", - "type": "string" - } - ], - "internalType": "struct TallyResultData", - "name": "finalTallyResult", - "type": "tuple" - }, - { - "internalType": "uint64", - "name": "submitTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "depositEndTime", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "totalDeposit", - "type": "tuple[]" - }, - { - "internalType": "uint64", - "name": "votingStartTime", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "votingEndTime", - "type": "uint64" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - }, - { - "internalType": "string", - "name": "title", - "type": "string" - }, - { - "internalType": "string", - "name": "summary", - "type": "string" - }, - { - "internalType": "address", - "name": "proposer", - "type": "address" - } - ], - "internalType": "struct ProposalData[]", - "name": "proposals", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "name": "getTallyResult", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "yes", - "type": "string" - }, - { - "internalType": "string", - "name": "abstain", - "type": "string" - }, - { - "internalType": "string", - "name": "no", - "type": "string" - }, - { - "internalType": "string", - "name": "noWithVeto", - "type": "string" - } - ], - "internalType": "struct TallyResultData", - "name": "tallyResult", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - } - ], - "name": "getVote", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "internalType": "struct WeightedVote", - "name": "vote", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getVotes", - "outputs": [ - { - "components": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "internalType": "struct WeightedVote[]", - "name": "votes", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "proposer", - "type": "address" - }, - { - "internalType": "bytes", - "name": "jsonProposal", - "type": "bytes" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin[]", - "name": "deposit", - "type": "tuple[]" - } - ], - "name": "submitProposal", - "outputs": [ - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "name": "vote", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "voter", - "type": "address" - }, - { - "internalType": "uint64", - "name": "proposalId", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "enum VoteOption", - "name": "option", - "type": "uint8" - }, - { - "internalType": "string", - "name": "weight", - "type": "string" - } - ], - "internalType": "struct WeightedVoteOption[]", - "name": "options", - "type": "tuple[]" - }, - { - "internalType": "string", - "name": "metadata", - "type": "string" - } - ], - "name": "voteWeighted", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/gov/IGov.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "CancelProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "indexed": false, + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "SubmitProposal", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "uint8", + "name": "option", + "type": "uint8" + } + ], + "name": "Vote", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "indexed": false, + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + } + ], + "name": "VoteWeighted", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "cancelProposal", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "name": "deposit", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getConstitution", + "outputs": [ + { + "internalType": "string", + "name": "constitution", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + } + ], + "name": "getDeposit", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "internalType": "struct DepositData", + "name": "deposit", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getDeposits", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "amount", + "type": "tuple[]" + } + ], + "internalType": "struct DepositData[]", + "name": "deposits", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getParams", + "outputs": [ + { + "components": [ + { + "internalType": "int64", + "name": "votingPeriod", + "type": "int64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "minDeposit", + "type": "tuple[]" + }, + { + "internalType": "int64", + "name": "maxDepositPeriod", + "type": "int64" + }, + { + "internalType": "string", + "name": "quorum", + "type": "string" + }, + { + "internalType": "string", + "name": "threshold", + "type": "string" + }, + { + "internalType": "string", + "name": "vetoThreshold", + "type": "string" + }, + { + "internalType": "string", + "name": "minInitialDepositRatio", + "type": "string" + }, + { + "internalType": "string", + "name": "proposalCancelRatio", + "type": "string" + }, + { + "internalType": "string", + "name": "proposalCancelDest", + "type": "string" + }, + { + "internalType": "int64", + "name": "expeditedVotingPeriod", + "type": "int64" + }, + { + "internalType": "string", + "name": "expeditedThreshold", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "expeditedMinDeposit", + "type": "tuple[]" + }, + { + "internalType": "bool", + "name": "burnVoteQuorum", + "type": "bool" + }, + { + "internalType": "bool", + "name": "burnProposalDepositPrevote", + "type": "bool" + }, + { + "internalType": "bool", + "name": "burnVoteVeto", + "type": "bool" + }, + { + "internalType": "string", + "name": "minDepositRatio", + "type": "string" + } + ], + "internalType": "struct Params", + "name": "params", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "getProposal", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "id", + "type": "uint64" + }, + { + "internalType": "string[]", + "name": "messages", + "type": "string[]" + }, + { + "internalType": "uint32", + "name": "status", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "string", + "name": "yes", + "type": "string" + }, + { + "internalType": "string", + "name": "abstain", + "type": "string" + }, + { + "internalType": "string", + "name": "no", + "type": "string" + }, + { + "internalType": "string", + "name": "noWithVeto", + "type": "string" + } + ], + "internalType": "struct TallyResultData", + "name": "finalTallyResult", + "type": "tuple" + }, + { + "internalType": "uint64", + "name": "submitTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "depositEndTime", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "totalDeposit", + "type": "tuple[]" + }, + { + "internalType": "uint64", + "name": "votingStartTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "votingEndTime", + "type": "uint64" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + }, + { + "internalType": "string", + "name": "title", + "type": "string" + }, + { + "internalType": "string", + "name": "summary", + "type": "string" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + } + ], + "internalType": "struct ProposalData", + "name": "proposal", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "proposalStatus", + "type": "uint32" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "internalType": "address", + "name": "depositor", + "type": "address" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getProposals", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "id", + "type": "uint64" + }, + { + "internalType": "string[]", + "name": "messages", + "type": "string[]" + }, + { + "internalType": "uint32", + "name": "status", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "string", + "name": "yes", + "type": "string" + }, + { + "internalType": "string", + "name": "abstain", + "type": "string" + }, + { + "internalType": "string", + "name": "no", + "type": "string" + }, + { + "internalType": "string", + "name": "noWithVeto", + "type": "string" + } + ], + "internalType": "struct TallyResultData", + "name": "finalTallyResult", + "type": "tuple" + }, + { + "internalType": "uint64", + "name": "submitTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "depositEndTime", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "totalDeposit", + "type": "tuple[]" + }, + { + "internalType": "uint64", + "name": "votingStartTime", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "votingEndTime", + "type": "uint64" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + }, + { + "internalType": "string", + "name": "title", + "type": "string" + }, + { + "internalType": "string", + "name": "summary", + "type": "string" + }, + { + "internalType": "address", + "name": "proposer", + "type": "address" + } + ], + "internalType": "struct ProposalData[]", + "name": "proposals", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "name": "getTallyResult", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "yes", + "type": "string" + }, + { + "internalType": "string", + "name": "abstain", + "type": "string" + }, + { + "internalType": "string", + "name": "no", + "type": "string" + }, + { + "internalType": "string", + "name": "noWithVeto", + "type": "string" + } + ], + "internalType": "struct TallyResultData", + "name": "tallyResult", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + } + ], + "name": "getVote", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "internalType": "struct WeightedVote", + "name": "vote", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getVotes", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "internalType": "struct WeightedVote[]", + "name": "votes", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "proposer", + "type": "address" + }, + { + "internalType": "bytes", + "name": "jsonProposal", + "type": "bytes" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin[]", + "name": "deposit", + "type": "tuple[]" + } + ], + "name": "submitProposal", + "outputs": [ + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "name": "vote", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "voter", + "type": "address" + }, + { + "internalType": "uint64", + "name": "proposalId", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "enum VoteOption", + "name": "option", + "type": "uint8" + }, + { + "internalType": "string", + "name": "weight", + "type": "string" + } + ], + "internalType": "struct WeightedVoteOption[]", + "name": "options", + "type": "tuple[]" + }, + { + "internalType": "string", + "name": "metadata", + "type": "string" + } + ], + "name": "voteWeighted", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/ics02/abi.json b/precompiles/ics02/abi.json index 69549e962..97322737e 100644 --- a/precompiles/ics02/abi.json +++ b/precompiles/ics02/abi.json @@ -1,154 +1,142 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "ICS02I", - "sourceName": "solidity/precompiles/ics02/ICS02I.sol", - "abi": [ - { - "inputs": [ - { - "internalType": "string", - "name": "clientId", - "type": "string" - } - ], - "name": "getClientState", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "clientId", - "type": "string" - }, - { - "internalType": "bytes", - "name": "updateMsg", - "type": "bytes" - } - ], - "name": "updateClient", - "outputs": [ - { - "internalType": "enum ICS02I.UpdateResult", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "clientId", - "type": "string" - }, - { - "internalType": "bytes", - "name": "proof", - "type": "bytes" - }, - { - "components": [ - { - "internalType": "uint64", - "name": "revisionNumber", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "revisionHeight", - "type": "uint64" - } - ], - "internalType": "struct Height", - "name": "proofHeight", - "type": "tuple" - }, - { - "internalType": "bytes[]", - "name": "path", - "type": "bytes[]" - }, - { - "internalType": "bytes", - "name": "value", - "type": "bytes" - } - ], - "name": "verifyMembership", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "clientId", - "type": "string" - }, - { - "internalType": "bytes", - "name": "proof", - "type": "bytes" - }, - { - "components": [ - { - "internalType": "uint64", - "name": "revisionNumber", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "revisionHeight", - "type": "uint64" - } - ], - "internalType": "struct Height", - "name": "proofHeight", - "type": "tuple" - }, - { - "internalType": "bytes[]", - "name": "path", - "type": "bytes[]" - } - ], - "name": "verifyNonMembership", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/ics02/ICS02I.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + } + ], + "name": "getClientState", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + }, + { + "internalType": "bytes", + "name": "updateMsg", + "type": "bytes" + } + ], + "name": "updateClient", + "outputs": [ + { + "internalType": "enum ICS02I.UpdateResult", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + }, + { + "internalType": "bytes", + "name": "proof", + "type": "bytes" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "revisionNumber", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "revisionHeight", + "type": "uint64" + } + ], + "internalType": "struct Height", + "name": "proofHeight", + "type": "tuple" + }, + { + "internalType": "bytes[]", + "name": "path", + "type": "bytes[]" + }, + { + "internalType": "bytes", + "name": "value", + "type": "bytes" + } + ], + "name": "verifyMembership", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "clientId", + "type": "string" + }, + { + "internalType": "bytes", + "name": "proof", + "type": "bytes" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "revisionNumber", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "revisionHeight", + "type": "uint64" + } + ], + "internalType": "struct Height", + "name": "proofHeight", + "type": "tuple" + }, + { + "internalType": "bytes[]", + "name": "path", + "type": "bytes[]" + } + ], + "name": "verifyNonMembership", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/ics20/abi.json b/precompiles/ics20/abi.json index 65e580110..f65b1f5dd 100644 --- a/precompiles/ics20/abi.json +++ b/precompiles/ics20/abi.json @@ -1,283 +1,271 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "ICS20I", - "sourceName": "solidity/precompiles/ics20/ICS20I.sol", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "indexed": true, - "internalType": "string", - "name": "receiver", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourcePort", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "sourceChannel", - "type": "string" - }, - { - "indexed": false, - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "string", - "name": "memo", - "type": "string" - } - ], - "name": "IBCTransfer", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "hash", - "type": "string" - } - ], - "name": "denom", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "base", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "string", - "name": "channelId", - "type": "string" - } - ], - "internalType": "struct Hop[]", - "name": "trace", - "type": "tuple[]" - } - ], - "internalType": "struct Denom", - "name": "denom", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "trace", - "type": "string" - } - ], - "name": "denomHash", - "outputs": [ - { - "internalType": "string", - "name": "hash", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "denoms", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "base", - "type": "string" - }, - { - "components": [ - { - "internalType": "string", - "name": "portId", - "type": "string" - }, - { - "internalType": "string", - "name": "channelId", - "type": "string" - } - ], - "internalType": "struct Hop[]", - "name": "trace", - "type": "tuple[]" - } - ], - "internalType": "struct Denom[]", - "name": "denoms", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "sourcePort", - "type": "string" - }, - { - "internalType": "string", - "name": "sourceChannel", - "type": "string" - }, - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "string", - "name": "receiver", - "type": "string" - }, - { - "components": [ - { - "internalType": "uint64", - "name": "revisionNumber", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "revisionHeight", - "type": "uint64" - } - ], - "internalType": "struct Height", - "name": "timeoutHeight", - "type": "tuple" - }, - { - "internalType": "uint64", - "name": "timeoutTimestamp", - "type": "uint64" - }, - { - "internalType": "string", - "name": "memo", - "type": "string" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "uint64", - "name": "nextSequence", - "type": "uint64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/ics20/ICS20I.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": true, + "internalType": "string", + "name": "receiver", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourcePort", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "sourceChannel", + "type": "string" + }, + { + "indexed": false, + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "string", + "name": "memo", + "type": "string" + } + ], + "name": "IBCTransfer", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "hash", + "type": "string" + } + ], + "name": "denom", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "base", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "string", + "name": "channelId", + "type": "string" + } + ], + "internalType": "struct Hop[]", + "name": "trace", + "type": "tuple[]" + } + ], + "internalType": "struct Denom", + "name": "denom", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "trace", + "type": "string" + } + ], + "name": "denomHash", + "outputs": [ + { + "internalType": "string", + "name": "hash", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "denoms", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "base", + "type": "string" + }, + { + "components": [ + { + "internalType": "string", + "name": "portId", + "type": "string" + }, + { + "internalType": "string", + "name": "channelId", + "type": "string" + } + ], + "internalType": "struct Hop[]", + "name": "trace", + "type": "tuple[]" + } + ], + "internalType": "struct Denom[]", + "name": "denoms", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "sourcePort", + "type": "string" + }, + { + "internalType": "string", + "name": "sourceChannel", + "type": "string" + }, + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "string", + "name": "receiver", + "type": "string" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "revisionNumber", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "revisionHeight", + "type": "uint64" + } + ], + "internalType": "struct Height", + "name": "timeoutHeight", + "type": "tuple" + }, + { + "internalType": "uint64", + "name": "timeoutTimestamp", + "type": "uint64" + }, + { + "internalType": "string", + "name": "memo", + "type": "string" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "uint64", + "name": "nextSequence", + "type": "uint64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/slashing/abi.json b/precompiles/slashing/abi.json index 4de21d23f..2848a610f 100644 --- a/precompiles/slashing/abi.json +++ b/precompiles/slashing/abi.json @@ -1,268 +1,256 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "ISlashing", - "sourceName": "solidity/precompiles/slashing/ISlashing.sol", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "validator", - "type": "address" - } - ], - "name": "ValidatorUnjailed", - "type": "event" - }, - { - "inputs": [], - "name": "getParams", - "outputs": [ - { - "components": [ - { - "internalType": "int64", - "name": "signedBlocksWindow", - "type": "int64" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "minSignedPerWindow", - "type": "tuple" - }, - { - "internalType": "int64", - "name": "downtimeJailDuration", - "type": "int64" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "slashFractionDoubleSign", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - }, - { - "internalType": "uint8", - "name": "precision", - "type": "uint8" - } - ], - "internalType": "struct Dec", - "name": "slashFractionDowntime", - "type": "tuple" - } - ], - "internalType": "struct Params", - "name": "params", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "consAddress", - "type": "address" - } - ], - "name": "getSigningInfo", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "int64", - "name": "startHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "indexOffset", - "type": "int64" - }, - { - "internalType": "int64", - "name": "jailedUntil", - "type": "int64" - }, - { - "internalType": "bool", - "name": "tombstoned", - "type": "bool" - }, - { - "internalType": "int64", - "name": "missedBlocksCounter", - "type": "int64" - } - ], - "internalType": "struct SigningInfo", - "name": "signingInfo", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pagination", - "type": "tuple" - } - ], - "name": "getSigningInfos", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "int64", - "name": "startHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "indexOffset", - "type": "int64" - }, - { - "internalType": "int64", - "name": "jailedUntil", - "type": "int64" - }, - { - "internalType": "bool", - "name": "tombstoned", - "type": "bool" - }, - { - "internalType": "int64", - "name": "missedBlocksCounter", - "type": "int64" - } - ], - "internalType": "struct SigningInfo[]", - "name": "signingInfos", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - } - ], - "name": "unjail", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/slashing/ISlashing.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "validator", + "type": "address" + } + ], + "name": "ValidatorUnjailed", + "type": "event" + }, + { + "inputs": [], + "name": "getParams", + "outputs": [ + { + "components": [ + { + "internalType": "int64", + "name": "signedBlocksWindow", + "type": "int64" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "minSignedPerWindow", + "type": "tuple" + }, + { + "internalType": "int64", + "name": "downtimeJailDuration", + "type": "int64" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "slashFractionDoubleSign", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "precision", + "type": "uint8" + } + ], + "internalType": "struct Dec", + "name": "slashFractionDowntime", + "type": "tuple" + } + ], + "internalType": "struct Params", + "name": "params", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "consAddress", + "type": "address" + } + ], + "name": "getSigningInfo", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "int64", + "name": "startHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "indexOffset", + "type": "int64" + }, + { + "internalType": "int64", + "name": "jailedUntil", + "type": "int64" + }, + { + "internalType": "bool", + "name": "tombstoned", + "type": "bool" + }, + { + "internalType": "int64", + "name": "missedBlocksCounter", + "type": "int64" + } + ], + "internalType": "struct SigningInfo", + "name": "signingInfo", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pagination", + "type": "tuple" + } + ], + "name": "getSigningInfos", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "int64", + "name": "startHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "indexOffset", + "type": "int64" + }, + { + "internalType": "int64", + "name": "jailedUntil", + "type": "int64" + }, + { + "internalType": "bool", + "name": "tombstoned", + "type": "bool" + }, + { + "internalType": "int64", + "name": "missedBlocksCounter", + "type": "int64" + } + ], + "internalType": "struct SigningInfo[]", + "name": "signingInfos", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + } + ], + "name": "unjail", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/staking/abi.json b/precompiles/staking/abi.json index de15d592c..395257f54 100644 --- a/precompiles/staking/abi.json +++ b/precompiles/staking/abi.json @@ -1,1073 +1,1061 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "StakingI", - "sourceName": "solidity/precompiles/staking/StakingI.sol", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "creationHeight", - "type": "uint256" - } - ], - "name": "CancelUnbondingDelegation", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "CreateValidator", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "newShares", - "type": "uint256" - } - ], - "name": "Delegate", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "int256", - "name": "commissionRate", - "type": "int256" - }, - { - "indexed": false, - "internalType": "int256", - "name": "minSelfDelegation", - "type": "int256" - } - ], - "name": "EditValidator", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorSrcAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorDstAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "completionTime", - "type": "uint256" - } - ], - "name": "Redelegate", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "completionTime", - "type": "uint256" - } - ], - "name": "Unbond", - "type": "event" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "creationHeight", - "type": "uint256" - } - ], - "name": "cancelUnbondingDelegation", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "components": [ - { - "internalType": "uint256", - "name": "rate", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxRate", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "maxChangeRate", - "type": "uint256" - } - ], - "internalType": "struct CommissionRates", - "name": "commissionRates", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "minSelfDelegation", - "type": "uint256" - }, - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "pubkey", - "type": "string" - }, - { - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "createValidator", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "delegate", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "delegation", - "outputs": [ - { - "internalType": "uint256", - "name": "shares", - "type": "uint256" - }, - { - "components": [ - { - "internalType": "string", - "name": "denom", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "internalType": "struct Coin", - "name": "balance", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - }, - { - "internalType": "int256", - "name": "commissionRate", - "type": "int256" - }, - { - "internalType": "int256", - "name": "minSelfDelegation", - "type": "int256" - } - ], - "name": "editValidator", - "outputs": [ - { - "internalType": "bool", - "name": "success", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorSrcAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorDstAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "redelegate", - "outputs": [ - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "srcValidatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "dstValidatorAddress", - "type": "string" - } - ], - "name": "redelegation", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "delegatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorSrcAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorDstAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "sharesDst", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntry[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct RedelegationOutput", - "name": "redelegation", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "srcValidatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "dstValidatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "redelegations", - "outputs": [ - { - "components": [ - { - "components": [ - { - "internalType": "string", - "name": "delegatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorSrcAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorDstAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "sharesDst", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntry[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct Redelegation", - "name": "redelegation", - "type": "tuple" - }, - { - "components": [ - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "sharesDst", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntry", - "name": "redelegationEntry", - "type": "tuple" - }, - { - "internalType": "uint256", - "name": "balance", - "type": "uint256" - } - ], - "internalType": "struct RedelegationEntryResponse[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct RedelegationResponse[]", - "name": "response", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - } - ], - "name": "unbondingDelegation", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "delegatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "components": [ - { - "internalType": "int64", - "name": "creationHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "initialBalance", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "balance", - "type": "uint256" - }, - { - "internalType": "uint64", - "name": "unbondingId", - "type": "uint64" - }, - { - "internalType": "int64", - "name": "unbondingOnHoldRefCount", - "type": "int64" - } - ], - "internalType": "struct UnbondingDelegationEntry[]", - "name": "entries", - "type": "tuple[]" - } - ], - "internalType": "struct UnbondingDelegationOutput", - "name": "unbondingDelegation", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "delegatorAddress", - "type": "address" - }, - { - "internalType": "string", - "name": "validatorAddress", - "type": "string" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "undelegate", - "outputs": [ - { - "internalType": "int64", - "name": "completionTime", - "type": "int64" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "validatorAddress", - "type": "address" - } - ], - "name": "validator", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "operatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "consensusPubkey", - "type": "string" - }, - { - "internalType": "bool", - "name": "jailed", - "type": "bool" - }, - { - "internalType": "enum BondStatus", - "name": "status", - "type": "uint8" - }, - { - "internalType": "uint256", - "name": "tokens", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "delegatorShares", - "type": "uint256" - }, - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "internalType": "int64", - "name": "unbondingHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "unbondingTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "commission", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "minSelfDelegation", - "type": "uint256" - } - ], - "internalType": "struct Validator", - "name": "validator", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string", - "name": "status", - "type": "string" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "key", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "offset", - "type": "uint64" - }, - { - "internalType": "uint64", - "name": "limit", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "countTotal", - "type": "bool" - }, - { - "internalType": "bool", - "name": "reverse", - "type": "bool" - } - ], - "internalType": "struct PageRequest", - "name": "pageRequest", - "type": "tuple" - } - ], - "name": "validators", - "outputs": [ - { - "components": [ - { - "internalType": "string", - "name": "operatorAddress", - "type": "string" - }, - { - "internalType": "string", - "name": "consensusPubkey", - "type": "string" - }, - { - "internalType": "bool", - "name": "jailed", - "type": "bool" - }, - { - "internalType": "enum BondStatus", - "name": "status", - "type": "uint8" - }, - { - "internalType": "uint256", - "name": "tokens", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "delegatorShares", - "type": "uint256" - }, - { - "components": [ - { - "internalType": "string", - "name": "moniker", - "type": "string" - }, - { - "internalType": "string", - "name": "identity", - "type": "string" - }, - { - "internalType": "string", - "name": "website", - "type": "string" - }, - { - "internalType": "string", - "name": "securityContact", - "type": "string" - }, - { - "internalType": "string", - "name": "details", - "type": "string" - } - ], - "internalType": "struct Description", - "name": "description", - "type": "tuple" - }, - { - "internalType": "int64", - "name": "unbondingHeight", - "type": "int64" - }, - { - "internalType": "int64", - "name": "unbondingTime", - "type": "int64" - }, - { - "internalType": "uint256", - "name": "commission", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "minSelfDelegation", - "type": "uint256" - } - ], - "internalType": "struct Validator[]", - "name": "validators", - "type": "tuple[]" - }, - { - "components": [ - { - "internalType": "bytes", - "name": "nextKey", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "total", - "type": "uint64" - } - ], - "internalType": "struct PageResponse", - "name": "pageResponse", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/staking/StakingI.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "creationHeight", + "type": "uint256" + } + ], + "name": "CancelUnbondingDelegation", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "CreateValidator", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "newShares", + "type": "uint256" + } + ], + "name": "Delegate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "int256", + "name": "commissionRate", + "type": "int256" + }, + { + "indexed": false, + "internalType": "int256", + "name": "minSelfDelegation", + "type": "int256" + } + ], + "name": "EditValidator", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorSrcAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorDstAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "completionTime", + "type": "uint256" + } + ], + "name": "Redelegate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "completionTime", + "type": "uint256" + } + ], + "name": "Unbond", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "creationHeight", + "type": "uint256" + } + ], + "name": "cancelUnbondingDelegation", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "rate", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxRate", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxChangeRate", + "type": "uint256" + } + ], + "internalType": "struct CommissionRates", + "name": "commissionRates", + "type": "tuple" + }, + { + "internalType": "uint256", + "name": "minSelfDelegation", + "type": "uint256" + }, + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "pubkey", + "type": "string" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "createValidator", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "delegation", + "outputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "string", + "name": "denom", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "internalType": "struct Coin", + "name": "balance", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + }, + { + "internalType": "int256", + "name": "commissionRate", + "type": "int256" + }, + { + "internalType": "int256", + "name": "minSelfDelegation", + "type": "int256" + } + ], + "name": "editValidator", + "outputs": [ + { + "internalType": "bool", + "name": "success", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorSrcAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorDstAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "redelegate", + "outputs": [ + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "srcValidatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "dstValidatorAddress", + "type": "string" + } + ], + "name": "redelegation", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "delegatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorSrcAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorDstAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesDst", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntry[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct RedelegationOutput", + "name": "redelegation", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "srcValidatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "dstValidatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "redelegations", + "outputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "string", + "name": "delegatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorSrcAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorDstAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesDst", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntry[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct Redelegation", + "name": "redelegation", + "type": "tuple" + }, + { + "components": [ + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesDst", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntry", + "name": "redelegationEntry", + "type": "tuple" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + } + ], + "internalType": "struct RedelegationEntryResponse[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct RedelegationResponse[]", + "name": "response", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + } + ], + "name": "unbondingDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "delegatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "components": [ + { + "internalType": "int64", + "name": "creationHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "initialBalance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "unbondingId", + "type": "uint64" + }, + { + "internalType": "int64", + "name": "unbondingOnHoldRefCount", + "type": "int64" + } + ], + "internalType": "struct UnbondingDelegationEntry[]", + "name": "entries", + "type": "tuple[]" + } + ], + "internalType": "struct UnbondingDelegationOutput", + "name": "unbondingDelegation", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "delegatorAddress", + "type": "address" + }, + { + "internalType": "string", + "name": "validatorAddress", + "type": "string" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [ + { + "internalType": "int64", + "name": "completionTime", + "type": "int64" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "validatorAddress", + "type": "address" + } + ], + "name": "validator", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "operatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "consensusPubkey", + "type": "string" + }, + { + "internalType": "bool", + "name": "jailed", + "type": "bool" + }, + { + "internalType": "enum BondStatus", + "name": "status", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "delegatorShares", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "internalType": "int64", + "name": "unbondingHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "unbondingTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "commission", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSelfDelegation", + "type": "uint256" + } + ], + "internalType": "struct Validator", + "name": "validator", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "status", + "type": "string" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "key", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "offset", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "limit", + "type": "uint64" + }, + { + "internalType": "bool", + "name": "countTotal", + "type": "bool" + }, + { + "internalType": "bool", + "name": "reverse", + "type": "bool" + } + ], + "internalType": "struct PageRequest", + "name": "pageRequest", + "type": "tuple" + } + ], + "name": "validators", + "outputs": [ + { + "components": [ + { + "internalType": "string", + "name": "operatorAddress", + "type": "string" + }, + { + "internalType": "string", + "name": "consensusPubkey", + "type": "string" + }, + { + "internalType": "bool", + "name": "jailed", + "type": "bool" + }, + { + "internalType": "enum BondStatus", + "name": "status", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "delegatorShares", + "type": "uint256" + }, + { + "components": [ + { + "internalType": "string", + "name": "moniker", + "type": "string" + }, + { + "internalType": "string", + "name": "identity", + "type": "string" + }, + { + "internalType": "string", + "name": "website", + "type": "string" + }, + { + "internalType": "string", + "name": "securityContact", + "type": "string" + }, + { + "internalType": "string", + "name": "details", + "type": "string" + } + ], + "internalType": "struct Description", + "name": "description", + "type": "tuple" + }, + { + "internalType": "int64", + "name": "unbondingHeight", + "type": "int64" + }, + { + "internalType": "int64", + "name": "unbondingTime", + "type": "int64" + }, + { + "internalType": "uint256", + "name": "commission", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSelfDelegation", + "type": "uint256" + } + ], + "internalType": "struct Validator[]", + "name": "validators", + "type": "tuple[]" + }, + { + "components": [ + { + "internalType": "bytes", + "name": "nextKey", + "type": "bytes" + }, + { + "internalType": "uint64", + "name": "total", + "type": "uint64" + } + ], + "internalType": "struct PageResponse", + "name": "pageResponse", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + } +] \ No newline at end of file diff --git a/precompiles/werc20/abi.json b/precompiles/werc20/abi.json index 6a07ef523..2c95ef635 100644 --- a/precompiles/werc20/abi.json +++ b/precompiles/werc20/abi.json @@ -1,302 +1,290 @@ -{ - "_format": "hh3-artifact-1", - "contractName": "IWERC20", - "sourceName": "solidity/precompiles/werc20/IWERC20.sol", - "abi": [ - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "dst", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Deposit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "src", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "Withdrawal", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "owner", - "type": "address" - }, - { - "internalType": "address", - "name": "spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "spender", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "deposit", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "from", - "type": "address" - }, - { - "internalType": "address", - "name": "to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "amount", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint256", - "name": "wad", - "type": "uint256" - } - ], - "name": "withdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "linkReferences": {}, - "deployedLinkReferences": {}, - "immutableReferences": {}, - "inputSourceName": "project/solidity/precompiles/werc20/IWERC20.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" -} \ No newline at end of file +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "dst", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "wad", + "type": "uint256" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "src", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "wad", + "type": "uint256" + } + ], + "name": "Withdrawal", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "deposit", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "wad", + "type": "uint256" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } +] \ No newline at end of file From 370dc06dc9d1a3d5a9f9ea1442b93738bea3af1a Mon Sep 17 00:00:00 2001 From: nowooj Date: Thu, 26 Feb 2026 17:42:00 +0900 Subject: [PATCH 5/8] refactor: use pnpm --- .github/workflows/slither.yml | 11 +- .../workflows/tests-compatibility-hardhat.yml | 10 +- .../workflows/tests-compatibility-viem.yml | 10 +- .../workflows/tests-compatibility-web3js.yml | 10 +- .gitignore | 1 + contracts/package.json | 1 + contracts/pnpm-lock.yaml | 808 ++ .../compile_smart_contracts.py | 6 +- .../testdata/package.json | 1 + .../testdata/pnpm-lock.yaml | 1731 +++ scripts/run-solidity-tests.sh | 12 +- scripts/tests_compatibility_hardhat.sh | 30 +- scripts/tests_compatibility_setup.sh | 33 +- scripts/tests_compatibility_viem.sh | 20 +- scripts/tests_compatibility_web3js.sh | 20 +- tests/contracts/package.json | 1 + tests/contracts/pnpm-lock.yaml | 30 + .../hardhat/Flattened.sol | 40 +- .../evm-tools-compatibility/hardhat/README.md | 14 +- .../hardhat/package.json | 2 + .../hardhat/pnpm-lock.yaml | 4714 +++++++ .../hardhat/test/hardhat_instruction.test.js | 12 +- tests/evm-tools-compatibility/viem/README.md | 4 +- .../evm-tools-compatibility/viem/package.json | 1 + .../viem/pnpm-lock.yaml | 807 ++ .../evm-tools-compatibility/web3.js/README.md | 6 +- .../web3.js/package.json | 1 + .../web3.js/pnpm-lock.yaml | 3609 +++++ tests/solidity/package.json | 12 +- tests/solidity/pnpm-lock.yaml | 11436 ++++++++++++++++ tests/solidity/pnpm-workspace.yaml | 2 + tests/solidity/suites/basic/package.json | 4 +- tests/solidity/suites/eip1559/package.json | 4 +- tests/solidity/suites/exception/package.json | 4 +- tests/solidity/suites/opcode/package.json | 4 +- .../solidity/suites/precompiles/package.json | 4 +- .../solidity/suites/revert_cases/package.json | 4 +- tests/solidity/test-helper.js | 4 +- 38 files changed, 23282 insertions(+), 141 deletions(-) create mode 100644 contracts/pnpm-lock.yaml create mode 100644 scripts/compile_smart_contracts/testdata/pnpm-lock.yaml create mode 100644 tests/contracts/pnpm-lock.yaml create mode 100644 tests/evm-tools-compatibility/hardhat/pnpm-lock.yaml create mode 100644 tests/evm-tools-compatibility/viem/pnpm-lock.yaml create mode 100644 tests/evm-tools-compatibility/web3.js/pnpm-lock.yaml create mode 100644 tests/solidity/pnpm-lock.yaml create mode 100644 tests/solidity/pnpm-workspace.yaml diff --git a/.github/workflows/slither.yml b/.github/workflows/slither.yml index c25245a5a..f11334ff6 100644 --- a/.github/workflows/slither.yml +++ b/.github/workflows/slither.yml @@ -19,9 +19,18 @@ jobs: with: PATTERNS: | **/*.sol + - name: Setup Node.js and pnpm + uses: actions/setup-node@v4 + with: + node-version: '20' + cache: 'pnpm' + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 - name: Node dependencies Install run: | - cd contracts && npm i + cd contracts && pnpm install cp -r node_modules/@openzeppelin . - name: Run Slither Action uses: crytic/slither-action@v0.4.0 diff --git a/.github/workflows/tests-compatibility-hardhat.yml b/.github/workflows/tests-compatibility-hardhat.yml index ac121cac4..242ef5d20 100644 --- a/.github/workflows/tests-compatibility-hardhat.yml +++ b/.github/workflows/tests-compatibility-hardhat.yml @@ -51,6 +51,12 @@ jobs: uses: actions/setup-node@v4 with: node-version: '18' + cache: 'pnpm' + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 - name: Cache Go modules uses: actions/cache@v4 @@ -64,9 +70,9 @@ jobs: uses: actions/cache@v4 with: path: tests/evm-tools-compatibility/hardhat/node_modules - key: ${{ runner.os }}-node-${{ hashFiles('tests/evm-tools-compatibility/hardhat/package-lock.json') }} + key: ${{ runner.os }}-pnpm-${{ hashFiles('tests/evm-tools-compatibility/hardhat/pnpm-lock.yaml') }} restore-keys: | - ${{ runner.os }}-node- + ${{ runner.os }}-pnpm- - name: Build and install evmd run: | diff --git a/.github/workflows/tests-compatibility-viem.yml b/.github/workflows/tests-compatibility-viem.yml index 2bb3c6e94..b45583c36 100644 --- a/.github/workflows/tests-compatibility-viem.yml +++ b/.github/workflows/tests-compatibility-viem.yml @@ -51,6 +51,12 @@ jobs: uses: actions/setup-node@v4 with: node-version: '18' + cache: 'pnpm' + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 - name: Cache Go modules uses: actions/cache@v4 @@ -64,9 +70,9 @@ jobs: uses: actions/cache@v4 with: path: tests/evm-tools-compatibility/viem/node_modules - key: ${{ runner.os }}-node-${{ hashFiles('tests/evm-tools-compatibility/viem/package-lock.json') }} + key: ${{ runner.os }}-pnpm-${{ hashFiles('tests/evm-tools-compatibility/viem/pnpm-lock.yaml') }} restore-keys: | - ${{ runner.os }}-node- + ${{ runner.os }}-pnpm- - name: Build and install evmd run: | diff --git a/.github/workflows/tests-compatibility-web3js.yml b/.github/workflows/tests-compatibility-web3js.yml index cf8534c8c..71b86fa3f 100644 --- a/.github/workflows/tests-compatibility-web3js.yml +++ b/.github/workflows/tests-compatibility-web3js.yml @@ -51,6 +51,12 @@ jobs: uses: actions/setup-node@v4 with: node-version: '18' + cache: 'pnpm' + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 - name: Cache Go modules uses: actions/cache@v4 @@ -64,9 +70,9 @@ jobs: uses: actions/cache@v4 with: path: tests/evm-tools-compatibility/web3.js/node_modules - key: ${{ runner.os }}-node-${{ hashFiles('tests/evm-tools-compatibility/web3.js/package-lock.json') }} + key: ${{ runner.os }}-pnpm-${{ hashFiles('tests/evm-tools-compatibility/web3.js/pnpm-lock.yaml') }} restore-keys: | - ${{ runner.os }}-node- + ${{ runner.os }}-pnpm- - name: Build and install evmd run: | diff --git a/.gitignore b/.gitignore index 4d3b9e835..583a2a725 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,7 @@ yarn.lock # Node.js **/node_modules +.pnpm-store # OpenZeppelin contracts contracts/@openzeppelin/* diff --git a/contracts/package.json b/contracts/package.json index 07c4fe62f..3e5414405 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -1,5 +1,6 @@ { "name": "cosmos-evm-contracts", + "packageManager": "pnpm@9.15.0", "version": "0.0.1", "description": "A collection of smart contracts used in the development of the Cosmos EVM blockchain.", "devDependencies": { diff --git a/contracts/pnpm-lock.yaml b/contracts/pnpm-lock.yaml new file mode 100644 index 000000000..a5a3d71b1 --- /dev/null +++ b/contracts/pnpm-lock.yaml @@ -0,0 +1,808 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@account-abstraction/contracts': + specifier: ^0.8.0 + version: 0.8.0 + devDependencies: + '@openzeppelin/contracts': + specifier: ^5.4.0 + version: 5.4.0 + hardhat: + specifier: ^3.1.10 + version: 3.1.10 + +packages: + + '@account-abstraction/contracts@0.8.0': + resolution: {integrity: sha512-8krPx/gpnoT+5xAroagVCbeA7FbUigMZWXFKKPm+oghyr29Dksssdx5sI7xGv9212i4JPaDDUGFk58dpuwVgHA==} + + '@esbuild/aix-ppc64@0.27.3': + resolution: {integrity: sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.27.3': + resolution: {integrity: sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.27.3': + resolution: {integrity: sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.27.3': + resolution: {integrity: sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.27.3': + resolution: {integrity: sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.27.3': + resolution: {integrity: sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.27.3': + resolution: {integrity: sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.27.3': + resolution: {integrity: sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.27.3': + resolution: {integrity: sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.27.3': + resolution: {integrity: sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.27.3': + resolution: {integrity: sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.27.3': + resolution: {integrity: sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.27.3': + resolution: {integrity: sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.27.3': + resolution: {integrity: sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.27.3': + resolution: {integrity: sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.27.3': + resolution: {integrity: sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.27.3': + resolution: {integrity: sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.27.3': + resolution: {integrity: sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.27.3': + resolution: {integrity: sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.27.3': + resolution: {integrity: sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.27.3': + resolution: {integrity: sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openharmony-arm64@0.27.3': + resolution: {integrity: sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.27.3': + resolution: {integrity: sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.27.3': + resolution: {integrity: sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.27.3': + resolution: {integrity: sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.27.3': + resolution: {integrity: sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + + '@noble/curves@1.4.2': + resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} + + '@noble/curves@1.8.2': + resolution: {integrity: sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.4.0': + resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} + engines: {node: '>= 16'} + + '@noble/hashes@1.7.2': + resolution: {integrity: sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==} + engines: {node: ^14.21.3 || >=16} + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.24': + resolution: {integrity: sha512-lYcD9IM52G0hk/3Sso2Rpdpyfafy3aHH0GsSy/FVog9UrEkmmU14AmccE18/zTL+UyV0yzYMDOmh6y83SD/lbg==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.24': + resolution: {integrity: sha512-cHDJZlPDpDXJXxQDVM0TGzEuNvV3wW94gipEdjNxZHeC9T2/NU/5GUoQajMJgvCZ6PWDlRMwIBRtM1jC/ny5DA==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.24': + resolution: {integrity: sha512-G/iln4W79CR9f68+crBZM1kBdmmK3IbQCD4b5u+iqby+H5BOLSPQmjeW9UREK5WSecnv7Oxr/ZTHHRq/w9pUPA==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.24': + resolution: {integrity: sha512-wt6UuOutufL3UTSyMiwPOyfRly3uQEFHASXqLsNjgp4qBrm0s+kkyaYpAe8h53lGzZmXIDOAbO0P/fwxnLCnWw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.24': + resolution: {integrity: sha512-mHgkUSynINTnnIvZuZymJ4dMqjemGjdrzQ87rP5/SQQGRQVV82uDomSEglp9btSmbBWfPj4r4tWsV+a3844W0w==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.24': + resolution: {integrity: sha512-E0XNSlPc8Hx5Nhowe5VIvAqVeT+1VUWSRqG0cZtYcpUgJZxTp8p03ojPtbyfjL4T+78GfnpmzkkLhB6S2jZ1FQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.24': + resolution: {integrity: sha512-PbtY2zWc4k8HK4gVnVbPohJnfrICboo6J91vxTlhnPKCWGvfGbsqLfDUAp91ExHHY+80qRfQnwaLbhJiIqLFGw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr@0.12.0-next.24': + resolution: {integrity: sha512-/NwB9yX7uBs/FIJKHBZo2hVhP7g3v6LbE21JvTLvshgb+XscyaRRUmzB//ankxLGJ1TehtXAf/Qh/a19vgpiig==} + engines: {node: '>= 20'} + + '@nomicfoundation/hardhat-errors@3.0.7': + resolution: {integrity: sha512-l4RrzTfJ/WO0B9Te6i9161+pRbCSFXILanmHmgRfS4Bb4pDOjs+0eQf2I2cQrnqcJ6O/bxLvChPTQuad97dmQw==} + + '@nomicfoundation/hardhat-utils@4.0.0': + resolution: {integrity: sha512-Deu4od7flcM89K+SEAxmOyn7FFWGiEILrGjoxYl/Gus0tctgpLNaK3M4LIjrJ25ci8LBjGVe3i28XZA4+QGQHQ==} + + '@nomicfoundation/hardhat-vendored@3.0.1': + resolution: {integrity: sha512-jBOAqmEAMJ8zdfiQmTLV+c0IaSyySqkDSJ9spTy8Ts/m/mO8w364TClyfn+p4ZpxBjyX4LMa3NfC402hoDtwCg==} + + '@nomicfoundation/hardhat-zod-utils@3.0.2': + resolution: {integrity: sha512-EtMIhi7jtpeQYd+pRQBNlxthi8OPVr/t32yn+VHHp6nwS5wgXLh6/KpvFZfJj5mBAUbOtogB7YQ4n5fpOeuggA==} + peerDependencies: + zod: ^3.23.8 + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + resolution: {integrity: sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + resolution: {integrity: sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + resolution: {integrity: sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + resolution: {integrity: sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + resolution: {integrity: sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + resolution: {integrity: sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + resolution: {integrity: sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer@0.1.2': + resolution: {integrity: sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA==} + engines: {node: '>= 12'} + + '@openzeppelin/contracts@3.4.2-solc-0.7': + resolution: {integrity: sha512-W6QmqgkADuFcTLzHL8vVoNBtkwjvQRpYIAom7KiUNoLKghyx3FgH0GBjt8NRvigV1ZmMOBllvE1By1C+bi8WpA==} + + '@openzeppelin/contracts@5.4.0': + resolution: {integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==} + + '@scure/base@1.1.9': + resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} + + '@scure/base@1.2.6': + resolution: {integrity: sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==} + + '@scure/bip32@1.4.0': + resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} + + '@scure/bip39@1.3.0': + resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} + + '@sentry/core@9.47.1': + resolution: {integrity: sha512-KX62+qIt4xgy8eHKHiikfhz2p5fOciXd0Cl+dNzhgPFq8klq4MGMNaf148GB3M/vBqP4nw/eFvRMAayFCgdRQw==} + engines: {node: '>=18'} + + '@streamparser/json-node@0.0.22': + resolution: {integrity: sha512-sJT2ptNRwqB1lIsQrQlCoWk5rF4tif9wDh+7yluAGijJamAhrHGYpFB/Zg3hJeceoZypi74ftXk8DHzwYpbZSg==} + + '@streamparser/json@0.0.22': + resolution: {integrity: sha512-b6gTSBjJ8G8SuO3Gbbj+zXbVx8NSs1EbpbMKpzGLWMdkR+98McH9bEjSz3+0mPJf68c5nxa3CrJHp5EQNXM6zQ==} + + '@uniswap/lib@4.0.1-alpha': + resolution: {integrity: sha512-f6UIliwBbRsgVLxIaBANF6w09tYqc6Y/qXdsrbEmXHyFA7ILiKrIwRFXe1yOg8M3cksgVsO9N7yuL2DdCGQKBA==} + engines: {node: '>=10'} + + '@uniswap/v2-core@1.0.1': + resolution: {integrity: sha512-MtybtkUPSyysqLY2U210NBDeCHX+ltHt3oADGdjqoThZaFRDKwM6k1Nb3F0A3hk5hwuQvytFWhrWHOEq6nVJ8Q==} + engines: {node: '>=10'} + + '@uniswap/v3-core@1.0.1': + resolution: {integrity: sha512-7pVk4hEm00j9tc71Y9+ssYpO6ytkeI0y7WE9P6UcmNzhxPePwyAxImuhVsTqWK9YFvzgtvzJHi64pBl4jUzKMQ==} + engines: {node: '>=10'} + + '@uniswap/v3-periphery@1.4.4': + resolution: {integrity: sha512-S4+m+wh8HbWSO3DKk4LwUCPZJTpCugIsHrWR86m/OrUyvSqGDTXKFfc2sMuGXCZrD1ZqO3rhQsKgdWg3Hbb2Kw==} + engines: {node: '>=10'} + + adm-zip@0.4.16: + resolution: {integrity: sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==} + engines: {node: '>=0.3.0'} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + base64-sol@1.0.1: + resolution: {integrity: sha512-ld3cCNMeXt4uJXmLZBHFGMvVpK9KsLVEhPpFRXnvSVAqABKbuNZg/+dsq3NuM+wxFLb/UrVkz7m1ciWmkMfTbg==} + + chalk@5.6.2: + resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + esbuild@0.27.3: + resolution: {integrity: sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==} + engines: {node: '>=18'} + hasBin: true + + ethereum-cryptography@2.2.1: + resolution: {integrity: sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==} + + fast-equals@5.4.0: + resolution: {integrity: sha512-jt2DW/aNFNwke7AUd+Z+e6pz39KO5rzdbbFCg2sGafS4mk13MI7Z8O5z9cADNn5lhGODIgLwug6TZO2ctf7kcw==} + engines: {node: '>=6.0.0'} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + get-tsconfig@4.13.6: + resolution: {integrity: sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw==} + + hardhat@3.1.10: + resolution: {integrity: sha512-+J3LmO5j3r8bYRIiImaTT6WtT0EKcR0nfFxWq/bokAKZq7GKYf6ErKSrOuH+gFIqo+CfnrkxcgbPY20P5vuuSQ==} + hasBin: true + + json-stream-stringify@3.1.6: + resolution: {integrity: sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==} + engines: {node: '>=7.10.1'} + + micro-eth-signer@0.14.0: + resolution: {integrity: sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==} + + micro-packed@0.7.3: + resolution: {integrity: sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + p-map@7.0.4: + resolution: {integrity: sha512-tkAQEw8ysMzmkhgw8k+1U/iPhWNhykKnSk4Rd5zLoPJCuJaGRPo6YposrZgaxHKzDHdDWWZvE/Sk7hsL2X/CpQ==} + engines: {node: '>=18'} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + + resolve.exports@2.0.3: + resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} + engines: {node: '>=10'} + + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + engines: {node: '>=10'} + hasBin: true + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + tsx@4.21.0: + resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==} + engines: {node: '>=18.0.0'} + hasBin: true + + undici@6.23.0: + resolution: {integrity: sha512-VfQPToRA5FZs/qJxLIinmU59u0r7LXqoJkCzinq3ckNJp3vKEh7jTWN589YQ5+aoAC/TGRLyJLCPKcLQbM8r9g==} + engines: {node: '>=18.17'} + + ws@8.19.0: + resolution: {integrity: sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + zod@3.25.76: + resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} + +snapshots: + + '@account-abstraction/contracts@0.8.0': + dependencies: + '@openzeppelin/contracts': 5.4.0 + '@uniswap/v3-periphery': 1.4.4 + + '@esbuild/aix-ppc64@0.27.3': + optional: true + + '@esbuild/android-arm64@0.27.3': + optional: true + + '@esbuild/android-arm@0.27.3': + optional: true + + '@esbuild/android-x64@0.27.3': + optional: true + + '@esbuild/darwin-arm64@0.27.3': + optional: true + + '@esbuild/darwin-x64@0.27.3': + optional: true + + '@esbuild/freebsd-arm64@0.27.3': + optional: true + + '@esbuild/freebsd-x64@0.27.3': + optional: true + + '@esbuild/linux-arm64@0.27.3': + optional: true + + '@esbuild/linux-arm@0.27.3': + optional: true + + '@esbuild/linux-ia32@0.27.3': + optional: true + + '@esbuild/linux-loong64@0.27.3': + optional: true + + '@esbuild/linux-mips64el@0.27.3': + optional: true + + '@esbuild/linux-ppc64@0.27.3': + optional: true + + '@esbuild/linux-riscv64@0.27.3': + optional: true + + '@esbuild/linux-s390x@0.27.3': + optional: true + + '@esbuild/linux-x64@0.27.3': + optional: true + + '@esbuild/netbsd-arm64@0.27.3': + optional: true + + '@esbuild/netbsd-x64@0.27.3': + optional: true + + '@esbuild/openbsd-arm64@0.27.3': + optional: true + + '@esbuild/openbsd-x64@0.27.3': + optional: true + + '@esbuild/openharmony-arm64@0.27.3': + optional: true + + '@esbuild/sunos-x64@0.27.3': + optional: true + + '@esbuild/win32-arm64@0.27.3': + optional: true + + '@esbuild/win32-ia32@0.27.3': + optional: true + + '@esbuild/win32-x64@0.27.3': + optional: true + + '@noble/curves@1.4.2': + dependencies: + '@noble/hashes': 1.4.0 + + '@noble/curves@1.8.2': + dependencies: + '@noble/hashes': 1.7.2 + + '@noble/hashes@1.4.0': {} + + '@noble/hashes@1.7.2': {} + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.24': {} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.24': {} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.24': {} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.24': {} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.24': {} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.24': {} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.24': {} + + '@nomicfoundation/edr@0.12.0-next.24': + dependencies: + '@nomicfoundation/edr-darwin-arm64': 0.12.0-next.24 + '@nomicfoundation/edr-darwin-x64': 0.12.0-next.24 + '@nomicfoundation/edr-linux-arm64-gnu': 0.12.0-next.24 + '@nomicfoundation/edr-linux-arm64-musl': 0.12.0-next.24 + '@nomicfoundation/edr-linux-x64-gnu': 0.12.0-next.24 + '@nomicfoundation/edr-linux-x64-musl': 0.12.0-next.24 + '@nomicfoundation/edr-win32-x64-msvc': 0.12.0-next.24 + + '@nomicfoundation/hardhat-errors@3.0.7': + dependencies: + '@nomicfoundation/hardhat-utils': 4.0.0 + transitivePeerDependencies: + - supports-color + + '@nomicfoundation/hardhat-utils@4.0.0': + dependencies: + '@streamparser/json-node': 0.0.22 + debug: 4.4.3 + env-paths: 2.2.1 + ethereum-cryptography: 2.2.1 + fast-equals: 5.4.0 + json-stream-stringify: 3.1.6 + rfdc: 1.4.1 + undici: 6.23.0 + transitivePeerDependencies: + - supports-color + + '@nomicfoundation/hardhat-vendored@3.0.1': {} + + '@nomicfoundation/hardhat-zod-utils@3.0.2(zod@3.25.76)': + dependencies: + '@nomicfoundation/hardhat-errors': 3.0.7 + '@nomicfoundation/hardhat-utils': 4.0.0 + zod: 3.25.76 + transitivePeerDependencies: + - supports-color + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer@0.1.2': + optionalDependencies: + '@nomicfoundation/solidity-analyzer-darwin-arm64': 0.1.2 + '@nomicfoundation/solidity-analyzer-darwin-x64': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-win32-x64-msvc': 0.1.2 + + '@openzeppelin/contracts@3.4.2-solc-0.7': {} + + '@openzeppelin/contracts@5.4.0': {} + + '@scure/base@1.1.9': {} + + '@scure/base@1.2.6': {} + + '@scure/bip32@1.4.0': + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.3.0': + dependencies: + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@sentry/core@9.47.1': {} + + '@streamparser/json-node@0.0.22': + dependencies: + '@streamparser/json': 0.0.22 + + '@streamparser/json@0.0.22': {} + + '@uniswap/lib@4.0.1-alpha': {} + + '@uniswap/v2-core@1.0.1': {} + + '@uniswap/v3-core@1.0.1': {} + + '@uniswap/v3-periphery@1.4.4': + dependencies: + '@openzeppelin/contracts': 3.4.2-solc-0.7 + '@uniswap/lib': 4.0.1-alpha + '@uniswap/v2-core': 1.0.1 + '@uniswap/v3-core': 1.0.1 + base64-sol: 1.0.1 + + adm-zip@0.4.16: {} + + ansi-colors@4.1.3: {} + + ansi-regex@5.0.1: {} + + base64-sol@1.0.1: {} + + chalk@5.6.2: {} + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + enquirer@2.4.1: + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + + env-paths@2.2.1: {} + + esbuild@0.27.3: + optionalDependencies: + '@esbuild/aix-ppc64': 0.27.3 + '@esbuild/android-arm': 0.27.3 + '@esbuild/android-arm64': 0.27.3 + '@esbuild/android-x64': 0.27.3 + '@esbuild/darwin-arm64': 0.27.3 + '@esbuild/darwin-x64': 0.27.3 + '@esbuild/freebsd-arm64': 0.27.3 + '@esbuild/freebsd-x64': 0.27.3 + '@esbuild/linux-arm': 0.27.3 + '@esbuild/linux-arm64': 0.27.3 + '@esbuild/linux-ia32': 0.27.3 + '@esbuild/linux-loong64': 0.27.3 + '@esbuild/linux-mips64el': 0.27.3 + '@esbuild/linux-ppc64': 0.27.3 + '@esbuild/linux-riscv64': 0.27.3 + '@esbuild/linux-s390x': 0.27.3 + '@esbuild/linux-x64': 0.27.3 + '@esbuild/netbsd-arm64': 0.27.3 + '@esbuild/netbsd-x64': 0.27.3 + '@esbuild/openbsd-arm64': 0.27.3 + '@esbuild/openbsd-x64': 0.27.3 + '@esbuild/openharmony-arm64': 0.27.3 + '@esbuild/sunos-x64': 0.27.3 + '@esbuild/win32-arm64': 0.27.3 + '@esbuild/win32-ia32': 0.27.3 + '@esbuild/win32-x64': 0.27.3 + + ethereum-cryptography@2.2.1: + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/bip32': 1.4.0 + '@scure/bip39': 1.3.0 + + fast-equals@5.4.0: {} + + fsevents@2.3.3: + optional: true + + get-tsconfig@4.13.6: + dependencies: + resolve-pkg-maps: 1.0.0 + + hardhat@3.1.10: + dependencies: + '@nomicfoundation/edr': 0.12.0-next.24 + '@nomicfoundation/hardhat-errors': 3.0.7 + '@nomicfoundation/hardhat-utils': 4.0.0 + '@nomicfoundation/hardhat-vendored': 3.0.1 + '@nomicfoundation/hardhat-zod-utils': 3.0.2(zod@3.25.76) + '@nomicfoundation/solidity-analyzer': 0.1.2 + '@sentry/core': 9.47.1 + adm-zip: 0.4.16 + chalk: 5.6.2 + chokidar: 4.0.3 + debug: 4.4.3 + enquirer: 2.4.1 + ethereum-cryptography: 2.2.1 + micro-eth-signer: 0.14.0 + p-map: 7.0.4 + resolve.exports: 2.0.3 + semver: 7.7.4 + tsx: 4.21.0 + ws: 8.19.0 + zod: 3.25.76 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + json-stream-stringify@3.1.6: {} + + micro-eth-signer@0.14.0: + dependencies: + '@noble/curves': 1.8.2 + '@noble/hashes': 1.7.2 + micro-packed: 0.7.3 + + micro-packed@0.7.3: + dependencies: + '@scure/base': 1.2.6 + + ms@2.1.3: {} + + p-map@7.0.4: {} + + readdirp@4.1.2: {} + + resolve-pkg-maps@1.0.0: {} + + resolve.exports@2.0.3: {} + + rfdc@1.4.1: {} + + semver@7.7.4: {} + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + tsx@4.21.0: + dependencies: + esbuild: 0.27.3 + get-tsconfig: 4.13.6 + optionalDependencies: + fsevents: 2.3.3 + + undici@6.23.0: {} + + ws@8.19.0: {} + + zod@3.25.76: {} diff --git a/scripts/compile_smart_contracts/compile_smart_contracts.py b/scripts/compile_smart_contracts/compile_smart_contracts.py index 6dc6b7ec6..3d166ed58 100644 --- a/scripts/compile_smart_contracts/compile_smart_contracts.py +++ b/scripts/compile_smart_contracts/compile_smart_contracts.py @@ -230,11 +230,11 @@ def compile_contracts_in_dir(target_dir: Path): if not os.path.exists("hardhat.config.js"): raise ValueError("compilation can only work in a HardHat setup") - install_failed = os.system("npm install") + install_failed = os.system("pnpm install") if install_failed: - raise ValueError("Failed to install npm packages.") + raise ValueError("Failed to install pnpm packages.") - compilation_failed = os.system("npx hardhat compile") + compilation_failed = os.system("pnpm exec hardhat compile") if compilation_failed: raise ValueError("Failed to compile Solidity contracts.") diff --git a/scripts/compile_smart_contracts/testdata/package.json b/scripts/compile_smart_contracts/testdata/package.json index 4034c74c3..16056f7e1 100644 --- a/scripts/compile_smart_contracts/testdata/package.json +++ b/scripts/compile_smart_contracts/testdata/package.json @@ -1,6 +1,7 @@ { "name": "evmos-contracts", "version": "2.0.0", + "packageManager": "pnpm@9.15.0", "description": "A collection of smart contracts used in the development of the Cosmos EVM blockchain.", "devDependencies": { "@openzeppelin/contracts": "^4.9.6", diff --git a/scripts/compile_smart_contracts/testdata/pnpm-lock.yaml b/scripts/compile_smart_contracts/testdata/pnpm-lock.yaml new file mode 100644 index 000000000..4d5a73acd --- /dev/null +++ b/scripts/compile_smart_contracts/testdata/pnpm-lock.yaml @@ -0,0 +1,1731 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + devDependencies: + '@openzeppelin/contracts': + specifier: ^4.9.6 + version: 4.9.6 + hardhat: + specifier: ^2.22.2 + version: 2.28.6 + +packages: + + '@ethereumjs/rlp@5.0.2': + resolution: {integrity: sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA==} + engines: {node: '>=18'} + hasBin: true + + '@ethereumjs/util@9.1.0': + resolution: {integrity: sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog==} + engines: {node: '>=18'} + + '@ethersproject/abi@5.8.0': + resolution: {integrity: sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==} + + '@ethersproject/abstract-provider@5.8.0': + resolution: {integrity: sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==} + + '@ethersproject/abstract-signer@5.8.0': + resolution: {integrity: sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==} + + '@ethersproject/address@5.8.0': + resolution: {integrity: sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==} + + '@ethersproject/base64@5.8.0': + resolution: {integrity: sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==} + + '@ethersproject/bignumber@5.8.0': + resolution: {integrity: sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==} + + '@ethersproject/bytes@5.8.0': + resolution: {integrity: sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==} + + '@ethersproject/constants@5.8.0': + resolution: {integrity: sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==} + + '@ethersproject/hash@5.8.0': + resolution: {integrity: sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==} + + '@ethersproject/keccak256@5.8.0': + resolution: {integrity: sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==} + + '@ethersproject/logger@5.8.0': + resolution: {integrity: sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==} + + '@ethersproject/networks@5.8.0': + resolution: {integrity: sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==} + + '@ethersproject/properties@5.8.0': + resolution: {integrity: sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==} + + '@ethersproject/rlp@5.8.0': + resolution: {integrity: sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==} + + '@ethersproject/signing-key@5.8.0': + resolution: {integrity: sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==} + + '@ethersproject/strings@5.8.0': + resolution: {integrity: sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==} + + '@ethersproject/transactions@5.8.0': + resolution: {integrity: sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==} + + '@ethersproject/web@5.8.0': + resolution: {integrity: sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==} + + '@fastify/busboy@2.1.1': + resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} + engines: {node: '>=14'} + + '@noble/curves@1.4.2': + resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} + + '@noble/curves@1.8.2': + resolution: {integrity: sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.2.0': + resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==} + + '@noble/hashes@1.4.0': + resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} + engines: {node: '>= 16'} + + '@noble/hashes@1.7.2': + resolution: {integrity: sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==} + engines: {node: ^14.21.3 || >=16} + + '@noble/secp256k1@1.7.1': + resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==} + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.23': + resolution: {integrity: sha512-Amh7mRoDzZyJJ4efqoePqdoZOzharmSOttZuJDlVE5yy07BoE8hL6ZRpa5fNYn0LCqn/KoWs8OHANWxhKDGhvQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.23': + resolution: {integrity: sha512-9wn489FIQm7m0UCD+HhktjWx6vskZzeZD9oDc2k9ZvbBzdXwPp5tiDqUBJ+eQpByAzCDfteAJwRn2lQCE0U+Iw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.23': + resolution: {integrity: sha512-nlk5EejSzEUfEngv0Jkhqq3/wINIfF2ED9wAofc22w/V1DV99ASh9l3/e/MIHOQFecIZ9MDqt0Em9/oDyB1Uew==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.23': + resolution: {integrity: sha512-SJuPBp3Rc6vM92UtVTUxZQ/QlLhLfwTftt2XUiYohmGKB3RjGzpgduEFMCA0LEnucUckU6UHrJNFHiDm77C4PQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.23': + resolution: {integrity: sha512-NU+Qs3u7Qt6t3bJFdmmjd5CsvgI2bPPzO31KifM2Ez96/jsXYho5debtTQnimlb5NAqiHTSlxjh/F8ROcptmeQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.23': + resolution: {integrity: sha512-F78fZA2h6/ssiCSZOovlgIu0dUeI7ItKPsDDF3UUlIibef052GCXmliMinC90jVPbrjUADMd1BUwjfI0Z8OllQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.23': + resolution: {integrity: sha512-IfJZQJn7d/YyqhmguBIGoCKjE9dKjbu6V6iNEPApfwf5JyyjHYyyfkLU4rf7hygj57bfH4sl1jtQ6r8HnT62lw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr@0.12.0-next.23': + resolution: {integrity: sha512-F2/6HZh8Q9RsgkOIkRrckldbhPjIZY7d4mT9LYuW68miwGQ5l7CkAgcz9fRRiurA0+YJhtsbx/EyrD9DmX9BOw==} + engines: {node: '>= 20'} + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + resolution: {integrity: sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + resolution: {integrity: sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + resolution: {integrity: sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + resolution: {integrity: sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + resolution: {integrity: sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + resolution: {integrity: sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + resolution: {integrity: sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer@0.1.2': + resolution: {integrity: sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA==} + engines: {node: '>= 12'} + + '@openzeppelin/contracts@4.9.6': + resolution: {integrity: sha512-xSmezSupL+y9VkHZJGDoCBpmnB2ogM13ccaYDWqJTfS3dbuHkgjuwDFUmaFauBCboQMGB/S5UqUl2y54X99BmA==} + + '@scure/base@1.1.9': + resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} + + '@scure/base@1.2.6': + resolution: {integrity: sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==} + + '@scure/bip32@1.1.5': + resolution: {integrity: sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==} + + '@scure/bip32@1.4.0': + resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} + + '@scure/bip39@1.1.1': + resolution: {integrity: sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==} + + '@scure/bip39@1.3.0': + resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} + + '@sentry/core@5.30.0': + resolution: {integrity: sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==} + engines: {node: '>=6'} + + '@sentry/hub@5.30.0': + resolution: {integrity: sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==} + engines: {node: '>=6'} + + '@sentry/minimal@5.30.0': + resolution: {integrity: sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==} + engines: {node: '>=6'} + + '@sentry/node@5.30.0': + resolution: {integrity: sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==} + engines: {node: '>=6'} + + '@sentry/tracing@5.30.0': + resolution: {integrity: sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==} + engines: {node: '>=6'} + + '@sentry/types@5.30.0': + resolution: {integrity: sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==} + engines: {node: '>=6'} + + '@sentry/utils@5.30.0': + resolution: {integrity: sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==} + engines: {node: '>=6'} + + adm-zip@0.4.16: + resolution: {integrity: sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==} + engines: {node: '>=0.3.0'} + + agent-base@6.0.2: + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} + + aggregate-error@3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} + + ansi-align@3.0.1: + resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + bn.js@4.12.3: + resolution: {integrity: sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==} + + bn.js@5.2.3: + resolution: {integrity: sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==} + + boxen@5.1.2: + resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} + engines: {node: '>=10'} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + brorand@1.1.0: + resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} + + browser-stdout@1.3.1: + resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} + + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + ci-info@2.0.0: + resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} + + clean-stack@2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} + + cli-boxes@2.2.1: + resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} + engines: {node: '>=6'} + + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + command-exists@1.2.9: + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + + cookie@0.4.2: + resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} + engines: {node: '>= 0.6'} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decamelize@4.0.0: + resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} + engines: {node: '>=10'} + + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + + diff@5.2.2: + resolution: {integrity: sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A==} + engines: {node: '>=0.3.1'} + + elliptic@6.6.1: + resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + ethereum-cryptography@1.2.0: + resolution: {integrity: sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==} + + ethereum-cryptography@2.2.1: + resolution: {integrity: sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + fp-ts@1.19.3: + resolution: {integrity: sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==} + + fs-extra@7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob@8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + hardhat@2.28.6: + resolution: {integrity: sha512-zQze7qe+8ltwHvhX5NQ8sN1N37WWZGw8L63y+2XcPxGwAjc/SMF829z3NS6o1krX0sryhAsVBK/xrwUqlsot4Q==} + hasBin: true + peerDependencies: + ts-node: '*' + typescript: '*' + peerDependenciesMeta: + ts-node: + optional: true + typescript: + optional: true + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hash.js@1.1.7: + resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + hmac-drbg@1.0.1: + resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} + + http-errors@2.0.1: + resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==} + engines: {node: '>= 0.8'} + + https-proxy-agent@5.0.1: + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} + + iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + + immutable@4.3.7: + resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==} + + indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + io-ts@1.10.4: + resolution: {integrity: sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + js-sha3@0.8.0: + resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + json-stream-stringify@3.1.6: + resolution: {integrity: sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==} + engines: {node: '>=7.10.1'} + + jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + + keccak@3.0.4: + resolution: {integrity: sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==} + engines: {node: '>=10.0.0'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash@4.17.23: + resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + lru_map@0.3.3: + resolution: {integrity: sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==} + + memorystream@0.3.1: + resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} + engines: {node: '>= 0.10.0'} + + micro-eth-signer@0.14.0: + resolution: {integrity: sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==} + + micro-packed@0.7.3: + resolution: {integrity: sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==} + + minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + + minimalistic-crypto-utils@1.0.1: + resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + + minimatch@5.1.9: + resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} + engines: {node: '>=10'} + + mnemonist@0.38.5: + resolution: {integrity: sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==} + + mocha@10.8.2: + resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==} + engines: {node: '>= 14.0.0'} + hasBin: true + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + node-addon-api@2.0.2: + resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + + node-gyp-build@4.8.4: + resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} + hasBin: true + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + obliterator@2.0.5: + resolution: {integrity: sha512-42CPE9AhahZRsMNslczq0ctAEtqk8Eka26QofnqC346BZdHDySk3LWka23LI7ULIw11NmltpiLagIq8gBozxTw==} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-map@4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} + engines: {node: '>=10'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + + raw-body@2.5.3: + resolution: {integrity: sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==} + engines: {node: '>= 0.8'} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + resolve@1.17.0: + resolution: {integrity: sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + + solc@0.8.26: + resolution: {integrity: sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==} + engines: {node: '>=10.0.0'} + hasBin: true + + source-map-support@0.5.21: + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + stacktrace-parser@0.1.11: + resolution: {integrity: sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==} + engines: {node: '>=6'} + + statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + + tsort@0.0.1: + resolution: {integrity: sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + type-fest@0.7.1: + resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} + engines: {node: '>=8'} + + undici@5.29.0: + resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==} + engines: {node: '>=14.0'} + + universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + uuid@8.3.2: + resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} + hasBin: true + + widest-line@3.1.0: + resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} + engines: {node: '>=8'} + + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@7.5.10: + resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==} + engines: {node: '>=8.3.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + + yargs-unparser@2.0.0: + resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} + engines: {node: '>=10'} + + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@ethereumjs/rlp@5.0.2': {} + + '@ethereumjs/util@9.1.0': + dependencies: + '@ethereumjs/rlp': 5.0.2 + ethereum-cryptography: 2.2.1 + + '@ethersproject/abi@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/abstract-provider@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 + + '@ethersproject/abstract-signer@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + + '@ethersproject/address@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/rlp': 5.8.0 + + '@ethersproject/base64@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + + '@ethersproject/bignumber@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + bn.js: 5.2.3 + + '@ethersproject/bytes@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/constants@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + + '@ethersproject/hash@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/keccak256@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + js-sha3: 0.8.0 + + '@ethersproject/logger@5.8.0': {} + + '@ethersproject/networks@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/properties@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/rlp@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/signing-key@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + bn.js: 5.2.3 + elliptic: 6.6.1 + hash.js: 1.1.7 + + '@ethersproject/strings@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/transactions@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + + '@ethersproject/web@5.8.0': + dependencies: + '@ethersproject/base64': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@fastify/busboy@2.1.1': {} + + '@noble/curves@1.4.2': + dependencies: + '@noble/hashes': 1.4.0 + + '@noble/curves@1.8.2': + dependencies: + '@noble/hashes': 1.7.2 + + '@noble/hashes@1.2.0': {} + + '@noble/hashes@1.4.0': {} + + '@noble/hashes@1.7.2': {} + + '@noble/secp256k1@1.7.1': {} + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.23': {} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.23': {} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.23': {} + + '@nomicfoundation/edr@0.12.0-next.23': + dependencies: + '@nomicfoundation/edr-darwin-arm64': 0.12.0-next.23 + '@nomicfoundation/edr-darwin-x64': 0.12.0-next.23 + '@nomicfoundation/edr-linux-arm64-gnu': 0.12.0-next.23 + '@nomicfoundation/edr-linux-arm64-musl': 0.12.0-next.23 + '@nomicfoundation/edr-linux-x64-gnu': 0.12.0-next.23 + '@nomicfoundation/edr-linux-x64-musl': 0.12.0-next.23 + '@nomicfoundation/edr-win32-x64-msvc': 0.12.0-next.23 + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer@0.1.2': + optionalDependencies: + '@nomicfoundation/solidity-analyzer-darwin-arm64': 0.1.2 + '@nomicfoundation/solidity-analyzer-darwin-x64': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-win32-x64-msvc': 0.1.2 + + '@openzeppelin/contracts@4.9.6': {} + + '@scure/base@1.1.9': {} + + '@scure/base@1.2.6': {} + + '@scure/bip32@1.1.5': + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/base': 1.1.9 + + '@scure/bip32@1.4.0': + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.1.1': + dependencies: + '@noble/hashes': 1.2.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.3.0': + dependencies: + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@sentry/core@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/hub@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/minimal@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/types': 5.30.0 + tslib: 1.14.1 + + '@sentry/node@5.30.0': + dependencies: + '@sentry/core': 5.30.0 + '@sentry/hub': 5.30.0 + '@sentry/tracing': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + cookie: 0.4.2 + https-proxy-agent: 5.0.1 + lru_map: 0.3.3 + tslib: 1.14.1 + transitivePeerDependencies: + - supports-color + + '@sentry/tracing@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/types@5.30.0': {} + + '@sentry/utils@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + tslib: 1.14.1 + + adm-zip@0.4.16: {} + + agent-base@6.0.2: + dependencies: + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + aggregate-error@3.1.0: + dependencies: + clean-stack: 2.2.0 + indent-string: 4.0.0 + + ansi-align@3.0.1: + dependencies: + string-width: 4.2.3 + + ansi-colors@4.1.3: {} + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + argparse@2.0.1: {} + + balanced-match@1.0.2: {} + + binary-extensions@2.3.0: {} + + bn.js@4.12.3: {} + + bn.js@5.2.3: {} + + boxen@5.1.2: + dependencies: + ansi-align: 3.0.1 + camelcase: 6.3.0 + chalk: 4.1.2 + cli-boxes: 2.2.1 + string-width: 4.2.3 + type-fest: 0.20.2 + widest-line: 3.1.0 + wrap-ansi: 7.0.0 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + brorand@1.1.0: {} + + browser-stdout@1.3.1: {} + + buffer-from@1.1.2: {} + + bytes@3.1.2: {} + + camelcase@6.3.0: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + ci-info@2.0.0: {} + + clean-stack@2.2.0: {} + + cli-boxes@2.2.1: {} + + cliui@7.0.4: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + command-exists@1.2.9: {} + + commander@8.3.0: {} + + cookie@0.4.2: {} + + debug@4.4.3(supports-color@8.1.1): + dependencies: + ms: 2.1.3 + optionalDependencies: + supports-color: 8.1.1 + + decamelize@4.0.0: {} + + depd@2.0.0: {} + + diff@5.2.2: {} + + elliptic@6.6.1: + dependencies: + bn.js: 4.12.3 + brorand: 1.1.0 + hash.js: 1.1.7 + hmac-drbg: 1.0.1 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + emoji-regex@8.0.0: {} + + enquirer@2.4.1: + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + + env-paths@2.2.1: {} + + escalade@3.2.0: {} + + escape-string-regexp@4.0.0: {} + + ethereum-cryptography@1.2.0: + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/bip32': 1.1.5 + '@scure/bip39': 1.1.1 + + ethereum-cryptography@2.2.1: + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/bip32': 1.4.0 + '@scure/bip39': 1.3.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat@5.0.2: {} + + follow-redirects@1.15.11(debug@4.4.3): + optionalDependencies: + debug: 4.4.3(supports-color@8.1.1) + + fp-ts@1.19.3: {} + + fs-extra@7.0.1: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + get-caller-file@2.0.5: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob@8.1.0: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 5.1.9 + once: 1.4.0 + + graceful-fs@4.2.11: {} + + hardhat@2.28.6: + dependencies: + '@ethereumjs/util': 9.1.0 + '@ethersproject/abi': 5.8.0 + '@nomicfoundation/edr': 0.12.0-next.23 + '@nomicfoundation/solidity-analyzer': 0.1.2 + '@sentry/node': 5.30.0 + adm-zip: 0.4.16 + aggregate-error: 3.1.0 + ansi-escapes: 4.3.2 + boxen: 5.1.2 + chokidar: 4.0.3 + ci-info: 2.0.0 + debug: 4.4.3(supports-color@8.1.1) + enquirer: 2.4.1 + env-paths: 2.2.1 + ethereum-cryptography: 1.2.0 + find-up: 5.0.0 + fp-ts: 1.19.3 + fs-extra: 7.0.1 + immutable: 4.3.7 + io-ts: 1.10.4 + json-stream-stringify: 3.1.6 + keccak: 3.0.4 + lodash: 4.17.23 + micro-eth-signer: 0.14.0 + mnemonist: 0.38.5 + mocha: 10.8.2 + p-map: 4.0.0 + picocolors: 1.1.1 + raw-body: 2.5.3 + resolve: 1.17.0 + semver: 6.3.1 + solc: 0.8.26(debug@4.4.3) + source-map-support: 0.5.21 + stacktrace-parser: 0.1.11 + tinyglobby: 0.2.15 + tsort: 0.0.1 + undici: 5.29.0 + uuid: 8.3.2 + ws: 7.5.10 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + has-flag@4.0.0: {} + + hash.js@1.1.7: + dependencies: + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + + he@1.2.0: {} + + hmac-drbg@1.0.1: + dependencies: + hash.js: 1.1.7 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + http-errors@2.0.1: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.2 + toidentifier: 1.0.1 + + https-proxy-agent@5.0.1: + dependencies: + agent-base: 6.0.2 + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + iconv-lite@0.4.24: + dependencies: + safer-buffer: 2.1.2 + + immutable@4.3.7: {} + + indent-string@4.0.0: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + io-ts@1.10.4: + dependencies: + fp-ts: 1.19.3 + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-number@7.0.0: {} + + is-plain-obj@2.1.0: {} + + is-unicode-supported@0.1.0: {} + + js-sha3@0.8.0: {} + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + json-stream-stringify@3.1.6: {} + + jsonfile@4.0.0: + optionalDependencies: + graceful-fs: 4.2.11 + + keccak@3.0.4: + dependencies: + node-addon-api: 2.0.2 + node-gyp-build: 4.8.4 + readable-stream: 3.6.2 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash@4.17.23: {} + + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + lru_map@0.3.3: {} + + memorystream@0.3.1: {} + + micro-eth-signer@0.14.0: + dependencies: + '@noble/curves': 1.8.2 + '@noble/hashes': 1.7.2 + micro-packed: 0.7.3 + + micro-packed@0.7.3: + dependencies: + '@scure/base': 1.2.6 + + minimalistic-assert@1.0.1: {} + + minimalistic-crypto-utils@1.0.1: {} + + minimatch@5.1.9: + dependencies: + brace-expansion: 2.0.2 + + mnemonist@0.38.5: + dependencies: + obliterator: 2.0.5 + + mocha@10.8.2: + dependencies: + ansi-colors: 4.1.3 + browser-stdout: 1.3.1 + chokidar: 3.6.0 + debug: 4.4.3(supports-color@8.1.1) + diff: 5.2.2 + escape-string-regexp: 4.0.0 + find-up: 5.0.0 + glob: 8.1.0 + he: 1.2.0 + js-yaml: 4.1.1 + log-symbols: 4.1.0 + minimatch: 5.1.9 + ms: 2.1.3 + serialize-javascript: 6.0.2 + strip-json-comments: 3.1.1 + supports-color: 8.1.1 + workerpool: 6.5.1 + yargs: 16.2.0 + yargs-parser: 20.2.9 + yargs-unparser: 2.0.0 + + ms@2.1.3: {} + + node-addon-api@2.0.2: {} + + node-gyp-build@4.8.4: {} + + normalize-path@3.0.0: {} + + obliterator@2.0.5: {} + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + os-tmpdir@1.0.2: {} + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-map@4.0.0: + dependencies: + aggregate-error: 3.1.0 + + path-exists@4.0.0: {} + + path-parse@1.0.7: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + randombytes@2.1.0: + dependencies: + safe-buffer: 5.2.1 + + raw-body@2.5.3: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.1 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + readdirp@4.1.2: {} + + require-directory@2.1.1: {} + + resolve@1.17.0: + dependencies: + path-parse: 1.0.7 + + safe-buffer@5.2.1: {} + + safer-buffer@2.1.2: {} + + semver@5.7.2: {} + + semver@6.3.1: {} + + serialize-javascript@6.0.2: + dependencies: + randombytes: 2.1.0 + + setprototypeof@1.2.0: {} + + solc@0.8.26(debug@4.4.3): + dependencies: + command-exists: 1.2.9 + commander: 8.3.0 + follow-redirects: 1.15.11(debug@4.4.3) + js-sha3: 0.8.0 + memorystream: 0.3.1 + semver: 5.7.2 + tmp: 0.0.33 + transitivePeerDependencies: + - debug + + source-map-support@0.5.21: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + + source-map@0.6.1: {} + + stacktrace-parser@0.1.11: + dependencies: + type-fest: 0.7.1 + + statuses@2.0.2: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-json-comments@3.1.1: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + tmp@0.0.33: + dependencies: + os-tmpdir: 1.0.2 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + toidentifier@1.0.1: {} + + tslib@1.14.1: {} + + tsort@0.0.1: {} + + type-fest@0.20.2: {} + + type-fest@0.21.3: {} + + type-fest@0.7.1: {} + + undici@5.29.0: + dependencies: + '@fastify/busboy': 2.1.1 + + universalify@0.1.2: {} + + unpipe@1.0.0: {} + + util-deprecate@1.0.2: {} + + uuid@8.3.2: {} + + widest-line@3.1.0: + dependencies: + string-width: 4.2.3 + + workerpool@6.5.1: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + ws@7.5.10: {} + + y18n@5.0.8: {} + + yargs-parser@20.2.9: {} + + yargs-unparser@2.0.0: + dependencies: + camelcase: 6.3.0 + decamelize: 4.0.0 + flat: 5.0.2 + is-plain-obj: 2.1.0 + + yargs@16.2.0: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + + yocto-queue@0.1.0: {} diff --git a/scripts/run-solidity-tests.sh b/scripts/run-solidity-tests.sh index 1aecd33c7..15207c8ac 100755 --- a/scripts/run-solidity-tests.sh +++ b/scripts/run-solidity-tests.sh @@ -14,13 +14,11 @@ make install cd tests/solidity || exit -if command -v yarn &>/dev/null; then - yarn install +if command -v pnpm &>/dev/null; then + pnpm install else - curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list - sudo apt update && sudo apt install yarn - yarn install + corepack enable && corepack prepare pnpm@latest --activate + pnpm install fi -yarn test --network cosmos "$@" +pnpm test -- --network cosmos "$@" diff --git a/scripts/tests_compatibility_hardhat.sh b/scripts/tests_compatibility_hardhat.sh index 753102d62..d8d8efd14 100755 --- a/scripts/tests_compatibility_hardhat.sh +++ b/scripts/tests_compatibility_hardhat.sh @@ -51,23 +51,19 @@ wait_for_node 10 # Change to the test directory cd "$TEST_DIR" -# Install npm dependencies if not already installed -if [ ! -d "node_modules" ]; then - echo "Installing npm dependencies..." - npm install -else - echo "npm dependencies already installed, skipping..." -fi +# Install dependencies (pnpm install is fast when already up to date; ensures pnpm layout for pnpm exec) +echo "Installing dependencies..." +pnpm install echo "Running hardhat compatibility tests..." -# Run tests with npx hardhat test (default network) +# Run tests with pnpm exec hardhat test (default network) if [ "$VERBOSE" = true ]; then - echo "Running: npx hardhat test" - npx hardhat test 2>&1 | tee /tmp/hardhat-test.log + echo "Running: pnpm exec hardhat test" + pnpm exec hardhat test 2>&1 | tee /tmp/hardhat-test.log else - echo "Running: npx hardhat test" - npx hardhat test 2>&1 | tee /tmp/hardhat-test.log + echo "Running: pnpm exec hardhat test" + pnpm exec hardhat test 2>&1 | tee /tmp/hardhat-test.log fi # Check if tests passed and no failures occurred @@ -85,13 +81,13 @@ fi echo "Running hardhat compatibility tests with localhost network..." -# Run tests with npx hardhat test --network localhost +# Run tests with pnpm exec hardhat test --network localhost if [ "$VERBOSE" = true ]; then - echo "Running: npx hardhat test --network localhost" - npx hardhat test --network localhost 2>&1 | tee /tmp/hardhat-test-localhost.log + echo "Running: pnpm exec hardhat test --network localhost" + pnpm exec hardhat test --network localhost 2>&1 | tee /tmp/hardhat-test-localhost.log else - echo "Running: npx hardhat test --network localhost" - npx hardhat test --network localhost 2>&1 | tee /tmp/hardhat-test-localhost.log + echo "Running: pnpm exec hardhat test --network localhost" + pnpm exec hardhat test --network localhost 2>&1 | tee /tmp/hardhat-test-localhost.log fi # Check if tests passed and no failures occurred diff --git a/scripts/tests_compatibility_setup.sh b/scripts/tests_compatibility_setup.sh index ca948d243..4abd8cc19 100755 --- a/scripts/tests_compatibility_setup.sh +++ b/scripts/tests_compatibility_setup.sh @@ -20,11 +20,16 @@ if ! command -v forge >/dev/null 2>&1; then foundryup fi -# Install Node.js and npm if missing -if ! command -v npm >/dev/null 2>&1; then +# Install Node.js and pnpm if missing +if ! command -v node >/dev/null 2>&1; then curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - sudo apt-get install -y nodejs fi +if ! command -v pnpm >/dev/null 2>&1; then + corepack enable 2>/dev/null || true + npm install -g corepack 2>/dev/null || true + corepack enable && corepack prepare pnpm@latest --activate +fi # ----------------------------------------------------------------------------- # Install dependencies for the individual test suites @@ -63,18 +68,14 @@ if [ -d "$COMPAT_DIR/hardhat" ]; then git submodule update fi - # Only install npm dependencies if node_modules doesn't exist - if [ ! -d "node_modules" ]; then - echo "Installing npm dependencies for hardhat/$subproject..." - npm install - else - echo "npm dependencies already installed for hardhat/$subproject, skipping..." - fi + # Install dependencies (ensures pnpm layout for pnpm exec) + echo "Installing dependencies for hardhat/$subproject..." + pnpm install # Only compile if build artifacts don't exist if [ ! -d "artifacts" ] && [ ! -d "cache" ]; then echo "Compiling hardhat contracts for $subproject..." - npx hardhat compile + pnpm exec hardhat compile else echo "Hardhat contracts already compiled for $subproject, skipping..." fi @@ -85,17 +86,13 @@ if [ -d "$COMPAT_DIR/hardhat" ]; then fi # Node based projects (viem, web3.js, sdk examples) -for dir in "$COMPAT_DIR"/sdk/* "$COMPAT_DIR"/viem "$COMPAT_DIR"/web3js; do +for dir in "$COMPAT_DIR"/sdk/* "$COMPAT_DIR"/viem "$COMPAT_DIR"/web3.js; do if [ -d "$dir" ] && [ -f "$dir/package.json" ]; then pushd "$dir" >/dev/null - # Only install npm dependencies if node_modules doesn't exist - if [ ! -d "node_modules" ]; then - echo "Installing npm dependencies for $(basename "$dir")..." - npm install - else - echo "npm dependencies already installed for $(basename "$dir"), skipping..." - fi + # Install dependencies (ensures pnpm layout for pnpm exec) + echo "Installing dependencies for $(basename "$dir")..." + pnpm install popd >/dev/null fi diff --git a/scripts/tests_compatibility_viem.sh b/scripts/tests_compatibility_viem.sh index bb885b2f7..b3559752a 100755 --- a/scripts/tests_compatibility_viem.sh +++ b/scripts/tests_compatibility_viem.sh @@ -61,23 +61,19 @@ else exit 1 fi -# Install npm dependencies if not already installed -if [ ! -d "node_modules" ]; then - echo "Installing npm dependencies..." - npm install -else - echo "npm dependencies already installed, skipping..." -fi +# Install dependencies (pnpm install is fast when already up to date; ensures pnpm layout) +echo "Installing dependencies..." +pnpm install echo "Running viem compatibility tests..." -# Run tests with npm test +# Run tests with pnpm test if [ "$VERBOSE" = true ]; then - echo "Running: npm test" - npm test + echo "Running: pnpm test" + pnpm test else - echo "Running: npm test" - npm test 2>&1 | tee /tmp/viem-test.log + echo "Running: pnpm test" + pnpm test 2>&1 | tee /tmp/viem-test.log fi # Check if tests passed diff --git a/scripts/tests_compatibility_web3js.sh b/scripts/tests_compatibility_web3js.sh index 6ff7aa476..2ad9f2359 100755 --- a/scripts/tests_compatibility_web3js.sh +++ b/scripts/tests_compatibility_web3js.sh @@ -48,23 +48,19 @@ wait_for_node 10 # Change to the test directory cd "$TEST_DIR" -# Install npm dependencies if not already installed -if [ ! -d "node_modules" ]; then - echo "Installing npm dependencies..." - npm install -else - echo "npm dependencies already installed, skipping..." -fi +# Install dependencies (pnpm install is fast when already up to date; ensures pnpm layout) +echo "Installing dependencies..." +pnpm install echo "Running web3.js compatibility tests..." -# Run tests with npm test +# Run tests with pnpm test if [ "$VERBOSE" = true ]; then - echo "Running: npm test" - npm test + echo "Running: pnpm test" + pnpm test else - echo "Running: npm test" - npm test 2>&1 | tee /tmp/web3js-test.log + echo "Running: pnpm test" + pnpm test 2>&1 | tee /tmp/web3js-test.log fi # Check if tests passed diff --git a/tests/contracts/package.json b/tests/contracts/package.json index 521e02cdc..bf2f3ed2e 100644 --- a/tests/contracts/package.json +++ b/tests/contracts/package.json @@ -1,5 +1,6 @@ { "name": "test-contracts", + "packageManager": "pnpm@9.15.0", "version": "1.0.0", "main": "index.js", "scripts": { diff --git a/tests/contracts/pnpm-lock.yaml b/tests/contracts/pnpm-lock.yaml new file mode 100644 index 000000000..34142b3a3 --- /dev/null +++ b/tests/contracts/pnpm-lock.yaml @@ -0,0 +1,30 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@account-abstraction/contracts': + specifier: ^0.6.0 + version: 0.6.0 + '@openzeppelin/contracts': + specifier: ^4.9.6 + version: 4.9.6 + +packages: + + '@account-abstraction/contracts@0.6.0': + resolution: {integrity: sha512-8ooRJuR7XzohMDM4MV34I12Ci2bmxfE9+cixakRL7lA4BAwJKQ3ahvd8FbJa9kiwkUPCUNtj+/zxDQWYYalLMQ==} + + '@openzeppelin/contracts@4.9.6': + resolution: {integrity: sha512-xSmezSupL+y9VkHZJGDoCBpmnB2ogM13ccaYDWqJTfS3dbuHkgjuwDFUmaFauBCboQMGB/S5UqUl2y54X99BmA==} + +snapshots: + + '@account-abstraction/contracts@0.6.0': {} + + '@openzeppelin/contracts@4.9.6': {} diff --git a/tests/evm-tools-compatibility/hardhat/Flattened.sol b/tests/evm-tools-compatibility/hardhat/Flattened.sol index 3e4565acd..4e8fc4a45 100644 --- a/tests/evm-tools-compatibility/hardhat/Flattened.sol +++ b/tests/evm-tools-compatibility/hardhat/Flattened.sol @@ -1,8 +1,8 @@ -// Sources flattened with hardhat v2.25.0 https://hardhat.org +// Sources flattened with hardhat v2.28.6 https://hardhat.org // SPDX-License-Identifier: MIT AND UNLICENSED -// File @openzeppelin/contracts/utils/Context.sol@v5.3.0 +// File @openzeppelin/contracts/utils/Context.sol@v5.4.0 // Original license: SPDX_License_Identifier: MIT // OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol) @@ -34,7 +34,7 @@ abstract contract Context { } -// File @openzeppelin/contracts/access/Ownable.sol@v5.3.0 +// File @openzeppelin/contracts/access/Ownable.sol@v5.4.0 // Original license: SPDX_License_Identifier: MIT // OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol) @@ -136,11 +136,11 @@ abstract contract Ownable is Context { } -// File @openzeppelin/contracts/interfaces/draft-IERC6093.sol@v5.3.0 +// File @openzeppelin/contracts/interfaces/draft-IERC6093.sol@v5.4.0 // Original license: SPDX_License_Identifier: MIT -// OpenZeppelin Contracts (last updated v5.1.0) (interfaces/draft-IERC6093.sol) -pragma solidity ^0.8.20; +// OpenZeppelin Contracts (last updated v5.4.0) (interfaces/draft-IERC6093.sol) +pragma solidity >=0.8.4; /** * @dev Standard ERC-20 Errors @@ -301,12 +301,12 @@ interface IERC1155Errors { } -// File @openzeppelin/contracts/token/ERC20/IERC20.sol@v5.3.0 +// File @openzeppelin/contracts/token/ERC20/IERC20.sol@v5.4.0 // Original license: SPDX_License_Identifier: MIT -// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC20/IERC20.sol) +// OpenZeppelin Contracts (last updated v5.4.0) (token/ERC20/IERC20.sol) -pragma solidity ^0.8.20; +pragma solidity >=0.4.16; /** * @dev Interface of the ERC-20 standard as defined in the ERC. @@ -384,12 +384,12 @@ interface IERC20 { } -// File @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol@v5.3.0 +// File @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol@v5.4.0 // Original license: SPDX_License_Identifier: MIT -// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC20/extensions/IERC20Metadata.sol) +// OpenZeppelin Contracts (last updated v5.4.0) (token/ERC20/extensions/IERC20Metadata.sol) -pragma solidity ^0.8.20; +pragma solidity >=0.6.2; /** * @dev Interface for the optional metadata functions from the ERC-20 standard. @@ -412,10 +412,10 @@ interface IERC20Metadata is IERC20 { } -// File @openzeppelin/contracts/token/ERC20/ERC20.sol@v5.3.0 +// File @openzeppelin/contracts/token/ERC20/ERC20.sol@v5.4.0 // Original license: SPDX_License_Identifier: MIT -// OpenZeppelin Contracts (last updated v5.3.0) (token/ERC20/ERC20.sol) +// OpenZeppelin Contracts (last updated v5.4.0) (token/ERC20/ERC20.sol) pragma solidity ^0.8.20; @@ -492,16 +492,12 @@ abstract contract ERC20 is Context, IERC20, IERC20Metadata, IERC20Errors { return 18; } - /** - * @dev See {IERC20-totalSupply}. - */ + /// @inheritdoc IERC20 function totalSupply() public view virtual returns (uint256) { return _totalSupply; } - /** - * @dev See {IERC20-balanceOf}. - */ + /// @inheritdoc IERC20 function balanceOf(address account) public view virtual returns (uint256) { return _balances[account]; } @@ -520,9 +516,7 @@ abstract contract ERC20 is Context, IERC20, IERC20Metadata, IERC20Errors { return true; } - /** - * @dev See {IERC20-allowance}. - */ + /// @inheritdoc IERC20 function allowance(address owner, address spender) public view virtual returns (uint256) { return _allowances[owner][spender]; } diff --git a/tests/evm-tools-compatibility/hardhat/README.md b/tests/evm-tools-compatibility/hardhat/README.md index 1d9a2c729..8d0d2a923 100644 --- a/tests/evm-tools-compatibility/hardhat/README.md +++ b/tests/evm-tools-compatibility/hardhat/README.md @@ -9,19 +9,19 @@ ______________________________________________________________________ ## Basic Test Environment (Ethereum Fork) ```shell -npx hardhat test +pnpm exec hardhat test ``` ## Interchain Test (Local Node) ```shell -npx hardhat test --network localhost +pnpm exec hardhat test --network localhost ``` ### Test for Uniswap deployment ```shell -npx hardhat test test/uniswap.test.js --network localhost --show-stack-traces +pnpm exec hardhat test test/uniswap.test.js --network localhost --show-stack-traces ``` ### Test Compile for Uniswap v3-core @@ -30,8 +30,8 @@ npx hardhat test test/uniswap.test.js --network localhost --show-stack-traces cd external/v3-core git submodule init git submodule update -npm install -npx hardhat compile +pnpm install +pnpm exec hardhat compile ``` ### Test Compile for Uniswap v3-periphery @@ -40,6 +40,6 @@ npx hardhat compile cd external/v3-periphery git submodule init git submodule update -npm install -npx hardhat compile +pnpm install +pnpm exec hardhat compile ``` diff --git a/tests/evm-tools-compatibility/hardhat/package.json b/tests/evm-tools-compatibility/hardhat/package.json index 5e799641a..3202b1d33 100644 --- a/tests/evm-tools-compatibility/hardhat/package.json +++ b/tests/evm-tools-compatibility/hardhat/package.json @@ -1,6 +1,8 @@ { "name": "hardhat-project", + "packageManager": "pnpm@9.15.0", "devDependencies": { + "ethers": "^6.0.0", "@nomicfoundation/hardhat-toolbox": "^5.0.0", "@nomicfoundation/hardhat-chai-matchers": "^2.0.9", "@nomicfoundation/hardhat-ethers": "^3.0.9", diff --git a/tests/evm-tools-compatibility/hardhat/pnpm-lock.yaml b/tests/evm-tools-compatibility/hardhat/pnpm-lock.yaml new file mode 100644 index 000000000..ff7eb3d2a --- /dev/null +++ b/tests/evm-tools-compatibility/hardhat/pnpm-lock.yaml @@ -0,0 +1,4714 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@openzeppelin/contracts': + specifier: ^5.4.0 + version: 5.4.0 + devDependencies: + '@nomicfoundation/hardhat-chai-matchers': + specifier: ^2.0.9 + version: 2.1.0(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(chai@4.5.0)(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-ethers': + specifier: ^3.0.9 + version: 3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-ignition-ethers': + specifier: ^0.15.13 + version: 0.15.17(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(@nomicfoundation/hardhat-ignition@0.15.16(@nomicfoundation/hardhat-verify@2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(@nomicfoundation/ignition-core@0.15.15)(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-network-helpers': + specifier: ^1.0.13 + version: 1.1.2(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-toolbox': + specifier: ^5.0.0 + version: 5.0.0(gahf7wt466rp6fyxl4x7i7afdq) + '@nomicfoundation/hardhat-verify': + specifier: ^2.0.14 + version: 2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@typechain/ethers-v6': + specifier: ^0.5.1 + version: 0.5.1(ethers@6.16.0)(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3) + '@typechain/hardhat': + specifier: ^9.1.0 + version: 9.1.0(@typechain/ethers-v6@0.5.1(ethers@6.16.0)(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3))(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))(typechain@8.3.2(typescript@5.9.3)) + '@types/chai': + specifier: ^4.3.20 + version: 4.3.20 + '@types/mocha': + specifier: ^10.0.10 + version: 10.0.10 + chai: + specifier: ^4.5.0 + version: 4.5.0 + ethers: + specifier: ^6.0.0 + version: 6.16.0 + hardhat: + specifier: ^2.23.0 + version: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + hardhat-deploy: + specifier: ^1.0.2 + version: 1.0.4 + hardhat-gas-reporter: + specifier: ^1.0.10 + version: 1.0.10(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + solidity-coverage: + specifier: ^0.8.16 + version: 0.8.17(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + ts-node: + specifier: ^10.9.2 + version: 10.9.2(@types/node@25.3.1)(typescript@5.9.3) + typechain: + specifier: ^8.3.2 + version: 8.3.2(typescript@5.9.3) + typescript: + specifier: ^5.8.3 + version: 5.9.3 + +packages: + + '@adraffy/ens-normalize@1.10.1': + resolution: {integrity: sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==} + + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + + '@ethereumjs/rlp@4.0.1': + resolution: {integrity: sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==} + engines: {node: '>=14'} + hasBin: true + + '@ethereumjs/rlp@5.0.2': + resolution: {integrity: sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA==} + engines: {node: '>=18'} + hasBin: true + + '@ethereumjs/util@8.1.0': + resolution: {integrity: sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==} + engines: {node: '>=14'} + + '@ethereumjs/util@9.1.0': + resolution: {integrity: sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog==} + engines: {node: '>=18'} + + '@ethersproject/abi@5.8.0': + resolution: {integrity: sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==} + + '@ethersproject/abstract-provider@5.8.0': + resolution: {integrity: sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==} + + '@ethersproject/abstract-signer@5.8.0': + resolution: {integrity: sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==} + + '@ethersproject/address@5.6.1': + resolution: {integrity: sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q==} + + '@ethersproject/address@5.8.0': + resolution: {integrity: sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==} + + '@ethersproject/base64@5.8.0': + resolution: {integrity: sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==} + + '@ethersproject/basex@5.8.0': + resolution: {integrity: sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q==} + + '@ethersproject/bignumber@5.8.0': + resolution: {integrity: sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==} + + '@ethersproject/bytes@5.8.0': + resolution: {integrity: sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==} + + '@ethersproject/constants@5.8.0': + resolution: {integrity: sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==} + + '@ethersproject/contracts@5.8.0': + resolution: {integrity: sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ==} + + '@ethersproject/hash@5.8.0': + resolution: {integrity: sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==} + + '@ethersproject/hdnode@5.8.0': + resolution: {integrity: sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA==} + + '@ethersproject/json-wallets@5.8.0': + resolution: {integrity: sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w==} + + '@ethersproject/keccak256@5.8.0': + resolution: {integrity: sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==} + + '@ethersproject/logger@5.8.0': + resolution: {integrity: sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==} + + '@ethersproject/networks@5.8.0': + resolution: {integrity: sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==} + + '@ethersproject/pbkdf2@5.8.0': + resolution: {integrity: sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg==} + + '@ethersproject/properties@5.8.0': + resolution: {integrity: sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==} + + '@ethersproject/providers@5.8.0': + resolution: {integrity: sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw==} + + '@ethersproject/random@5.8.0': + resolution: {integrity: sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A==} + + '@ethersproject/rlp@5.8.0': + resolution: {integrity: sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==} + + '@ethersproject/sha2@5.8.0': + resolution: {integrity: sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A==} + + '@ethersproject/signing-key@5.8.0': + resolution: {integrity: sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==} + + '@ethersproject/solidity@5.8.0': + resolution: {integrity: sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA==} + + '@ethersproject/strings@5.8.0': + resolution: {integrity: sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==} + + '@ethersproject/transactions@5.8.0': + resolution: {integrity: sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==} + + '@ethersproject/units@5.8.0': + resolution: {integrity: sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ==} + + '@ethersproject/wallet@5.8.0': + resolution: {integrity: sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA==} + + '@ethersproject/web@5.8.0': + resolution: {integrity: sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==} + + '@ethersproject/wordlists@5.8.0': + resolution: {integrity: sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg==} + + '@fastify/busboy@2.1.1': + resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} + engines: {node: '>=14'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + + '@noble/curves@1.2.0': + resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} + + '@noble/curves@1.4.2': + resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} + + '@noble/curves@1.8.2': + resolution: {integrity: sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.2.0': + resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==} + + '@noble/hashes@1.3.2': + resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} + engines: {node: '>= 16'} + + '@noble/hashes@1.4.0': + resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} + engines: {node: '>= 16'} + + '@noble/hashes@1.7.2': + resolution: {integrity: sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + + '@noble/secp256k1@1.7.1': + resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.23': + resolution: {integrity: sha512-Amh7mRoDzZyJJ4efqoePqdoZOzharmSOttZuJDlVE5yy07BoE8hL6ZRpa5fNYn0LCqn/KoWs8OHANWxhKDGhvQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.23': + resolution: {integrity: sha512-9wn489FIQm7m0UCD+HhktjWx6vskZzeZD9oDc2k9ZvbBzdXwPp5tiDqUBJ+eQpByAzCDfteAJwRn2lQCE0U+Iw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.23': + resolution: {integrity: sha512-nlk5EejSzEUfEngv0Jkhqq3/wINIfF2ED9wAofc22w/V1DV99ASh9l3/e/MIHOQFecIZ9MDqt0Em9/oDyB1Uew==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.23': + resolution: {integrity: sha512-SJuPBp3Rc6vM92UtVTUxZQ/QlLhLfwTftt2XUiYohmGKB3RjGzpgduEFMCA0LEnucUckU6UHrJNFHiDm77C4PQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.23': + resolution: {integrity: sha512-NU+Qs3u7Qt6t3bJFdmmjd5CsvgI2bPPzO31KifM2Ez96/jsXYho5debtTQnimlb5NAqiHTSlxjh/F8ROcptmeQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.23': + resolution: {integrity: sha512-F78fZA2h6/ssiCSZOovlgIu0dUeI7ItKPsDDF3UUlIibef052GCXmliMinC90jVPbrjUADMd1BUwjfI0Z8OllQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.23': + resolution: {integrity: sha512-IfJZQJn7d/YyqhmguBIGoCKjE9dKjbu6V6iNEPApfwf5JyyjHYyyfkLU4rf7hygj57bfH4sl1jtQ6r8HnT62lw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr@0.12.0-next.23': + resolution: {integrity: sha512-F2/6HZh8Q9RsgkOIkRrckldbhPjIZY7d4mT9LYuW68miwGQ5l7CkAgcz9fRRiurA0+YJhtsbx/EyrD9DmX9BOw==} + engines: {node: '>= 20'} + + '@nomicfoundation/hardhat-chai-matchers@2.1.0': + resolution: {integrity: sha512-GPhBNafh1fCnVD9Y7BYvoLnblnvfcq3j8YDbO1gGe/1nOFWzGmV7gFu5DkwFXF+IpYsS+t96o9qc/mPu3V3Vfw==} + peerDependencies: + '@nomicfoundation/hardhat-ethers': ^3.1.0 + chai: ^4.2.0 + ethers: ^6.14.0 + hardhat: ^2.26.0 + + '@nomicfoundation/hardhat-ethers@3.1.3': + resolution: {integrity: sha512-208JcDeVIl+7Wu3MhFUUtiA8TJ7r2Rn3Wr+lSx9PfsDTKkbsAsWPY6N6wQ4mtzDv0/pB9nIbJhkjoHe1EsgNsA==} + peerDependencies: + ethers: ^6.14.0 + hardhat: ^2.28.0 + + '@nomicfoundation/hardhat-ignition-ethers@0.15.17': + resolution: {integrity: sha512-io6Wrp1dUsJ94xEI3pw6qkPfhc9TFA+e6/+o16yQ8pvBTFMjgK5x8wIHKrrIHr9L3bkuTMtmDjyN4doqO2IqFQ==} + peerDependencies: + '@nomicfoundation/hardhat-ethers': ^3.1.0 + '@nomicfoundation/hardhat-ignition': ^0.15.16 + '@nomicfoundation/ignition-core': ^0.15.15 + ethers: ^6.14.0 + hardhat: ^2.26.0 + + '@nomicfoundation/hardhat-ignition@0.15.16': + resolution: {integrity: sha512-T0JTnuib7QcpsWkHCPLT7Z6F483EjTdcdjb1e00jqS9zTGCPqinPB66LLtR/duDLdvgoiCVS6K8WxTQkA/xR1Q==} + peerDependencies: + '@nomicfoundation/hardhat-verify': ^2.1.0 + hardhat: ^2.26.0 + + '@nomicfoundation/hardhat-network-helpers@1.1.2': + resolution: {integrity: sha512-p7HaUVDbLj7ikFivQVNhnfMHUBgiHYMwQWvGn9AriieuopGOELIrwj2KjyM2a6z70zai5YKO264Vwz+3UFJZPQ==} + peerDependencies: + hardhat: ^2.26.0 + + '@nomicfoundation/hardhat-toolbox@5.0.0': + resolution: {integrity: sha512-FnUtUC5PsakCbwiVNsqlXVIWG5JIb5CEZoSXbJUsEBun22Bivx2jhF1/q9iQbzuaGpJKFQyOhemPB2+XlEE6pQ==} + peerDependencies: + '@nomicfoundation/hardhat-chai-matchers': ^2.0.0 + '@nomicfoundation/hardhat-ethers': ^3.0.0 + '@nomicfoundation/hardhat-ignition-ethers': ^0.15.0 + '@nomicfoundation/hardhat-network-helpers': ^1.0.0 + '@nomicfoundation/hardhat-verify': ^2.0.0 + '@typechain/ethers-v6': ^0.5.0 + '@typechain/hardhat': ^9.0.0 + '@types/chai': ^4.2.0 + '@types/mocha': '>=9.1.0' + '@types/node': '>=18.0.0' + chai: ^4.2.0 + ethers: ^6.4.0 + hardhat: ^2.11.0 + hardhat-gas-reporter: ^1.0.8 + solidity-coverage: ^0.8.1 + ts-node: '>=8.0.0' + typechain: ^8.3.0 + typescript: '>=4.5.0' + + '@nomicfoundation/hardhat-verify@2.1.3': + resolution: {integrity: sha512-danbGjPp2WBhLkJdQy9/ARM3WQIK+7vwzE0urNem1qZJjh9f54Kf5f1xuQv8DvqewUAkuPxVt/7q4Grz5WjqSg==} + peerDependencies: + hardhat: ^2.26.0 + + '@nomicfoundation/ignition-core@0.15.15': + resolution: {integrity: sha512-JdKFxYknTfOYtFXMN6iFJ1vALJPednuB+9p9OwGIRdoI6HYSh4ZBzyRURgyXtHFyaJ/SF9lBpsYV9/1zEpcYwg==} + + '@nomicfoundation/ignition-ui@0.15.13': + resolution: {integrity: sha512-HbTszdN1iDHCkUS9hLeooqnLEW2U45FaqFwFEYT8nIno2prFZhG+n68JEERjmfFCB5u0WgbuJwk3CgLoqtSL7Q==} + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + resolution: {integrity: sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + resolution: {integrity: sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + resolution: {integrity: sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + resolution: {integrity: sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + resolution: {integrity: sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + resolution: {integrity: sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + resolution: {integrity: sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer@0.1.2': + resolution: {integrity: sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA==} + engines: {node: '>= 12'} + + '@openzeppelin/contracts@5.4.0': + resolution: {integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==} + + '@scure/base@1.1.9': + resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} + + '@scure/base@1.2.6': + resolution: {integrity: sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==} + + '@scure/bip32@1.1.5': + resolution: {integrity: sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==} + + '@scure/bip32@1.4.0': + resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} + + '@scure/bip39@1.1.1': + resolution: {integrity: sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==} + + '@scure/bip39@1.3.0': + resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} + + '@sentry/core@5.30.0': + resolution: {integrity: sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==} + engines: {node: '>=6'} + + '@sentry/hub@5.30.0': + resolution: {integrity: sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==} + engines: {node: '>=6'} + + '@sentry/minimal@5.30.0': + resolution: {integrity: sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==} + engines: {node: '>=6'} + + '@sentry/node@5.30.0': + resolution: {integrity: sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==} + engines: {node: '>=6'} + + '@sentry/tracing@5.30.0': + resolution: {integrity: sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==} + engines: {node: '>=6'} + + '@sentry/types@5.30.0': + resolution: {integrity: sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==} + engines: {node: '>=6'} + + '@sentry/utils@5.30.0': + resolution: {integrity: sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==} + engines: {node: '>=6'} + + '@solidity-parser/parser@0.14.5': + resolution: {integrity: sha512-6dKnHZn7fg/iQATVEzqyUOyEidbn05q7YA2mQ9hC0MMXhhV3/JrsxmFSYZAcr7j1yUP700LLhTruvJ3MiQmjJg==} + + '@solidity-parser/parser@0.20.2': + resolution: {integrity: sha512-rbu0bzwNvMcwAjH86hiEAcOeRI2EeK8zCkHDrFykh/Al8mvJeFmjy3UrE7GYQjNwOgbGUUtCn5/k8CB8zIu7QA==} + + '@tsconfig/node10@1.0.12': + resolution: {integrity: sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ==} + + '@tsconfig/node12@1.0.11': + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + + '@tsconfig/node14@1.0.3': + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + + '@tsconfig/node16@1.0.4': + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + + '@typechain/ethers-v6@0.5.1': + resolution: {integrity: sha512-F+GklO8jBWlsaVV+9oHaPh5NJdd6rAKN4tklGfInX1Q7h0xPgVLP39Jl3eCulPB5qexI71ZFHwbljx4ZXNfouA==} + peerDependencies: + ethers: 6.x + typechain: ^8.3.2 + typescript: '>=4.7.0' + + '@typechain/hardhat@9.1.0': + resolution: {integrity: sha512-mtaUlzLlkqTlfPwB3FORdejqBskSnh+Jl8AIJGjXNAQfRQ4ofHADPl1+oU7Z3pAJzmZbUXII8MhOLQltcHgKnA==} + peerDependencies: + '@typechain/ethers-v6': ^0.5.1 + ethers: ^6.1.0 + hardhat: ^2.9.9 + typechain: ^8.3.2 + + '@types/bn.js@5.2.0': + resolution: {integrity: sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==} + + '@types/chai-as-promised@7.1.8': + resolution: {integrity: sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==} + + '@types/chai@4.3.20': + resolution: {integrity: sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==} + + '@types/concat-stream@1.6.1': + resolution: {integrity: sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==} + + '@types/form-data@0.0.33': + resolution: {integrity: sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==} + + '@types/glob@7.2.0': + resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} + + '@types/minimatch@6.0.0': + resolution: {integrity: sha512-zmPitbQ8+6zNutpwgcQuLcsEpn/Cj54Kbn7L5pX0Os5kdWplB7xPgEh/g+SWOB/qmows2gpuCaPyduq8ZZRnxA==} + deprecated: This is a stub types definition. minimatch provides its own type definitions, so you do not need this installed. + + '@types/mocha@10.0.10': + resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==} + + '@types/node@10.17.60': + resolution: {integrity: sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==} + + '@types/node@22.7.5': + resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} + + '@types/node@25.3.1': + resolution: {integrity: sha512-hj9YIJimBCipHVfHKRMnvmHg+wfhKc0o4mTtXh9pKBjC8TLJzz0nzGmLi5UJsYAUgSvXFHgb0V2oY10DUFtImw==} + + '@types/node@8.10.66': + resolution: {integrity: sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==} + + '@types/pbkdf2@3.1.2': + resolution: {integrity: sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==} + + '@types/prettier@2.7.3': + resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==} + + '@types/qs@6.14.0': + resolution: {integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==} + + '@types/secp256k1@4.0.7': + resolution: {integrity: sha512-Rcvjl6vARGAKRO6jHeKMatGrvOMGrR/AR11N1x2LqintPCyDZ7NBhrh238Z2VZc7aM7KIwnFpFQ7fnfK4H/9Qw==} + + abbrev@1.0.9: + resolution: {integrity: sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==} + + acorn-walk@8.3.5: + resolution: {integrity: sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==} + engines: {node: '>=0.4.0'} + + acorn@8.16.0: + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} + engines: {node: '>=0.4.0'} + hasBin: true + + adm-zip@0.4.16: + resolution: {integrity: sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==} + engines: {node: '>=0.3.0'} + + aes-js@3.0.0: + resolution: {integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==} + + aes-js@4.0.0-beta.5: + resolution: {integrity: sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==} + + agent-base@6.0.2: + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} + + aggregate-error@3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} + + ajv@8.18.0: + resolution: {integrity: sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==} + + amdefine@1.0.1: + resolution: {integrity: sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==} + engines: {node: '>=0.4.2'} + + ansi-align@3.0.1: + resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-regex@3.0.1: + resolution: {integrity: sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==} + engines: {node: '>=4'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + antlr4ts@0.5.0-alpha.4: + resolution: {integrity: sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + arg@4.1.3: + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + + argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-back@3.1.0: + resolution: {integrity: sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==} + engines: {node: '>=6'} + + array-back@4.0.2: + resolution: {integrity: sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==} + engines: {node: '>=8'} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + array-uniq@1.0.3: + resolution: {integrity: sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==} + engines: {node: '>=0.10.0'} + + asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + + assertion-error@1.1.0: + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + + astral-regex@2.0.0: + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} + engines: {node: '>=8'} + + async@1.5.2: + resolution: {integrity: sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + at-least-node@1.0.0: + resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} + engines: {node: '>= 4.0.0'} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + axios@0.21.4: + resolution: {integrity: sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==} + + axios@1.13.5: + resolution: {integrity: sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + + base-x@3.0.11: + resolution: {integrity: sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==} + + bech32@1.1.4: + resolution: {integrity: sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + blakejs@1.2.1: + resolution: {integrity: sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==} + + bn.js@4.11.6: + resolution: {integrity: sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==} + + bn.js@4.12.3: + resolution: {integrity: sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==} + + bn.js@5.2.3: + resolution: {integrity: sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==} + + boxen@5.1.2: + resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} + engines: {node: '>=10'} + + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + brace-expansion@5.0.3: + resolution: {integrity: sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==} + engines: {node: 18 || 20 || >=22} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + brorand@1.1.0: + resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} + + browser-stdout@1.3.1: + resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} + + browserify-aes@1.2.0: + resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} + + bs58@4.0.1: + resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==} + + bs58check@2.1.2: + resolution: {integrity: sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==} + + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + + buffer-xor@1.0.3: + resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + caseless@0.12.0: + resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} + + cbor@8.1.0: + resolution: {integrity: sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==} + engines: {node: '>=12.19'} + + cbor@9.0.2: + resolution: {integrity: sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==} + engines: {node: '>=16'} + + chai-as-promised@7.1.2: + resolution: {integrity: sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==} + peerDependencies: + chai: '>= 2.1.2 < 6' + + chai@4.5.0: + resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} + engines: {node: '>=4'} + + chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + charenc@0.0.2: + resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} + + check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + ci-info@2.0.0: + resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} + + cipher-base@1.0.7: + resolution: {integrity: sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==} + engines: {node: '>= 0.10'} + + clean-stack@2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} + + cli-boxes@2.2.1: + resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} + engines: {node: '>=6'} + + cli-table3@0.5.1: + resolution: {integrity: sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==} + engines: {node: '>=6'} + + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + colors@1.4.0: + resolution: {integrity: sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==} + engines: {node: '>=0.1.90'} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + command-exists@1.2.9: + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + + command-line-args@5.2.1: + resolution: {integrity: sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==} + engines: {node: '>=4.0.0'} + + command-line-usage@6.1.3: + resolution: {integrity: sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==} + engines: {node: '>=8.0.0'} + + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + concat-stream@1.6.2: + resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} + engines: {'0': node >= 0.8} + + cookie@0.4.2: + resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} + engines: {node: '>= 0.6'} + + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + create-hash@1.2.0: + resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} + + create-hmac@1.1.7: + resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} + + create-require@1.1.1: + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + + crypt@0.0.2: + resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} + + death@1.1.0: + resolution: {integrity: sha512-vsV6S4KVHvTGxbEcij7hkWRv0It+sGGWVOM67dQde/o5Xjnr+KmLjxWJii2uEObIrt1CcM9w0Yaovx+iOlIL+w==} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decamelize@4.0.0: + resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} + engines: {node: '>=10'} + + deep-eql@4.1.4: + resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} + engines: {node: '>=6'} + + deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + + diff@4.0.4: + resolution: {integrity: sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==} + engines: {node: '>=0.3.1'} + + diff@5.2.2: + resolution: {integrity: sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A==} + engines: {node: '>=0.3.1'} + + difflib@0.2.4: + resolution: {integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + elliptic@6.6.1: + resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + encode-utf8@1.0.3: + resolution: {integrity: sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==} + + enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escodegen@1.8.1: + resolution: {integrity: sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==} + engines: {node: '>=0.12.0'} + hasBin: true + + esprima@2.7.3: + resolution: {integrity: sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==} + engines: {node: '>=0.10.0'} + hasBin: true + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + estraverse@1.9.3: + resolution: {integrity: sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==} + engines: {node: '>=0.10.0'} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + eth-gas-reporter@0.2.27: + resolution: {integrity: sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw==} + peerDependencies: + '@codechecks/client': ^0.1.0 + peerDependenciesMeta: + '@codechecks/client': + optional: true + + ethereum-bloom-filters@1.2.0: + resolution: {integrity: sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA==} + + ethereum-cryptography@0.1.3: + resolution: {integrity: sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==} + + ethereum-cryptography@1.2.0: + resolution: {integrity: sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==} + + ethereum-cryptography@2.2.1: + resolution: {integrity: sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==} + + ethereumjs-util@7.1.5: + resolution: {integrity: sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==} + engines: {node: '>=10.0.0'} + + ethers@5.8.0: + resolution: {integrity: sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==} + + ethers@6.16.0: + resolution: {integrity: sha512-U1wulmetNymijEhpSEQ7Ct/P/Jw9/e7R1j5XIbPRydgV2DjLVMsULDlNksq3RQnFgKoLlZf88ijYtWEXcPa07A==} + engines: {node: '>=14.0.0'} + + ethjs-unit@0.1.6: + resolution: {integrity: sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==} + engines: {node: '>=6.5.0', npm: '>=3'} + + evp_bytestokey@1.0.3: + resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + + fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-replace@3.0.0: + resolution: {integrity: sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==} + engines: {node: '>=4.0.0'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + + fmix@0.1.0: + resolution: {integrity: sha512-Y6hyofImk9JdzU8k5INtTXX1cu8LDlePWDFU5sftm9H+zKCr5SGrVjdhkvsim646cw5zD0nADj8oHyXMZmCZ9w==} + + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + form-data@2.5.5: + resolution: {integrity: sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A==} + engines: {node: '>= 0.12'} + + form-data@4.0.5: + resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} + engines: {node: '>= 6'} + + fp-ts@1.19.3: + resolution: {integrity: sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==} + + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + + fs-extra@7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} + + fs-extra@8.1.0: + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} + + fs-extra@9.1.0: + resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} + engines: {node: '>=10'} + + fs-readdir-recursive@1.1.0: + resolution: {integrity: sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-port@3.2.0: + resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==} + engines: {node: '>=4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + ghost-testrpc@0.0.2: + resolution: {integrity: sha512-i08dAEgJ2g8z5buJIrCTduwPIhih3DP+hOCTyyryikfV8T0bNvHnGXO67i0DD1H4GBDETTclPy9njZbfluQYrQ==} + hasBin: true + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob@5.0.15: + resolution: {integrity: sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + glob@7.1.7: + resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + glob@8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + global-modules@2.0.0: + resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==} + engines: {node: '>=6'} + + global-prefix@3.0.0: + resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==} + engines: {node: '>=6'} + + globby@10.0.2: + resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==} + engines: {node: '>=8'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + handlebars@4.7.8: + resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} + engines: {node: '>=0.4.7'} + hasBin: true + + hardhat-deploy@1.0.4: + resolution: {integrity: sha512-vl6vYQHDtZmILerAIRERI2AjghLH5gJIcQjNrSldn2SjQdY5Y47umXVll4/ywPzBRlsqdpJfL92PhnQ+1xB+Sg==} + + hardhat-gas-reporter@1.0.10: + resolution: {integrity: sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA==} + peerDependencies: + hardhat: ^2.0.2 + + hardhat@2.28.6: + resolution: {integrity: sha512-zQze7qe+8ltwHvhX5NQ8sN1N37WWZGw8L63y+2XcPxGwAjc/SMF829z3NS6o1krX0sryhAsVBK/xrwUqlsot4Q==} + hasBin: true + peerDependencies: + ts-node: '*' + typescript: '*' + peerDependenciesMeta: + ts-node: + optional: true + typescript: + optional: true + + has-flag@1.0.0: + resolution: {integrity: sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==} + engines: {node: '>=0.10.0'} + + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hash-base@3.1.2: + resolution: {integrity: sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==} + engines: {node: '>= 0.8'} + + hash.js@1.1.7: + resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + heap@0.2.7: + resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} + + hmac-drbg@1.0.1: + resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} + + http-basic@8.1.3: + resolution: {integrity: sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==} + engines: {node: '>=6.0.0'} + + http-errors@2.0.1: + resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==} + engines: {node: '>= 0.8'} + + http-response-object@3.0.2: + resolution: {integrity: sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==} + + https-proxy-agent@5.0.1: + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} + + iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + immer@10.0.2: + resolution: {integrity: sha512-Rx3CqeqQ19sxUtYV9CU911Vhy8/721wRFnJv3REVGWUmoAcIwzifTsdmJte/MV+0/XpM35LZdQMBGkRIoLPwQA==} + + immutable@4.3.7: + resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==} + + imul@1.0.1: + resolution: {integrity: sha512-WFAgfwPLAjU66EKt6vRdTlKj4nAgIDQzh29JonLa4Bqtl6D8JrIMvWjCnx7xEjVNmP3U0fM5o8ZObk7d0f62bA==} + engines: {node: '>=0.10.0'} + + indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + interpret@1.4.0: + resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} + engines: {node: '>= 0.10'} + + io-ts@1.10.4: + resolution: {integrity: sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@2.0.0: + resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} + engines: {node: '>=4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-hex-prefixed@1.0.0: + resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==} + engines: {node: '>=6.5.0', npm: '>=3'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + js-sha3@0.8.0: + resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + + js-yaml@3.14.2: + resolution: {integrity: sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==} + hasBin: true + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + json-stream-stringify@3.1.6: + resolution: {integrity: sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==} + engines: {node: '>=7.10.1'} + + json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + + jsonfile@6.2.0: + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} + + jsonschema@1.5.0: + resolution: {integrity: sha512-K+A9hhqbn0f3pJX17Q/7H6yQfD/5OXgdrR5UE12gMXCiN9D5Xq2o5mddV2QEcX/bjla99ASsAAQUyMCCRWAEhw==} + + keccak@3.0.4: + resolution: {integrity: sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==} + engines: {node: '>=10.0.0'} + + kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + + kleur@3.0.3: + resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} + engines: {node: '>=6'} + + levn@0.3.0: + resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==} + engines: {node: '>= 0.8.0'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.camelcase@4.3.0: + resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} + + lodash.clonedeep@4.5.0: + resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} + + lodash.isequal@4.5.0: + resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} + deprecated: This package is deprecated. Use require('node:util').isDeepStrictEqual instead. + + lodash.truncate@4.4.2: + resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + lodash@4.17.23: + resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + + lru_map@0.3.3: + resolution: {integrity: sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==} + + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + + markdown-table@1.1.3: + resolution: {integrity: sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==} + + match-all@1.2.7: + resolution: {integrity: sha512-qSpsBKarh55r9KyXzFC3xBLRf2GlGasba2em9kbpRsSlGvdTAqjx3QD0r3FKSARiW+OE4iMHYsolM3aX9n5djw==} + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + md5.js@1.3.5: + resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} + + memorystream@0.3.1: + resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} + engines: {node: '>= 0.10.0'} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micro-eth-signer@0.14.0: + resolution: {integrity: sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==} + + micro-ftch@0.3.1: + resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==} + + micro-packed@0.7.3: + resolution: {integrity: sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + + minimalistic-crypto-utils@1.0.1: + resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + + minimatch@10.2.4: + resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} + engines: {node: 18 || 20 || >=22} + + minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + + minimatch@5.1.9: + resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} + engines: {node: '>=10'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + mkdirp@0.5.6: + resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + hasBin: true + + mkdirp@1.0.4: + resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} + engines: {node: '>=10'} + hasBin: true + + mnemonist@0.38.5: + resolution: {integrity: sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==} + + mocha@10.8.2: + resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==} + engines: {node: '>= 14.0.0'} + hasBin: true + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + murmur-128@0.2.1: + resolution: {integrity: sha512-WseEgiRkI6aMFBbj8Cg9yBj/y+OdipwVC7zUo3W2W1JAJITwouUOtpqsmGSg67EQmwwSyod7hsVsWY5LsrfQVg==} + + ndjson@2.0.0: + resolution: {integrity: sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ==} + engines: {node: '>=10'} + hasBin: true + + neo-async@2.6.2: + resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + + neoqs@6.13.0: + resolution: {integrity: sha512-IysBpjrEG9qiUb/IT6XrXSz2ASzBxLebp4s8/GBm7STYC315vMNqH0aWdRR+f7KvXK4aRlLcf5r2Z6dOTxQSrQ==} + + node-addon-api@2.0.2: + resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + + node-addon-api@5.1.0: + resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} + + node-emoji@1.11.0: + resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} + + node-gyp-build@4.8.4: + resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} + hasBin: true + + nofilter@3.1.0: + resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} + engines: {node: '>=12.19'} + + nopt@3.0.6: + resolution: {integrity: sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==} + hasBin: true + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + number-to-bn@1.7.0: + resolution: {integrity: sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==} + engines: {node: '>=6.5.0', npm: '>=3'} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + obliterator@2.0.5: + resolution: {integrity: sha512-42CPE9AhahZRsMNslczq0ctAEtqk8Eka26QofnqC346BZdHDySk3LWka23LI7ULIw11NmltpiLagIq8gBozxTw==} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + optionator@0.8.3: + resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==} + engines: {node: '>= 0.8.0'} + + ordinal@1.0.3: + resolution: {integrity: sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==} + + os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-map@4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} + engines: {node: '>=10'} + + parse-cache-control@1.0.1: + resolution: {integrity: sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + pathval@1.1.1: + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + + pbkdf2@3.1.5: + resolution: {integrity: sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ==} + engines: {node: '>= 0.10'} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + prelude-ls@1.1.2: + resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==} + engines: {node: '>= 0.8.0'} + + prettier@2.8.8: + resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} + engines: {node: '>=10.13.0'} + hasBin: true + + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + + promise@8.3.0: + resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==} + + prompts@2.4.2: + resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} + engines: {node: '>= 6'} + + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + + qs@6.15.0: + resolution: {integrity: sha512-mAZTtNCeetKMH+pSjrb76NAM8V9a05I9aBZOHztWy/UqcJdQYNsf59vrRKWnojAT9Y+GbIvoTBC++CPHqpDBhQ==} + engines: {node: '>=0.6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + + raw-body@2.5.3: + resolution: {integrity: sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==} + engines: {node: '>= 0.8'} + + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + rechoir@0.6.2: + resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} + engines: {node: '>= 0.10'} + + recursive-readdir@2.2.3: + resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} + engines: {node: '>=6.0.0'} + + reduce-flatten@2.0.0: + resolution: {integrity: sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==} + engines: {node: '>=6'} + + req-cwd@2.0.0: + resolution: {integrity: sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ==} + engines: {node: '>=4'} + + req-from@2.0.0: + resolution: {integrity: sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA==} + engines: {node: '>=4'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + resolve-from@3.0.0: + resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==} + engines: {node: '>=4'} + + resolve@1.1.7: + resolution: {integrity: sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==} + + resolve@1.17.0: + resolution: {integrity: sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==} + + resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} + engines: {node: '>= 0.4'} + hasBin: true + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + ripemd160@2.0.3: + resolution: {integrity: sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==} + engines: {node: '>= 0.8'} + + rlp@2.2.7: + resolution: {integrity: sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==} + hasBin: true + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + sc-istanbul@0.4.6: + resolution: {integrity: sha512-qJFF/8tW/zJsbyfh/iT/ZM5QNHE3CXxtLJbZsL+CzdJLBsPD7SedJZoUA4d8iAcN2IoMp/Dx80shOOd2x96X/g==} + hasBin: true + + scrypt-js@3.0.1: + resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==} + + secp256k1@4.0.4: + resolution: {integrity: sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==} + engines: {node: '>=18.0.0'} + + semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + engines: {node: '>=10'} + hasBin: true + + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + + sha.js@2.4.12: + resolution: {integrity: sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==} + engines: {node: '>= 0.10'} + hasBin: true + + sha1@1.1.1: + resolution: {integrity: sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==} + + shelljs@0.8.5: + resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} + engines: {node: '>=4'} + hasBin: true + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + slice-ansi@4.0.0: + resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} + engines: {node: '>=10'} + + solc@0.8.26: + resolution: {integrity: sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==} + engines: {node: '>=10.0.0'} + hasBin: true + + solidity-coverage@0.8.17: + resolution: {integrity: sha512-5P8vnB6qVX9tt1MfuONtCTEaEGO/O4WuEidPHIAJjx4sktHHKhO3rFvnE0q8L30nWJPTrcqGQMT7jpE29B2qow==} + hasBin: true + peerDependencies: + hardhat: ^2.11.0 + + source-map-support@0.5.21: + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + + source-map@0.2.0: + resolution: {integrity: sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA==} + engines: {node: '>=0.8.0'} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + split2@3.2.2: + resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==} + + sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + + stacktrace-parser@0.1.11: + resolution: {integrity: sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==} + engines: {node: '>=6'} + + statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + + string-format@2.0.0: + resolution: {integrity: sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==} + + string-width@2.1.1: + resolution: {integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==} + engines: {node: '>=4'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + + strip-ansi@4.0.0: + resolution: {integrity: sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==} + engines: {node: '>=4'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-hex-prefix@1.0.0: + resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==} + engines: {node: '>=6.5.0', npm: '>=3'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + supports-color@3.2.3: + resolution: {integrity: sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==} + engines: {node: '>=0.8.0'} + + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + sync-request@6.1.0: + resolution: {integrity: sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==} + engines: {node: '>=8.0.0'} + + sync-rpc@1.3.6: + resolution: {integrity: sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==} + + table-layout@1.0.2: + resolution: {integrity: sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==} + engines: {node: '>=8.0.0'} + + table@6.9.0: + resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==} + engines: {node: '>=10.0.0'} + + then-request@6.0.2: + resolution: {integrity: sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==} + engines: {node: '>=6.0.0'} + + through2@4.0.2: + resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} + + to-buffer@1.2.2: + resolution: {integrity: sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==} + engines: {node: '>= 0.4'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + ts-command-line-args@2.5.1: + resolution: {integrity: sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw==} + hasBin: true + + ts-essentials@7.0.3: + resolution: {integrity: sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==} + peerDependencies: + typescript: '>=3.7.0' + + ts-node@10.9.2: + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + + tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + + tslib@2.7.0: + resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + + tsort@0.0.1: + resolution: {integrity: sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==} + + type-check@0.3.2: + resolution: {integrity: sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==} + engines: {node: '>= 0.8.0'} + + type-detect@4.1.0: + resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} + engines: {node: '>=4'} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + type-fest@0.7.1: + resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} + engines: {node: '>=8'} + + typechain@8.3.2: + resolution: {integrity: sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==} + hasBin: true + peerDependencies: + typescript: '>=4.3.0' + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typedarray@0.0.6: + resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + typical@4.0.0: + resolution: {integrity: sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==} + engines: {node: '>=8'} + + typical@5.2.0: + resolution: {integrity: sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==} + engines: {node: '>=8'} + + uglify-js@3.19.3: + resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==} + engines: {node: '>=0.8.0'} + hasBin: true + + undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + + undici-types@7.18.2: + resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} + + undici@5.29.0: + resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==} + engines: {node: '>=14.0'} + + universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + utf8@3.0.0: + resolution: {integrity: sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + uuid@8.3.2: + resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} + hasBin: true + + v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + + web3-utils@1.10.4: + resolution: {integrity: sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A==} + engines: {node: '>=8.0.0'} + + which-typed-array@1.1.20: + resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==} + engines: {node: '>= 0.4'} + + which@1.3.1: + resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} + hasBin: true + + widest-line@3.1.0: + resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} + engines: {node: '>=8'} + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wordwrap@1.0.0: + resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} + + wordwrapjs@4.0.1: + resolution: {integrity: sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==} + engines: {node: '>=8.0.0'} + + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@7.5.10: + resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==} + engines: {node: '>=8.3.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + ws@8.17.1: + resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + ws@8.18.0: + resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + + yargs-unparser@2.0.0: + resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} + engines: {node: '>=10'} + + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + + yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + zksync-ethers@5.11.1: + resolution: {integrity: sha512-Znl2p0gporGnHbAO0KKM1TIQpyRQKCi8nf1kOlZuTVCvlgBwhweWjTy53le96ZOoR3J5LUXAk7aYil2czSLJZw==} + engines: {node: '>=16.0.0'} + peerDependencies: + ethers: ~5.7.0 + +snapshots: + + '@adraffy/ens-normalize@1.10.1': {} + + '@cspotcode/source-map-support@0.8.1': + dependencies: + '@jridgewell/trace-mapping': 0.3.9 + + '@ethereumjs/rlp@4.0.1': {} + + '@ethereumjs/rlp@5.0.2': {} + + '@ethereumjs/util@8.1.0': + dependencies: + '@ethereumjs/rlp': 4.0.1 + ethereum-cryptography: 2.2.1 + micro-ftch: 0.3.1 + + '@ethereumjs/util@9.1.0': + dependencies: + '@ethereumjs/rlp': 5.0.2 + ethereum-cryptography: 2.2.1 + + '@ethersproject/abi@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/abstract-provider@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 + + '@ethersproject/abstract-signer@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + + '@ethersproject/address@5.6.1': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/rlp': 5.8.0 + + '@ethersproject/address@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/rlp': 5.8.0 + + '@ethersproject/base64@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + + '@ethersproject/basex@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/properties': 5.8.0 + + '@ethersproject/bignumber@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + bn.js: 5.2.3 + + '@ethersproject/bytes@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/constants@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + + '@ethersproject/contracts@5.8.0': + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + + '@ethersproject/hash@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/hdnode@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + + '@ethersproject/json-wallets@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + aes-js: 3.0.0 + scrypt-js: 3.0.1 + + '@ethersproject/keccak256@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + js-sha3: 0.8.0 + + '@ethersproject/logger@5.8.0': {} + + '@ethersproject/networks@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/pbkdf2@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/sha2': 5.8.0 + + '@ethersproject/properties@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/providers@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 + bech32: 1.1.4 + ws: 8.18.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@ethersproject/random@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/rlp@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/sha2@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + hash.js: 1.1.7 + + '@ethersproject/signing-key@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + bn.js: 5.2.3 + elliptic: 6.6.1 + hash.js: 1.1.7 + + '@ethersproject/solidity@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/strings@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/transactions@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + + '@ethersproject/units@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/wallet@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/json-wallets': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + + '@ethersproject/web@5.8.0': + dependencies: + '@ethersproject/base64': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/wordlists@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@fastify/busboy@2.1.1': {} + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.9': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@noble/curves@1.2.0': + dependencies: + '@noble/hashes': 1.3.2 + + '@noble/curves@1.4.2': + dependencies: + '@noble/hashes': 1.4.0 + + '@noble/curves@1.8.2': + dependencies: + '@noble/hashes': 1.7.2 + + '@noble/hashes@1.2.0': {} + + '@noble/hashes@1.3.2': {} + + '@noble/hashes@1.4.0': {} + + '@noble/hashes@1.7.2': {} + + '@noble/hashes@1.8.0': {} + + '@noble/secp256k1@1.7.1': {} + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.20.1 + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.23': {} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.23': {} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.23': {} + + '@nomicfoundation/edr@0.12.0-next.23': + dependencies: + '@nomicfoundation/edr-darwin-arm64': 0.12.0-next.23 + '@nomicfoundation/edr-darwin-x64': 0.12.0-next.23 + '@nomicfoundation/edr-linux-arm64-gnu': 0.12.0-next.23 + '@nomicfoundation/edr-linux-arm64-musl': 0.12.0-next.23 + '@nomicfoundation/edr-linux-x64-gnu': 0.12.0-next.23 + '@nomicfoundation/edr-linux-x64-musl': 0.12.0-next.23 + '@nomicfoundation/edr-win32-x64-msvc': 0.12.0-next.23 + + '@nomicfoundation/hardhat-chai-matchers@2.1.0(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(chai@4.5.0)(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))': + dependencies: + '@nomicfoundation/hardhat-ethers': 3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@types/chai-as-promised': 7.1.8 + chai: 4.5.0 + chai-as-promised: 7.1.2(chai@4.5.0) + deep-eql: 4.1.4 + ethers: 6.16.0 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + ordinal: 1.0.3 + + '@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))': + dependencies: + debug: 4.4.3(supports-color@8.1.1) + ethers: 6.16.0 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + lodash.isequal: 4.5.0 + transitivePeerDependencies: + - supports-color + + '@nomicfoundation/hardhat-ignition-ethers@0.15.17(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(@nomicfoundation/hardhat-ignition@0.15.16(@nomicfoundation/hardhat-verify@2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(@nomicfoundation/ignition-core@0.15.15)(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))': + dependencies: + '@nomicfoundation/hardhat-ethers': 3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-ignition': 0.15.16(@nomicfoundation/hardhat-verify@2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/ignition-core': 0.15.15 + ethers: 6.16.0 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + + '@nomicfoundation/hardhat-ignition@0.15.16(@nomicfoundation/hardhat-verify@2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))': + dependencies: + '@nomicfoundation/hardhat-verify': 2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/ignition-core': 0.15.15 + '@nomicfoundation/ignition-ui': 0.15.13 + chalk: 4.1.2 + debug: 4.4.3(supports-color@8.1.1) + fs-extra: 10.1.0 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + json5: 2.2.3 + prompts: 2.4.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + '@nomicfoundation/hardhat-network-helpers@1.1.2(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))': + dependencies: + ethereumjs-util: 7.1.5 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + + '@nomicfoundation/hardhat-toolbox@5.0.0(gahf7wt466rp6fyxl4x7i7afdq)': + dependencies: + '@nomicfoundation/hardhat-chai-matchers': 2.1.0(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(chai@4.5.0)(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-ethers': 3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-ignition-ethers': 0.15.17(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(@nomicfoundation/hardhat-ignition@0.15.16(@nomicfoundation/hardhat-verify@2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)))(@nomicfoundation/ignition-core@0.15.15)(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-network-helpers': 1.1.2(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@nomicfoundation/hardhat-verify': 2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + '@typechain/ethers-v6': 0.5.1(ethers@6.16.0)(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3) + '@typechain/hardhat': 9.1.0(@typechain/ethers-v6@0.5.1(ethers@6.16.0)(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3))(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))(typechain@8.3.2(typescript@5.9.3)) + '@types/chai': 4.3.20 + '@types/mocha': 10.0.10 + '@types/node': 25.3.1 + chai: 4.5.0 + ethers: 6.16.0 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + hardhat-gas-reporter: 1.0.10(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + solidity-coverage: 0.8.17(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)) + ts-node: 10.9.2(@types/node@25.3.1)(typescript@5.9.3) + typechain: 8.3.2(typescript@5.9.3) + typescript: 5.9.3 + + '@nomicfoundation/hardhat-verify@2.1.3(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))': + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/address': 5.8.0 + cbor: 8.1.0 + debug: 4.4.3(supports-color@8.1.1) + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + lodash.clonedeep: 4.5.0 + picocolors: 1.1.1 + semver: 6.3.1 + table: 6.9.0 + undici: 5.29.0 + transitivePeerDependencies: + - supports-color + + '@nomicfoundation/ignition-core@0.15.15': + dependencies: + '@ethersproject/address': 5.6.1 + '@nomicfoundation/solidity-analyzer': 0.1.2 + cbor: 9.0.2 + debug: 4.4.3(supports-color@8.1.1) + ethers: 6.16.0 + fs-extra: 10.1.0 + immer: 10.0.2 + lodash: 4.17.21 + ndjson: 2.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + '@nomicfoundation/ignition-ui@0.15.13': {} + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer@0.1.2': + optionalDependencies: + '@nomicfoundation/solidity-analyzer-darwin-arm64': 0.1.2 + '@nomicfoundation/solidity-analyzer-darwin-x64': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-win32-x64-msvc': 0.1.2 + + '@openzeppelin/contracts@5.4.0': {} + + '@scure/base@1.1.9': {} + + '@scure/base@1.2.6': {} + + '@scure/bip32@1.1.5': + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/base': 1.1.9 + + '@scure/bip32@1.4.0': + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.1.1': + dependencies: + '@noble/hashes': 1.2.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.3.0': + dependencies: + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@sentry/core@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/hub@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/minimal@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/types': 5.30.0 + tslib: 1.14.1 + + '@sentry/node@5.30.0': + dependencies: + '@sentry/core': 5.30.0 + '@sentry/hub': 5.30.0 + '@sentry/tracing': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + cookie: 0.4.2 + https-proxy-agent: 5.0.1 + lru_map: 0.3.3 + tslib: 1.14.1 + transitivePeerDependencies: + - supports-color + + '@sentry/tracing@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/types@5.30.0': {} + + '@sentry/utils@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + tslib: 1.14.1 + + '@solidity-parser/parser@0.14.5': + dependencies: + antlr4ts: 0.5.0-alpha.4 + + '@solidity-parser/parser@0.20.2': {} + + '@tsconfig/node10@1.0.12': {} + + '@tsconfig/node12@1.0.11': {} + + '@tsconfig/node14@1.0.3': {} + + '@tsconfig/node16@1.0.4': {} + + '@typechain/ethers-v6@0.5.1(ethers@6.16.0)(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3)': + dependencies: + ethers: 6.16.0 + lodash: 4.17.23 + ts-essentials: 7.0.3(typescript@5.9.3) + typechain: 8.3.2(typescript@5.9.3) + typescript: 5.9.3 + + '@typechain/hardhat@9.1.0(@typechain/ethers-v6@0.5.1(ethers@6.16.0)(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3))(ethers@6.16.0)(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3))(typechain@8.3.2(typescript@5.9.3))': + dependencies: + '@typechain/ethers-v6': 0.5.1(ethers@6.16.0)(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3) + ethers: 6.16.0 + fs-extra: 9.1.0 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + typechain: 8.3.2(typescript@5.9.3) + + '@types/bn.js@5.2.0': + dependencies: + '@types/node': 25.3.1 + + '@types/chai-as-promised@7.1.8': + dependencies: + '@types/chai': 4.3.20 + + '@types/chai@4.3.20': {} + + '@types/concat-stream@1.6.1': + dependencies: + '@types/node': 25.3.1 + + '@types/form-data@0.0.33': + dependencies: + '@types/node': 25.3.1 + + '@types/glob@7.2.0': + dependencies: + '@types/minimatch': 6.0.0 + '@types/node': 25.3.1 + + '@types/minimatch@6.0.0': + dependencies: + minimatch: 10.2.4 + + '@types/mocha@10.0.10': {} + + '@types/node@10.17.60': {} + + '@types/node@22.7.5': + dependencies: + undici-types: 6.19.8 + + '@types/node@25.3.1': + dependencies: + undici-types: 7.18.2 + + '@types/node@8.10.66': {} + + '@types/pbkdf2@3.1.2': + dependencies: + '@types/node': 25.3.1 + + '@types/prettier@2.7.3': {} + + '@types/qs@6.14.0': {} + + '@types/secp256k1@4.0.7': + dependencies: + '@types/node': 25.3.1 + + abbrev@1.0.9: {} + + acorn-walk@8.3.5: + dependencies: + acorn: 8.16.0 + + acorn@8.16.0: {} + + adm-zip@0.4.16: {} + + aes-js@3.0.0: {} + + aes-js@4.0.0-beta.5: {} + + agent-base@6.0.2: + dependencies: + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + aggregate-error@3.1.0: + dependencies: + clean-stack: 2.2.0 + indent-string: 4.0.0 + + ajv@8.18.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + + amdefine@1.0.1: + optional: true + + ansi-align@3.0.1: + dependencies: + string-width: 4.2.3 + + ansi-colors@4.1.3: {} + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-regex@3.0.1: {} + + ansi-regex@5.0.1: {} + + ansi-styles@3.2.1: + dependencies: + color-convert: 1.9.3 + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + antlr4ts@0.5.0-alpha.4: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + arg@4.1.3: {} + + argparse@1.0.10: + dependencies: + sprintf-js: 1.0.3 + + argparse@2.0.1: {} + + array-back@3.1.0: {} + + array-back@4.0.2: {} + + array-union@2.1.0: {} + + array-uniq@1.0.3: {} + + asap@2.0.6: {} + + assertion-error@1.1.0: {} + + astral-regex@2.0.0: {} + + async@1.5.2: {} + + asynckit@0.4.0: {} + + at-least-node@1.0.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + axios@0.21.4(debug@4.4.3): + dependencies: + follow-redirects: 1.15.11(debug@4.4.3) + transitivePeerDependencies: + - debug + + axios@1.13.5: + dependencies: + follow-redirects: 1.15.11(debug@4.4.3) + form-data: 4.0.5 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + balanced-match@1.0.2: {} + + balanced-match@4.0.4: {} + + base-x@3.0.11: + dependencies: + safe-buffer: 5.2.1 + + bech32@1.1.4: {} + + binary-extensions@2.3.0: {} + + blakejs@1.2.1: {} + + bn.js@4.11.6: {} + + bn.js@4.12.3: {} + + bn.js@5.2.3: {} + + boxen@5.1.2: + dependencies: + ansi-align: 3.0.1 + camelcase: 6.3.0 + chalk: 4.1.2 + cli-boxes: 2.2.1 + string-width: 4.2.3 + type-fest: 0.20.2 + widest-line: 3.1.0 + wrap-ansi: 7.0.0 + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + brace-expansion@5.0.3: + dependencies: + balanced-match: 4.0.4 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + brorand@1.1.0: {} + + browser-stdout@1.3.1: {} + + browserify-aes@1.2.0: + dependencies: + buffer-xor: 1.0.3 + cipher-base: 1.0.7 + create-hash: 1.2.0 + evp_bytestokey: 1.0.3 + inherits: 2.0.4 + safe-buffer: 5.2.1 + + bs58@4.0.1: + dependencies: + base-x: 3.0.11 + + bs58check@2.1.2: + dependencies: + bs58: 4.0.1 + create-hash: 1.2.0 + safe-buffer: 5.2.1 + + buffer-from@1.1.2: {} + + buffer-xor@1.0.3: {} + + bytes@3.1.2: {} + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + camelcase@6.3.0: {} + + caseless@0.12.0: {} + + cbor@8.1.0: + dependencies: + nofilter: 3.1.0 + + cbor@9.0.2: + dependencies: + nofilter: 3.1.0 + + chai-as-promised@7.1.2(chai@4.5.0): + dependencies: + chai: 4.5.0 + check-error: 1.0.3 + + chai@4.5.0: + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.4 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.1.0 + + chalk@2.4.2: + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + charenc@0.0.2: {} + + check-error@1.0.3: + dependencies: + get-func-name: 2.0.2 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + ci-info@2.0.0: {} + + cipher-base@1.0.7: + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + clean-stack@2.2.0: {} + + cli-boxes@2.2.1: {} + + cli-table3@0.5.1: + dependencies: + object-assign: 4.1.1 + string-width: 2.1.1 + optionalDependencies: + colors: 1.4.0 + + cliui@7.0.4: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + color-convert@1.9.3: + dependencies: + color-name: 1.1.3 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.3: {} + + color-name@1.1.4: {} + + colors@1.4.0: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + command-exists@1.2.9: {} + + command-line-args@5.2.1: + dependencies: + array-back: 3.1.0 + find-replace: 3.0.0 + lodash.camelcase: 4.3.0 + typical: 4.0.0 + + command-line-usage@6.1.3: + dependencies: + array-back: 4.0.2 + chalk: 2.4.2 + table-layout: 1.0.2 + typical: 5.2.0 + + commander@8.3.0: {} + + concat-map@0.0.1: {} + + concat-stream@1.6.2: + dependencies: + buffer-from: 1.1.2 + inherits: 2.0.4 + readable-stream: 2.3.8 + typedarray: 0.0.6 + + cookie@0.4.2: {} + + core-util-is@1.0.3: {} + + create-hash@1.2.0: + dependencies: + cipher-base: 1.0.7 + inherits: 2.0.4 + md5.js: 1.3.5 + ripemd160: 2.0.3 + sha.js: 2.4.12 + + create-hmac@1.1.7: + dependencies: + cipher-base: 1.0.7 + create-hash: 1.2.0 + inherits: 2.0.4 + ripemd160: 2.0.3 + safe-buffer: 5.2.1 + sha.js: 2.4.12 + + create-require@1.1.1: {} + + crypt@0.0.2: {} + + death@1.1.0: {} + + debug@4.4.3(supports-color@8.1.1): + dependencies: + ms: 2.1.3 + optionalDependencies: + supports-color: 8.1.1 + + decamelize@4.0.0: {} + + deep-eql@4.1.4: + dependencies: + type-detect: 4.1.0 + + deep-extend@0.6.0: {} + + deep-is@0.1.4: {} + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + delayed-stream@1.0.0: {} + + depd@2.0.0: {} + + diff@4.0.4: {} + + diff@5.2.2: {} + + difflib@0.2.4: + dependencies: + heap: 0.2.7 + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + elliptic@6.6.1: + dependencies: + bn.js: 4.12.3 + brorand: 1.1.0 + hash.js: 1.1.7 + hmac-drbg: 1.0.1 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + emoji-regex@8.0.0: {} + + encode-utf8@1.0.3: {} + + enquirer@2.4.1: + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + + env-paths@2.2.1: {} + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + escalade@3.2.0: {} + + escape-string-regexp@1.0.5: {} + + escape-string-regexp@4.0.0: {} + + escodegen@1.8.1: + dependencies: + esprima: 2.7.3 + estraverse: 1.9.3 + esutils: 2.0.3 + optionator: 0.8.3 + optionalDependencies: + source-map: 0.2.0 + + esprima@2.7.3: {} + + esprima@4.0.1: {} + + estraverse@1.9.3: {} + + esutils@2.0.3: {} + + eth-gas-reporter@0.2.27: + dependencies: + '@solidity-parser/parser': 0.14.5 + axios: 1.13.5 + cli-table3: 0.5.1 + colors: 1.4.0 + ethereum-cryptography: 1.2.0 + ethers: 5.8.0 + fs-readdir-recursive: 1.1.0 + lodash: 4.17.23 + markdown-table: 1.1.3 + mocha: 10.8.2 + req-cwd: 2.0.0 + sha1: 1.1.1 + sync-request: 6.1.0 + transitivePeerDependencies: + - bufferutil + - debug + - utf-8-validate + + ethereum-bloom-filters@1.2.0: + dependencies: + '@noble/hashes': 1.8.0 + + ethereum-cryptography@0.1.3: + dependencies: + '@types/pbkdf2': 3.1.2 + '@types/secp256k1': 4.0.7 + blakejs: 1.2.1 + browserify-aes: 1.2.0 + bs58check: 2.1.2 + create-hash: 1.2.0 + create-hmac: 1.1.7 + hash.js: 1.1.7 + keccak: 3.0.4 + pbkdf2: 3.1.5 + randombytes: 2.1.0 + safe-buffer: 5.2.1 + scrypt-js: 3.0.1 + secp256k1: 4.0.4 + setimmediate: 1.0.5 + + ethereum-cryptography@1.2.0: + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/bip32': 1.1.5 + '@scure/bip39': 1.1.1 + + ethereum-cryptography@2.2.1: + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/bip32': 1.4.0 + '@scure/bip39': 1.3.0 + + ethereumjs-util@7.1.5: + dependencies: + '@types/bn.js': 5.2.0 + bn.js: 5.2.3 + create-hash: 1.2.0 + ethereum-cryptography: 0.1.3 + rlp: 2.2.7 + + ethers@5.8.0: + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/contracts': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/json-wallets': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/providers': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/solidity': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/units': 5.8.0 + '@ethersproject/wallet': 5.8.0 + '@ethersproject/web': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + ethers@6.16.0: + dependencies: + '@adraffy/ens-normalize': 1.10.1 + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@types/node': 22.7.5 + aes-js: 4.0.0-beta.5 + tslib: 2.7.0 + ws: 8.17.1 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + ethjs-unit@0.1.6: + dependencies: + bn.js: 4.11.6 + number-to-bn: 1.7.0 + + evp_bytestokey@1.0.3: + dependencies: + md5.js: 1.3.5 + safe-buffer: 5.2.1 + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-levenshtein@2.0.6: {} + + fast-uri@3.1.0: {} + + fastq@1.20.1: + dependencies: + reusify: 1.1.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-replace@3.0.0: + dependencies: + array-back: 3.1.0 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat@5.0.2: {} + + fmix@0.1.0: + dependencies: + imul: 1.0.1 + + follow-redirects@1.15.11(debug@4.4.3): + optionalDependencies: + debug: 4.4.3(supports-color@8.1.1) + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + form-data@2.5.5: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.2 + mime-types: 2.1.35 + safe-buffer: 5.2.1 + + form-data@4.0.5: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.2 + mime-types: 2.1.35 + + fp-ts@1.19.3: {} + + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.2.0 + universalify: 2.0.1 + + fs-extra@7.0.1: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs-extra@8.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs-extra@9.1.0: + dependencies: + at-least-node: 1.0.0 + graceful-fs: 4.2.11 + jsonfile: 6.2.0 + universalify: 2.0.1 + + fs-readdir-recursive@1.1.0: {} + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + get-caller-file@2.0.5: {} + + get-func-name@2.0.2: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-port@3.2.0: {} + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + ghost-testrpc@0.0.2: + dependencies: + chalk: 2.4.2 + node-emoji: 1.11.0 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob@5.0.15: + dependencies: + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@7.1.7: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@8.1.0: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 5.1.9 + once: 1.4.0 + + global-modules@2.0.0: + dependencies: + global-prefix: 3.0.0 + + global-prefix@3.0.0: + dependencies: + ini: 1.3.8 + kind-of: 6.0.3 + which: 1.3.1 + + globby@10.0.2: + dependencies: + '@types/glob': 7.2.0 + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + glob: 7.2.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + handlebars@4.7.8: + dependencies: + minimist: 1.2.8 + neo-async: 2.6.2 + source-map: 0.6.1 + wordwrap: 1.0.0 + optionalDependencies: + uglify-js: 3.19.3 + + hardhat-deploy@1.0.4: + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/contracts': 5.8.0 + '@ethersproject/providers': 5.8.0 + '@ethersproject/solidity': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wallet': 5.8.0 + axios: 0.21.4(debug@4.4.3) + chalk: 4.1.2 + chokidar: 3.6.0 + debug: 4.4.3(supports-color@8.1.1) + enquirer: 2.4.1 + ethers: 5.8.0 + form-data: 4.0.5 + fs-extra: 10.1.0 + match-all: 1.2.7 + murmur-128: 0.2.1 + neoqs: 6.13.0 + zksync-ethers: 5.11.1(ethers@5.8.0) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + hardhat-gas-reporter@1.0.10(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)): + dependencies: + array-uniq: 1.0.3 + eth-gas-reporter: 0.2.27 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + sha1: 1.1.1 + transitivePeerDependencies: + - '@codechecks/client' + - bufferutil + - debug + - utf-8-validate + + hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3): + dependencies: + '@ethereumjs/util': 9.1.0 + '@ethersproject/abi': 5.8.0 + '@nomicfoundation/edr': 0.12.0-next.23 + '@nomicfoundation/solidity-analyzer': 0.1.2 + '@sentry/node': 5.30.0 + adm-zip: 0.4.16 + aggregate-error: 3.1.0 + ansi-escapes: 4.3.2 + boxen: 5.1.2 + chokidar: 4.0.3 + ci-info: 2.0.0 + debug: 4.4.3(supports-color@8.1.1) + enquirer: 2.4.1 + env-paths: 2.2.1 + ethereum-cryptography: 1.2.0 + find-up: 5.0.0 + fp-ts: 1.19.3 + fs-extra: 7.0.1 + immutable: 4.3.7 + io-ts: 1.10.4 + json-stream-stringify: 3.1.6 + keccak: 3.0.4 + lodash: 4.17.23 + micro-eth-signer: 0.14.0 + mnemonist: 0.38.5 + mocha: 10.8.2 + p-map: 4.0.0 + picocolors: 1.1.1 + raw-body: 2.5.3 + resolve: 1.17.0 + semver: 6.3.1 + solc: 0.8.26(debug@4.4.3) + source-map-support: 0.5.21 + stacktrace-parser: 0.1.11 + tinyglobby: 0.2.15 + tsort: 0.0.1 + undici: 5.29.0 + uuid: 8.3.2 + ws: 7.5.10 + optionalDependencies: + ts-node: 10.9.2(@types/node@25.3.1)(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + has-flag@1.0.0: {} + + has-flag@3.0.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hash-base@3.1.2: + dependencies: + inherits: 2.0.4 + readable-stream: 2.3.8 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + hash.js@1.1.7: + dependencies: + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + he@1.2.0: {} + + heap@0.2.7: {} + + hmac-drbg@1.0.1: + dependencies: + hash.js: 1.1.7 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + http-basic@8.1.3: + dependencies: + caseless: 0.12.0 + concat-stream: 1.6.2 + http-response-object: 3.0.2 + parse-cache-control: 1.0.1 + + http-errors@2.0.1: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.2 + toidentifier: 1.0.1 + + http-response-object@3.0.2: + dependencies: + '@types/node': 10.17.60 + + https-proxy-agent@5.0.1: + dependencies: + agent-base: 6.0.2 + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + iconv-lite@0.4.24: + dependencies: + safer-buffer: 2.1.2 + + ignore@5.3.2: {} + + immer@10.0.2: {} + + immutable@4.3.7: {} + + imul@1.0.1: {} + + indent-string@4.0.0: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + ini@1.3.8: {} + + interpret@1.4.0: {} + + io-ts@1.10.4: + dependencies: + fp-ts: 1.19.3 + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-callable@1.2.7: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@2.0.0: {} + + is-fullwidth-code-point@3.0.0: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-hex-prefixed@1.0.0: {} + + is-number@7.0.0: {} + + is-plain-obj@2.1.0: {} + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.20 + + is-unicode-supported@0.1.0: {} + + isarray@1.0.0: {} + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + js-sha3@0.8.0: {} + + js-yaml@3.14.2: + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + json-schema-traverse@1.0.0: {} + + json-stream-stringify@3.1.6: {} + + json-stringify-safe@5.0.1: {} + + json5@2.2.3: {} + + jsonfile@4.0.0: + optionalDependencies: + graceful-fs: 4.2.11 + + jsonfile@6.2.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + jsonschema@1.5.0: {} + + keccak@3.0.4: + dependencies: + node-addon-api: 2.0.2 + node-gyp-build: 4.8.4 + readable-stream: 3.6.2 + + kind-of@6.0.3: {} + + kleur@3.0.3: {} + + levn@0.3.0: + dependencies: + prelude-ls: 1.1.2 + type-check: 0.3.2 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.camelcase@4.3.0: {} + + lodash.clonedeep@4.5.0: {} + + lodash.isequal@4.5.0: {} + + lodash.truncate@4.4.2: {} + + lodash@4.17.21: {} + + lodash@4.17.23: {} + + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + loupe@2.3.7: + dependencies: + get-func-name: 2.0.2 + + lru_map@0.3.3: {} + + make-error@1.3.6: {} + + markdown-table@1.1.3: {} + + match-all@1.2.7: {} + + math-intrinsics@1.1.0: {} + + md5.js@1.3.5: + dependencies: + hash-base: 3.1.2 + inherits: 2.0.4 + safe-buffer: 5.2.1 + + memorystream@0.3.1: {} + + merge2@1.4.1: {} + + micro-eth-signer@0.14.0: + dependencies: + '@noble/curves': 1.8.2 + '@noble/hashes': 1.7.2 + micro-packed: 0.7.3 + + micro-ftch@0.3.1: {} + + micro-packed@0.7.3: + dependencies: + '@scure/base': 1.2.6 + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + minimalistic-assert@1.0.1: {} + + minimalistic-crypto-utils@1.0.1: {} + + minimatch@10.2.4: + dependencies: + brace-expansion: 5.0.3 + + minimatch@3.1.5: + dependencies: + brace-expansion: 1.1.12 + + minimatch@5.1.9: + dependencies: + brace-expansion: 2.0.2 + + minimist@1.2.8: {} + + mkdirp@0.5.6: + dependencies: + minimist: 1.2.8 + + mkdirp@1.0.4: {} + + mnemonist@0.38.5: + dependencies: + obliterator: 2.0.5 + + mocha@10.8.2: + dependencies: + ansi-colors: 4.1.3 + browser-stdout: 1.3.1 + chokidar: 3.6.0 + debug: 4.4.3(supports-color@8.1.1) + diff: 5.2.2 + escape-string-regexp: 4.0.0 + find-up: 5.0.0 + glob: 8.1.0 + he: 1.2.0 + js-yaml: 4.1.1 + log-symbols: 4.1.0 + minimatch: 5.1.9 + ms: 2.1.3 + serialize-javascript: 6.0.2 + strip-json-comments: 3.1.1 + supports-color: 8.1.1 + workerpool: 6.5.1 + yargs: 16.2.0 + yargs-parser: 20.2.9 + yargs-unparser: 2.0.0 + + ms@2.1.3: {} + + murmur-128@0.2.1: + dependencies: + encode-utf8: 1.0.3 + fmix: 0.1.0 + imul: 1.0.1 + + ndjson@2.0.0: + dependencies: + json-stringify-safe: 5.0.1 + minimist: 1.2.8 + readable-stream: 3.6.2 + split2: 3.2.2 + through2: 4.0.2 + + neo-async@2.6.2: {} + + neoqs@6.13.0: {} + + node-addon-api@2.0.2: {} + + node-addon-api@5.1.0: {} + + node-emoji@1.11.0: + dependencies: + lodash: 4.17.23 + + node-gyp-build@4.8.4: {} + + nofilter@3.1.0: {} + + nopt@3.0.6: + dependencies: + abbrev: 1.0.9 + + normalize-path@3.0.0: {} + + number-to-bn@1.7.0: + dependencies: + bn.js: 4.11.6 + strip-hex-prefix: 1.0.0 + + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + obliterator@2.0.5: {} + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + optionator@0.8.3: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.3.0 + prelude-ls: 1.1.2 + type-check: 0.3.2 + word-wrap: 1.2.5 + + ordinal@1.0.3: {} + + os-tmpdir@1.0.2: {} + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-map@4.0.0: + dependencies: + aggregate-error: 3.1.0 + + parse-cache-control@1.0.1: {} + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + path-parse@1.0.7: {} + + path-type@4.0.0: {} + + pathval@1.1.1: {} + + pbkdf2@3.1.5: + dependencies: + create-hash: 1.2.0 + create-hmac: 1.1.7 + ripemd160: 2.0.3 + safe-buffer: 5.2.1 + sha.js: 2.4.12 + to-buffer: 1.2.2 + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + pify@4.0.1: {} + + possible-typed-array-names@1.1.0: {} + + prelude-ls@1.1.2: {} + + prettier@2.8.8: {} + + process-nextick-args@2.0.1: {} + + promise@8.3.0: + dependencies: + asap: 2.0.6 + + prompts@2.4.2: + dependencies: + kleur: 3.0.3 + sisteransi: 1.0.5 + + proxy-from-env@1.1.0: {} + + qs@6.15.0: + dependencies: + side-channel: 1.1.0 + + queue-microtask@1.2.3: {} + + randombytes@2.1.0: + dependencies: + safe-buffer: 5.2.1 + + raw-body@2.5.3: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.1 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + + readable-stream@2.3.8: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 1.0.0 + process-nextick-args: 2.0.1 + safe-buffer: 5.1.2 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + readdirp@4.1.2: {} + + rechoir@0.6.2: + dependencies: + resolve: 1.22.11 + + recursive-readdir@2.2.3: + dependencies: + minimatch: 3.1.5 + + reduce-flatten@2.0.0: {} + + req-cwd@2.0.0: + dependencies: + req-from: 2.0.0 + + req-from@2.0.0: + dependencies: + resolve-from: 3.0.0 + + require-directory@2.1.1: {} + + require-from-string@2.0.2: {} + + resolve-from@3.0.0: {} + + resolve@1.1.7: {} + + resolve@1.17.0: + dependencies: + path-parse: 1.0.7 + + resolve@1.22.11: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.1.0: {} + + ripemd160@2.0.3: + dependencies: + hash-base: 3.1.2 + inherits: 2.0.4 + + rlp@2.2.7: + dependencies: + bn.js: 5.2.3 + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + safe-buffer@5.1.2: {} + + safe-buffer@5.2.1: {} + + safer-buffer@2.1.2: {} + + sc-istanbul@0.4.6: + dependencies: + abbrev: 1.0.9 + async: 1.5.2 + escodegen: 1.8.1 + esprima: 2.7.3 + glob: 5.0.15 + handlebars: 4.7.8 + js-yaml: 3.14.2 + mkdirp: 0.5.6 + nopt: 3.0.6 + once: 1.4.0 + resolve: 1.1.7 + supports-color: 3.2.3 + which: 1.3.1 + wordwrap: 1.0.0 + + scrypt-js@3.0.1: {} + + secp256k1@4.0.4: + dependencies: + elliptic: 6.6.1 + node-addon-api: 5.1.0 + node-gyp-build: 4.8.4 + + semver@5.7.2: {} + + semver@6.3.1: {} + + semver@7.7.4: {} + + serialize-javascript@6.0.2: + dependencies: + randombytes: 2.1.0 + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + setimmediate@1.0.5: {} + + setprototypeof@1.2.0: {} + + sha.js@2.4.12: + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + sha1@1.1.1: + dependencies: + charenc: 0.0.2 + crypt: 0.0.2 + + shelljs@0.8.5: + dependencies: + glob: 7.2.3 + interpret: 1.4.0 + rechoir: 0.6.2 + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + sisteransi@1.0.5: {} + + slash@3.0.0: {} + + slice-ansi@4.0.0: + dependencies: + ansi-styles: 4.3.0 + astral-regex: 2.0.0 + is-fullwidth-code-point: 3.0.0 + + solc@0.8.26(debug@4.4.3): + dependencies: + command-exists: 1.2.9 + commander: 8.3.0 + follow-redirects: 1.15.11(debug@4.4.3) + js-sha3: 0.8.0 + memorystream: 0.3.1 + semver: 5.7.2 + tmp: 0.0.33 + transitivePeerDependencies: + - debug + + solidity-coverage@0.8.17(hardhat@2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)): + dependencies: + '@ethersproject/abi': 5.8.0 + '@solidity-parser/parser': 0.20.2 + chalk: 2.4.2 + death: 1.1.0 + difflib: 0.2.4 + fs-extra: 8.1.0 + ghost-testrpc: 0.0.2 + global-modules: 2.0.0 + globby: 10.0.2 + hardhat: 2.28.6(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3) + jsonschema: 1.5.0 + lodash: 4.17.23 + mocha: 10.8.2 + node-emoji: 1.11.0 + pify: 4.0.1 + recursive-readdir: 2.2.3 + sc-istanbul: 0.4.6 + semver: 7.7.4 + shelljs: 0.8.5 + web3-utils: 1.10.4 + + source-map-support@0.5.21: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + + source-map@0.2.0: + dependencies: + amdefine: 1.0.1 + optional: true + + source-map@0.6.1: {} + + split2@3.2.2: + dependencies: + readable-stream: 3.6.2 + + sprintf-js@1.0.3: {} + + stacktrace-parser@0.1.11: + dependencies: + type-fest: 0.7.1 + + statuses@2.0.2: {} + + string-format@2.0.0: {} + + string-width@2.1.1: + dependencies: + is-fullwidth-code-point: 2.0.0 + strip-ansi: 4.0.0 + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string_decoder@1.1.1: + dependencies: + safe-buffer: 5.1.2 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + + strip-ansi@4.0.0: + dependencies: + ansi-regex: 3.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-hex-prefix@1.0.0: + dependencies: + is-hex-prefixed: 1.0.0 + + strip-json-comments@3.1.1: {} + + supports-color@3.2.3: + dependencies: + has-flag: 1.0.0 + + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + sync-request@6.1.0: + dependencies: + http-response-object: 3.0.2 + sync-rpc: 1.3.6 + then-request: 6.0.2 + + sync-rpc@1.3.6: + dependencies: + get-port: 3.2.0 + + table-layout@1.0.2: + dependencies: + array-back: 4.0.2 + deep-extend: 0.6.0 + typical: 5.2.0 + wordwrapjs: 4.0.1 + + table@6.9.0: + dependencies: + ajv: 8.18.0 + lodash.truncate: 4.4.2 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + then-request@6.0.2: + dependencies: + '@types/concat-stream': 1.6.1 + '@types/form-data': 0.0.33 + '@types/node': 8.10.66 + '@types/qs': 6.14.0 + caseless: 0.12.0 + concat-stream: 1.6.2 + form-data: 2.5.5 + http-basic: 8.1.3 + http-response-object: 3.0.2 + promise: 8.3.0 + qs: 6.15.0 + + through2@4.0.2: + dependencies: + readable-stream: 3.6.2 + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + tmp@0.0.33: + dependencies: + os-tmpdir: 1.0.2 + + to-buffer@1.2.2: + dependencies: + isarray: 2.0.5 + safe-buffer: 5.2.1 + typed-array-buffer: 1.0.3 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + toidentifier@1.0.1: {} + + ts-command-line-args@2.5.1: + dependencies: + chalk: 4.1.2 + command-line-args: 5.2.1 + command-line-usage: 6.1.3 + string-format: 2.0.0 + + ts-essentials@7.0.3(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.12 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 25.3.1 + acorn: 8.16.0 + acorn-walk: 8.3.5 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.4 + make-error: 1.3.6 + typescript: 5.9.3 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + + tslib@1.14.1: {} + + tslib@2.7.0: {} + + tsort@0.0.1: {} + + type-check@0.3.2: + dependencies: + prelude-ls: 1.1.2 + + type-detect@4.1.0: {} + + type-fest@0.20.2: {} + + type-fest@0.21.3: {} + + type-fest@0.7.1: {} + + typechain@8.3.2(typescript@5.9.3): + dependencies: + '@types/prettier': 2.7.3 + debug: 4.4.3(supports-color@8.1.1) + fs-extra: 7.0.1 + glob: 7.1.7 + js-sha3: 0.8.0 + lodash: 4.17.23 + mkdirp: 1.0.4 + prettier: 2.8.8 + ts-command-line-args: 2.5.1 + ts-essentials: 7.0.3(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typedarray@0.0.6: {} + + typescript@5.9.3: {} + + typical@4.0.0: {} + + typical@5.2.0: {} + + uglify-js@3.19.3: + optional: true + + undici-types@6.19.8: {} + + undici-types@7.18.2: {} + + undici@5.29.0: + dependencies: + '@fastify/busboy': 2.1.1 + + universalify@0.1.2: {} + + universalify@2.0.1: {} + + unpipe@1.0.0: {} + + utf8@3.0.0: {} + + util-deprecate@1.0.2: {} + + uuid@8.3.2: {} + + v8-compile-cache-lib@3.0.1: {} + + web3-utils@1.10.4: + dependencies: + '@ethereumjs/util': 8.1.0 + bn.js: 5.2.3 + ethereum-bloom-filters: 1.2.0 + ethereum-cryptography: 2.2.1 + ethjs-unit: 0.1.6 + number-to-bn: 1.7.0 + randombytes: 2.1.0 + utf8: 3.0.0 + + which-typed-array@1.1.20: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + which@1.3.1: + dependencies: + isexe: 2.0.0 + + widest-line@3.1.0: + dependencies: + string-width: 4.2.3 + + word-wrap@1.2.5: {} + + wordwrap@1.0.0: {} + + wordwrapjs@4.0.1: + dependencies: + reduce-flatten: 2.0.0 + typical: 5.2.0 + + workerpool@6.5.1: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + ws@7.5.10: {} + + ws@8.17.1: {} + + ws@8.18.0: {} + + y18n@5.0.8: {} + + yargs-parser@20.2.9: {} + + yargs-unparser@2.0.0: + dependencies: + camelcase: 6.3.0 + decamelize: 4.0.0 + flat: 5.0.2 + is-plain-obj: 2.1.0 + + yargs@16.2.0: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + + yn@3.1.1: {} + + yocto-queue@0.1.0: {} + + zksync-ethers@5.11.1(ethers@5.8.0): + dependencies: + ethers: 5.8.0 diff --git a/tests/evm-tools-compatibility/hardhat/test/hardhat_instruction.test.js b/tests/evm-tools-compatibility/hardhat/test/hardhat_instruction.test.js index 41439a641..be6c74042 100644 --- a/tests/evm-tools-compatibility/hardhat/test/hardhat_instruction.test.js +++ b/tests/evm-tools-compatibility/hardhat/test/hardhat_instruction.test.js @@ -4,29 +4,29 @@ const { expect } = require("chai"); describe("Hardhat Commands Compatibility", function () { it("Should compile contracts", function () { - execSync("npx hardhat compile"); + execSync("pnpm exec hardhat compile"); expect(fs.existsSync("./artifacts")).to.be.true; }); it("Should clean artifacts", function () { - execSync("npx hardhat clean"); + execSync("pnpm exec hardhat clean"); expect(fs.existsSync("./artifacts")).to.be.false; }); it("Should flatten contracts", function () { - execSync("npx hardhat flatten contracts/TokenExample.sol > Flattened.sol"); + execSync("pnpm exec hardhat flatten contracts/TokenExample.sol > Flattened.sol"); expect(fs.existsSync("Flattened.sol")).to.be.true; }); it("Should run deploy script successfully", function () { - execSync("npx hardhat compile"); - const output = execSync("npx hardhat run --no-compile scripts/deploy.js").toString(); + execSync("pnpm exec hardhat compile"); + const output = execSync("pnpm exec hardhat run --no-compile scripts/deploy.js").toString(); console.log(output); expect(output).to.include("Token deployed to:"); }); it("Should run deploy via hardhat-deploy", function () { - const output = execSync("npx hardhat deploy").toString(); + const output = execSync("pnpm exec hardhat deploy").toString(); console.log(output); expect(output).to.include("deploying \"TokenExample\""); }); diff --git a/tests/evm-tools-compatibility/viem/README.md b/tests/evm-tools-compatibility/viem/README.md index e26286664..8e41f8c5b 100644 --- a/tests/evm-tools-compatibility/viem/README.md +++ b/tests/evm-tools-compatibility/viem/README.md @@ -5,11 +5,11 @@ This project demonstrate viem sdk usage test ## Setup ```shell -npm install +pnpm install ``` ## viem unit test ```shell -npx mocha test +pnpm test ``` diff --git a/tests/evm-tools-compatibility/viem/package.json b/tests/evm-tools-compatibility/viem/package.json index 8f47e460d..85f1e2f36 100644 --- a/tests/evm-tools-compatibility/viem/package.json +++ b/tests/evm-tools-compatibility/viem/package.json @@ -1,6 +1,7 @@ { "name": "viem", "version": "1.0.0", + "packageManager": "pnpm@9.15.0", "main": "index.js", "scripts": { "test": "mocha test/viemFunctions.test.js --timeout 60000" diff --git a/tests/evm-tools-compatibility/viem/pnpm-lock.yaml b/tests/evm-tools-compatibility/viem/pnpm-lock.yaml new file mode 100644 index 000000000..2593519d0 --- /dev/null +++ b/tests/evm-tools-compatibility/viem/pnpm-lock.yaml @@ -0,0 +1,807 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + dotenv: + specifier: ^16.5.0 + version: 16.6.1 + viem: + specifier: ^2.27.3 + version: 2.46.3 + devDependencies: + chai: + specifier: ^4.5.0 + version: 4.5.0 + mocha: + specifier: ^11.1.0 + version: 11.7.5 + +packages: + + '@adraffy/ens-normalize@1.11.1': + resolution: {integrity: sha512-nhCBV3quEgesuf7c7KYfperqSS14T8bYuvJ8PcLJp6znkZpFc0AuW4qBtr8eKVyPPe/8RSr7sglCWPU5eaxwKQ==} + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@noble/ciphers@1.3.0': + resolution: {integrity: sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==} + engines: {node: ^14.21.3 || >=16} + + '@noble/curves@1.9.1': + resolution: {integrity: sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@scure/base@1.2.6': + resolution: {integrity: sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==} + + '@scure/bip32@1.7.0': + resolution: {integrity: sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==} + + '@scure/bip39@1.6.0': + resolution: {integrity: sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==} + + abitype@1.2.3: + resolution: {integrity: sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg==} + peerDependencies: + typescript: '>=5.0.4' + zod: ^3.22.0 || ^4.0.0 + peerDependenciesMeta: + typescript: + optional: true + zod: + optional: true + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} + engines: {node: '>=12'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + assertion-error@1.1.0: + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + + brace-expansion@5.0.3: + resolution: {integrity: sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==} + engines: {node: 18 || 20 || >=22} + + browser-stdout@1.3.1: + resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + chai@4.5.0: + resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decamelize@4.0.0: + resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} + engines: {node: '>=10'} + + deep-eql@4.1.4: + resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} + engines: {node: '>=6'} + + diff@7.0.0: + resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==} + engines: {node: '>=0.3.1'} + + dotenv@16.6.1: + resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==} + engines: {node: '>=12'} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + + foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + + glob@10.5.0: + resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + hasBin: true + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + isows@1.0.7: + resolution: {integrity: sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==} + peerDependencies: + ws: '*' + + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + + lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + + minimatch@9.0.8: + resolution: {integrity: sha512-reYkDYtj/b19TeqbNZCV4q9t+Yxylf/rYBsLb42SXJatTv4/ylq5lEiAmhA/IToxO7NI2UzNMghHoHuaqDkAjw==} + engines: {node: '>=16 || 14 >=14.17'} + + minipass@7.1.3: + resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==} + engines: {node: '>=16 || 14 >=14.17'} + + mocha@11.7.5: + resolution: {integrity: sha512-mTT6RgopEYABzXWFx+GcJ+ZQ32kp4fMf0xvpZIIfSq9Z8lC/++MtcCnQ9t5FP2veYEP95FIYSvW+U9fV4xrlig==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + ox@0.12.4: + resolution: {integrity: sha512-+P+C7QzuwPV8lu79dOwjBKfB2CbnbEXe/hfyyrff1drrO1nOOj3Hc87svHfcW1yneRr3WXaKr6nz11nq+/DF9Q==} + peerDependencies: + typescript: '>=5.4.0' + peerDependenciesMeta: + typescript: + optional: true + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + pathval@1.1.1: + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} + engines: {node: '>=12'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + type-detect@4.1.0: + resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} + engines: {node: '>=4'} + + viem@2.46.3: + resolution: {integrity: sha512-2LJS+Hyh2sYjHXQtzfv1kU9pZx9dxFzvoU/ZKIcn0FNtOU0HQuIICuYdWtUDFHaGXbAdVo8J1eCvmjkL9JVGwg==} + peerDependencies: + typescript: '>=5.0.4' + peerDependenciesMeta: + typescript: + optional: true + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + workerpool@9.3.4: + resolution: {integrity: sha512-TmPRQYYSAnnDiEB0P/Ytip7bFGvqnSU6I2BcuSw7Hx+JSg/DsUi5ebYfc8GYaSdpuvOcEs6dXxPurOYpe9QFwg==} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs-unparser@2.0.0: + resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} + engines: {node: '>=10'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@adraffy/ens-normalize@1.11.1': {} + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.2 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + + '@noble/ciphers@1.3.0': {} + + '@noble/curves@1.9.1': + dependencies: + '@noble/hashes': 1.8.0 + + '@noble/hashes@1.8.0': {} + + '@pkgjs/parseargs@0.11.0': + optional: true + + '@scure/base@1.2.6': {} + + '@scure/bip32@1.7.0': + dependencies: + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + + '@scure/bip39@1.6.0': + dependencies: + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + + abitype@1.2.3: {} + + ansi-regex@5.0.1: {} + + ansi-regex@6.2.2: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.3: {} + + argparse@2.0.1: {} + + assertion-error@1.1.0: {} + + balanced-match@4.0.4: {} + + brace-expansion@5.0.3: + dependencies: + balanced-match: 4.0.4 + + browser-stdout@1.3.1: {} + + camelcase@6.3.0: {} + + chai@4.5.0: + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.4 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.1.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + check-error@1.0.3: + dependencies: + get-func-name: 2.0.2 + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + debug@4.4.3(supports-color@8.1.1): + dependencies: + ms: 2.1.3 + optionalDependencies: + supports-color: 8.1.1 + + decamelize@4.0.0: {} + + deep-eql@4.1.4: + dependencies: + type-detect: 4.1.0 + + diff@7.0.0: {} + + dotenv@16.6.1: {} + + eastasianwidth@0.2.0: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + escalade@3.2.0: {} + + escape-string-regexp@4.0.0: {} + + eventemitter3@5.0.1: {} + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat@5.0.2: {} + + foreground-child@3.3.1: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + get-caller-file@2.0.5: {} + + get-func-name@2.0.2: {} + + glob@10.5.0: + dependencies: + foreground-child: 3.3.1 + jackspeak: 3.4.3 + minimatch: 9.0.8 + minipass: 7.1.3 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 + + has-flag@4.0.0: {} + + he@1.2.0: {} + + is-fullwidth-code-point@3.0.0: {} + + is-path-inside@3.0.3: {} + + is-plain-obj@2.1.0: {} + + is-unicode-supported@0.1.0: {} + + isexe@2.0.0: {} + + isows@1.0.7(ws@8.18.3): + dependencies: + ws: 8.18.3 + + jackspeak@3.4.3: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + loupe@2.3.7: + dependencies: + get-func-name: 2.0.2 + + lru-cache@10.4.3: {} + + minimatch@9.0.8: + dependencies: + brace-expansion: 5.0.3 + + minipass@7.1.3: {} + + mocha@11.7.5: + dependencies: + browser-stdout: 1.3.1 + chokidar: 4.0.3 + debug: 4.4.3(supports-color@8.1.1) + diff: 7.0.0 + escape-string-regexp: 4.0.0 + find-up: 5.0.0 + glob: 10.5.0 + he: 1.2.0 + is-path-inside: 3.0.3 + js-yaml: 4.1.1 + log-symbols: 4.1.0 + minimatch: 9.0.8 + ms: 2.1.3 + picocolors: 1.1.1 + serialize-javascript: 6.0.2 + strip-json-comments: 3.1.1 + supports-color: 8.1.1 + workerpool: 9.3.4 + yargs: 17.7.2 + yargs-parser: 21.1.1 + yargs-unparser: 2.0.0 + + ms@2.1.3: {} + + ox@0.12.4: + dependencies: + '@adraffy/ens-normalize': 1.11.1 + '@noble/ciphers': 1.3.0 + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.2.3 + eventemitter3: 5.0.1 + transitivePeerDependencies: + - zod + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + package-json-from-dist@1.0.1: {} + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + path-scurry@1.11.1: + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.3 + + pathval@1.1.1: {} + + picocolors@1.1.1: {} + + randombytes@2.1.0: + dependencies: + safe-buffer: 5.2.1 + + readdirp@4.1.2: {} + + require-directory@2.1.1: {} + + safe-buffer@5.2.1: {} + + serialize-javascript@6.0.2: + dependencies: + randombytes: 2.1.0 + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + signal-exit@4.1.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.2 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.2: + dependencies: + ansi-regex: 6.2.2 + + strip-json-comments@3.1.1: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + type-detect@4.1.0: {} + + viem@2.46.3: + dependencies: + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.2.3 + isows: 1.0.7(ws@8.18.3) + ox: 0.12.4 + ws: 8.18.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + - zod + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + workerpool@9.3.4: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.3 + string-width: 5.1.2 + strip-ansi: 7.1.2 + + ws@8.18.3: {} + + y18n@5.0.8: {} + + yargs-parser@21.1.1: {} + + yargs-unparser@2.0.0: + dependencies: + camelcase: 6.3.0 + decamelize: 4.0.0 + flat: 5.0.2 + is-plain-obj: 2.1.0 + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yocto-queue@0.1.0: {} diff --git a/tests/evm-tools-compatibility/web3.js/README.md b/tests/evm-tools-compatibility/web3.js/README.md index fb3d6ceee..e7752ba7c 100644 --- a/tests/evm-tools-compatibility/web3.js/README.md +++ b/tests/evm-tools-compatibility/web3.js/README.md @@ -5,12 +5,12 @@ This project demonstrate web3js sdk usage test ## Setup ```shell -npm install -npm i chai@4 +pnpm install +pnpm add -D chai@4 ``` ## web3js unit test ```shell -npx mocha test +pnpm test ``` diff --git a/tests/evm-tools-compatibility/web3.js/package.json b/tests/evm-tools-compatibility/web3.js/package.json index 8f74b2cbf..437175335 100644 --- a/tests/evm-tools-compatibility/web3.js/package.json +++ b/tests/evm-tools-compatibility/web3.js/package.json @@ -1,6 +1,7 @@ { "name": "web3", "version": "1.0.0", + "packageManager": "pnpm@9.15.0", "main": "index.js", "scripts": { "test": "mocha test/web3js_compatibility.test.js --timeout 60000" diff --git a/tests/evm-tools-compatibility/web3.js/pnpm-lock.yaml b/tests/evm-tools-compatibility/web3.js/pnpm-lock.yaml new file mode 100644 index 000000000..2ea162aa9 --- /dev/null +++ b/tests/evm-tools-compatibility/web3.js/pnpm-lock.yaml @@ -0,0 +1,3609 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + chai: + specifier: ^4.5.0 + version: 4.5.0 + mocha: + specifier: ^10.2.0 + version: 10.8.2 + web3: + specifier: ^1.10.0 + version: 1.10.4(bufferutil@4.1.0)(utf-8-validate@5.0.10) + +packages: + + '@ethereumjs/common@2.6.5': + resolution: {integrity: sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==} + + '@ethereumjs/rlp@4.0.1': + resolution: {integrity: sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==} + engines: {node: '>=14'} + hasBin: true + + '@ethereumjs/tx@3.5.2': + resolution: {integrity: sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==} + + '@ethereumjs/util@8.1.0': + resolution: {integrity: sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==} + engines: {node: '>=14'} + + '@ethersproject/abi@5.8.0': + resolution: {integrity: sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==} + + '@ethersproject/abstract-provider@5.8.0': + resolution: {integrity: sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==} + + '@ethersproject/abstract-signer@5.8.0': + resolution: {integrity: sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==} + + '@ethersproject/address@5.8.0': + resolution: {integrity: sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==} + + '@ethersproject/base64@5.8.0': + resolution: {integrity: sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==} + + '@ethersproject/bignumber@5.8.0': + resolution: {integrity: sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==} + + '@ethersproject/bytes@5.8.0': + resolution: {integrity: sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==} + + '@ethersproject/constants@5.8.0': + resolution: {integrity: sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==} + + '@ethersproject/hash@5.8.0': + resolution: {integrity: sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==} + + '@ethersproject/keccak256@5.8.0': + resolution: {integrity: sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==} + + '@ethersproject/logger@5.8.0': + resolution: {integrity: sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==} + + '@ethersproject/networks@5.8.0': + resolution: {integrity: sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==} + + '@ethersproject/properties@5.8.0': + resolution: {integrity: sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==} + + '@ethersproject/rlp@5.8.0': + resolution: {integrity: sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==} + + '@ethersproject/signing-key@5.8.0': + resolution: {integrity: sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==} + + '@ethersproject/strings@5.8.0': + resolution: {integrity: sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==} + + '@ethersproject/transactions@5.8.0': + resolution: {integrity: sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==} + + '@ethersproject/web@5.8.0': + resolution: {integrity: sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==} + + '@noble/curves@1.4.2': + resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} + + '@noble/hashes@1.4.0': + resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} + engines: {node: '>= 16'} + + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + + '@scure/base@1.1.9': + resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} + + '@scure/bip32@1.4.0': + resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} + + '@scure/bip39@1.3.0': + resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} + + '@sindresorhus/is@4.6.0': + resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} + engines: {node: '>=10'} + + '@szmarczak/http-timer@4.0.6': + resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} + engines: {node: '>=10'} + + '@szmarczak/http-timer@5.0.1': + resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} + engines: {node: '>=14.16'} + + '@types/bn.js@5.2.0': + resolution: {integrity: sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==} + + '@types/cacheable-request@6.0.3': + resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==} + + '@types/http-cache-semantics@4.2.0': + resolution: {integrity: sha512-L3LgimLHXtGkWikKnsPg0/VFx9OGZaC+eN1u4r+OB1XRqH3meBIAVC2zr1WdMH+RHmnRkqliQAOHNJ/E0j/e0Q==} + + '@types/keyv@3.1.4': + resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} + + '@types/node@12.20.55': + resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + + '@types/node@25.3.1': + resolution: {integrity: sha512-hj9YIJimBCipHVfHKRMnvmHg+wfhKc0o4mTtXh9pKBjC8TLJzz0nzGmLi5UJsYAUgSvXFHgb0V2oY10DUFtImw==} + + '@types/pbkdf2@3.1.2': + resolution: {integrity: sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==} + + '@types/responselike@1.0.3': + resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} + + '@types/secp256k1@4.0.7': + resolution: {integrity: sha512-Rcvjl6vARGAKRO6jHeKMatGrvOMGrR/AR11N1x2LqintPCyDZ7NBhrh238Z2VZc7aM7KIwnFpFQ7fnfK4H/9Qw==} + + abortcontroller-polyfill@1.7.8: + resolution: {integrity: sha512-9f1iZ2uWh92VcrU9Y8x+LdM4DLj75VE0MJB8zuF1iUnroEptStw+DQ8EQPMUdfe5k+PkB1uUfDQfWbhstH8LrQ==} + + accepts@1.3.8: + resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} + engines: {node: '>= 0.6'} + + ajv@6.14.0: + resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-flatten@1.1.1: + resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} + + asn1@0.2.6: + resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} + + assert-plus@1.0.0: + resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} + engines: {node: '>=0.8'} + + assertion-error@1.1.0: + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + + async-limiter@1.0.1: + resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + aws-sign2@0.7.0: + resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} + + aws4@1.13.2: + resolution: {integrity: sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + base-x@3.0.11: + resolution: {integrity: sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==} + + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + + bcrypt-pbkdf@1.0.2: + resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} + + bignumber.js@9.3.1: + resolution: {integrity: sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + blakejs@1.2.1: + resolution: {integrity: sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==} + + bluebird@3.7.2: + resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} + + bn.js@4.11.6: + resolution: {integrity: sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==} + + bn.js@4.12.3: + resolution: {integrity: sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==} + + bn.js@5.2.3: + resolution: {integrity: sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==} + + body-parser@1.20.4: + resolution: {integrity: sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + brorand@1.1.0: + resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} + + browser-stdout@1.3.1: + resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} + + browserify-aes@1.2.0: + resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} + + bs58@4.0.1: + resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==} + + bs58check@2.1.2: + resolution: {integrity: sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==} + + buffer-to-arraybuffer@0.0.5: + resolution: {integrity: sha512-3dthu5CYiVB1DEJp61FtApNnNndTckcqe4pFcLdvHtrpG+kcyekCJKg4MRiDcFW7A6AODnXB9U4dwQiCW5kzJQ==} + + buffer-xor@1.0.3: + resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} + + buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + + bufferutil@4.1.0: + resolution: {integrity: sha512-ZMANVnAixE6AWWnPzlW2KpUrxhm9woycYvPOo67jWHyFowASTEd9s+QN1EIMsSDtwhIxN4sWE1jotpuDUIgyIw==} + engines: {node: '>=6.14.2'} + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + cacheable-lookup@5.0.4: + resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} + engines: {node: '>=10.6.0'} + + cacheable-lookup@6.1.0: + resolution: {integrity: sha512-KJ/Dmo1lDDhmW2XDPMo+9oiy/CeqosPguPCrgcVzKyZrL6pM1gU2GmPY/xo6OQPTUaA/c0kwHuywB4E6nmT9ww==} + engines: {node: '>=10.6.0'} + + cacheable-request@7.0.4: + resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==} + engines: {node: '>=8'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + caseless@0.12.0: + resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} + + chai@4.5.0: + resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + chownr@1.1.4: + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + + cids@0.7.5: + resolution: {integrity: sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==} + engines: {node: '>=4.0.0', npm: '>=3.0.0'} + deprecated: This module has been superseded by the multiformats module + + cipher-base@1.0.7: + resolution: {integrity: sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==} + engines: {node: '>= 0.10'} + + class-is@1.1.0: + resolution: {integrity: sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==} + + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + + clone-response@1.0.3: + resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + content-disposition@0.5.4: + resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} + engines: {node: '>= 0.6'} + + content-hash@2.5.2: + resolution: {integrity: sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==} + + content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} + engines: {node: '>= 0.6'} + + cookie-signature@1.0.7: + resolution: {integrity: sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==} + + cookie@0.7.2: + resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} + engines: {node: '>= 0.6'} + + core-util-is@1.0.2: + resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} + + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + cors@2.8.6: + resolution: {integrity: sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==} + engines: {node: '>= 0.10'} + + crc-32@1.2.2: + resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} + engines: {node: '>=0.8'} + hasBin: true + + create-hash@1.2.0: + resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} + + create-hmac@1.1.7: + resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} + + cross-fetch@4.1.0: + resolution: {integrity: sha512-uKm5PU+MHTootlWEY+mZ4vvXoCn4fLQxT9dSc1sXVMSFkINTJVN8cAQROpwcKm8bJ/c7rgZVIBWzH5T78sNZZw==} + + d@1.0.2: + resolution: {integrity: sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==} + engines: {node: '>=0.12'} + + dashdash@1.14.1: + resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} + engines: {node: '>=0.10'} + + debug@2.6.9: + resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decamelize@4.0.0: + resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} + engines: {node: '>=10'} + + decode-uri-component@0.2.2: + resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} + engines: {node: '>=0.10'} + + decompress-response@3.3.0: + resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} + engines: {node: '>=4'} + + decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} + + deep-eql@4.1.4: + resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} + engines: {node: '>=6'} + + defer-to-connect@2.0.1: + resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} + engines: {node: '>=10'} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + + destroy@1.2.0: + resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + + diff@5.2.2: + resolution: {integrity: sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A==} + engines: {node: '>=0.3.1'} + + dom-walk@0.1.2: + resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + ecc-jsbn@0.1.2: + resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} + + ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + + elliptic@6.6.1: + resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + encodeurl@2.0.0: + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} + engines: {node: '>= 0.8'} + + end-of-stream@1.4.5: + resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es5-ext@0.10.64: + resolution: {integrity: sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==} + engines: {node: '>=0.10'} + + es6-iterator@2.0.3: + resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} + + es6-promise@4.2.8: + resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==} + + es6-symbol@3.1.4: + resolution: {integrity: sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==} + engines: {node: '>=0.12'} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + esniff@2.0.1: + resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==} + engines: {node: '>=0.10'} + + etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} + engines: {node: '>= 0.6'} + + eth-ens-namehash@2.0.8: + resolution: {integrity: sha512-VWEI1+KJfz4Km//dadyvBBoBeSQ0MHTXPvr8UIXiLW6IanxvAV+DmlZAijZwAyggqGUfwQBeHf7tc9wzc1piSw==} + + eth-lib@0.1.29: + resolution: {integrity: sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==} + + eth-lib@0.2.8: + resolution: {integrity: sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==} + + ethereum-bloom-filters@1.2.0: + resolution: {integrity: sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA==} + + ethereum-cryptography@0.1.3: + resolution: {integrity: sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==} + + ethereum-cryptography@2.2.1: + resolution: {integrity: sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==} + + ethereumjs-util@7.1.5: + resolution: {integrity: sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==} + engines: {node: '>=10.0.0'} + + ethjs-unit@0.1.6: + resolution: {integrity: sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==} + engines: {node: '>=6.5.0', npm: '>=3'} + + event-emitter@0.3.5: + resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} + + eventemitter3@4.0.4: + resolution: {integrity: sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==} + + evp_bytestokey@1.0.3: + resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} + + express@4.22.1: + resolution: {integrity: sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g==} + engines: {node: '>= 0.10.0'} + + ext@1.7.0: + resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + + extsprintf@1.3.0: + resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} + engines: {'0': node >=0.6.0} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + finalhandler@1.3.2: + resolution: {integrity: sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==} + engines: {node: '>= 0.8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + forever-agent@0.6.1: + resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} + + form-data-encoder@1.7.1: + resolution: {integrity: sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==} + + form-data@2.3.3: + resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} + engines: {node: '>= 0.12'} + + forwarded@0.2.0: + resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} + engines: {node: '>= 0.6'} + + fresh@0.5.2: + resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} + engines: {node: '>= 0.6'} + + fs-extra@4.0.3: + resolution: {integrity: sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==} + + fs-minipass@1.2.7: + resolution: {integrity: sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-stream@5.2.0: + resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} + engines: {node: '>=8'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + getpass@0.1.7: + resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob@8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + global@4.4.0: + resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + got@11.8.6: + resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} + engines: {node: '>=10.19.0'} + + got@12.1.0: + resolution: {integrity: sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==} + engines: {node: '>=14.16'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + har-schema@2.0.0: + resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==} + engines: {node: '>=4'} + + har-validator@5.1.5: + resolution: {integrity: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==} + engines: {node: '>=6'} + deprecated: this library is no longer supported + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hash-base@3.1.2: + resolution: {integrity: sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==} + engines: {node: '>= 0.8'} + + hash.js@1.1.7: + resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + hmac-drbg@1.0.1: + resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} + + http-cache-semantics@4.2.0: + resolution: {integrity: sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==} + + http-errors@2.0.1: + resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==} + engines: {node: '>= 0.8'} + + http-https@1.0.0: + resolution: {integrity: sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==} + + http-signature@1.2.0: + resolution: {integrity: sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==} + engines: {node: '>=0.8', npm: '>=1.3.7'} + + http2-wrapper@1.0.3: + resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} + engines: {node: '>=10.19.0'} + + http2-wrapper@2.2.1: + resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==} + engines: {node: '>=10.19.0'} + + iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + + idna-uts46-hx@2.3.1: + resolution: {integrity: sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==} + engines: {node: '>=4.0.0'} + + ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + ipaddr.js@1.9.1: + resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} + engines: {node: '>= 0.10'} + + is-arguments@1.2.0: + resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==} + engines: {node: '>= 0.4'} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-function@1.0.2: + resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==} + + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-hex-prefixed@1.0.0: + resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==} + engines: {node: '>=6.5.0', npm: '>=3'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-typedarray@1.0.0: + resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isstream@0.1.2: + resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} + + js-sha3@0.5.7: + resolution: {integrity: sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==} + + js-sha3@0.8.0: + resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + jsbn@0.1.1: + resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-schema@0.4.0: + resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + + json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + + jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + + jsprim@1.4.2: + resolution: {integrity: sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==} + engines: {node: '>=0.6.0'} + + keccak@3.0.4: + resolution: {integrity: sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==} + engines: {node: '>=10.0.0'} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + + lowercase-keys@2.0.0: + resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} + engines: {node: '>=8'} + + lowercase-keys@3.0.0: + resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + md5.js@1.3.5: + resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} + + media-typer@0.3.0: + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} + engines: {node: '>= 0.6'} + + merge-descriptors@1.0.3: + resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} + + methods@1.1.2: + resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} + engines: {node: '>= 0.6'} + + micro-ftch@0.3.1: + resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mime@1.6.0: + resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} + engines: {node: '>=4'} + hasBin: true + + mimic-response@1.0.1: + resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} + engines: {node: '>=4'} + + mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + + min-document@2.19.2: + resolution: {integrity: sha512-8S5I8db/uZN8r9HSLFVWPdJCvYOejMcEC82VIzNUc6Zkklf/d1gg2psfE79/vyhWOj4+J8MtwmoOz3TmvaGu5A==} + + minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + + minimalistic-crypto-utils@1.0.1: + resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + + minimatch@5.1.9: + resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} + engines: {node: '>=10'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + minipass@2.9.0: + resolution: {integrity: sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==} + + minizlib@1.3.3: + resolution: {integrity: sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==} + + mkdirp-promise@5.0.1: + resolution: {integrity: sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w==} + engines: {node: '>=4'} + deprecated: This package is broken and no longer maintained. 'mkdirp' itself supports promises now, please switch to that. + + mkdirp@0.5.6: + resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + hasBin: true + + mkdirp@3.0.1: + resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} + engines: {node: '>=10'} + hasBin: true + + mocha@10.8.2: + resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==} + engines: {node: '>= 14.0.0'} + hasBin: true + + mock-fs@4.14.0: + resolution: {integrity: sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==} + + ms@2.0.0: + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + multibase@0.6.1: + resolution: {integrity: sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==} + deprecated: This module has been superseded by the multiformats module + + multibase@0.7.0: + resolution: {integrity: sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==} + deprecated: This module has been superseded by the multiformats module + + multicodec@0.5.7: + resolution: {integrity: sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==} + deprecated: This module has been superseded by the multiformats module + + multicodec@1.0.4: + resolution: {integrity: sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==} + deprecated: This module has been superseded by the multiformats module + + multihashes@0.4.21: + resolution: {integrity: sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==} + + nano-json-stream-parser@0.1.2: + resolution: {integrity: sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew==} + + negotiator@0.6.3: + resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} + engines: {node: '>= 0.6'} + + next-tick@1.1.0: + resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} + + node-addon-api@2.0.2: + resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + + node-addon-api@5.1.0: + resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} + + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + node-gyp-build@4.8.4: + resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} + hasBin: true + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + normalize-url@6.1.0: + resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} + engines: {node: '>=10'} + + number-to-bn@1.7.0: + resolution: {integrity: sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==} + engines: {node: '>=6.5.0', npm: '>=3'} + + oauth-sign@0.9.0: + resolution: {integrity: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + oboe@2.1.5: + resolution: {integrity: sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==} + + on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} + engines: {node: '>= 0.8'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + p-cancelable@2.1.1: + resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} + engines: {node: '>=8'} + + p-cancelable@3.0.0: + resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==} + engines: {node: '>=12.20'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + parse-headers@2.0.6: + resolution: {integrity: sha512-Tz11t3uKztEW5FEVZnj1ox8GKblWn+PvHY9TmJV5Mll2uHEwRdR/5Li1OlXoECjLYkApdhWy44ocONwXLiKO5A==} + + parseurl@1.3.3: + resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} + engines: {node: '>= 0.8'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-to-regexp@0.1.12: + resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==} + + pathval@1.1.1: + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + + pbkdf2@3.1.5: + resolution: {integrity: sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ==} + engines: {node: '>= 0.10'} + + performance-now@2.1.0: + resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + + process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + + proxy-addr@2.0.7: + resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} + engines: {node: '>= 0.10'} + + psl@1.15.0: + resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} + + pump@3.0.3: + resolution: {integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==} + + punycode@2.1.0: + resolution: {integrity: sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==} + engines: {node: '>=6'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + qs@6.14.2: + resolution: {integrity: sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q==} + engines: {node: '>=0.6'} + + qs@6.5.5: + resolution: {integrity: sha512-mzR4sElr1bfCaPJe7m8ilJ6ZXdDaGoObcYR0ZHSsktM/Lt21MVHj5De30GQH2eiZ1qGRTO7LCAzQsUeXTNexWQ==} + engines: {node: '>=0.6'} + + query-string@5.1.1: + resolution: {integrity: sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==} + engines: {node: '>=0.10.0'} + + quick-lru@5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + + randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + + range-parser@1.2.1: + resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} + engines: {node: '>= 0.6'} + + raw-body@2.5.3: + resolution: {integrity: sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==} + engines: {node: '>= 0.8'} + + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + request@2.88.2: + resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==} + engines: {node: '>= 6'} + deprecated: request has been deprecated, see https://github.com/request/request/issues/3142 + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + resolve-alpn@1.2.1: + resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} + + responselike@2.0.1: + resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} + + ripemd160@2.0.3: + resolution: {integrity: sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==} + engines: {node: '>= 0.8'} + + rlp@2.2.7: + resolution: {integrity: sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==} + hasBin: true + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + scrypt-js@3.0.1: + resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==} + + secp256k1@4.0.4: + resolution: {integrity: sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==} + engines: {node: '>=18.0.0'} + + send@0.19.2: + resolution: {integrity: sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==} + engines: {node: '>= 0.8.0'} + + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + + serve-static@1.16.3: + resolution: {integrity: sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==} + engines: {node: '>= 0.8.0'} + + servify@0.1.12: + resolution: {integrity: sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==} + engines: {node: '>=6'} + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + + sha.js@2.4.12: + resolution: {integrity: sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==} + engines: {node: '>= 0.10'} + hasBin: true + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + simple-concat@1.0.1: + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} + + simple-get@2.8.2: + resolution: {integrity: sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==} + + sshpk@1.18.0: + resolution: {integrity: sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==} + engines: {node: '>=0.10.0'} + hasBin: true + + statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + + strict-uri-encode@1.1.0: + resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==} + engines: {node: '>=0.10.0'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-hex-prefix@1.0.0: + resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==} + engines: {node: '>=6.5.0', npm: '>=3'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + swarm-js@0.1.42: + resolution: {integrity: sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==} + + tar@4.4.19: + resolution: {integrity: sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==} + engines: {node: '>=4.5'} + deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + timed-out@4.0.1: + resolution: {integrity: sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==} + engines: {node: '>=0.10.0'} + + to-buffer@1.2.2: + resolution: {integrity: sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==} + engines: {node: '>= 0.4'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + tough-cookie@2.5.0: + resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==} + engines: {node: '>=0.8'} + + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + + tunnel-agent@0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + + tweetnacl@0.14.5: + resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==} + + type-detect@4.1.0: + resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} + engines: {node: '>=4'} + + type-is@1.6.18: + resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} + engines: {node: '>= 0.6'} + + type@2.7.3: + resolution: {integrity: sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typedarray-to-buffer@3.1.5: + resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} + + ultron@1.1.1: + resolution: {integrity: sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==} + + undici-types@7.18.2: + resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} + + universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + url-set-query@1.0.0: + resolution: {integrity: sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==} + + utf-8-validate@5.0.10: + resolution: {integrity: sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==} + engines: {node: '>=6.14.2'} + + utf8@3.0.0: + resolution: {integrity: sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + util@0.12.5: + resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} + + utils-merge@1.0.1: + resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} + engines: {node: '>= 0.4.0'} + + uuid@3.4.0: + resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} + deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. + hasBin: true + + uuid@9.0.1: + resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} + hasBin: true + + varint@5.0.2: + resolution: {integrity: sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==} + + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + + verror@1.10.0: + resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==} + engines: {'0': node >=0.6.0} + + web3-bzz@1.10.4: + resolution: {integrity: sha512-ZZ/X4sJ0Uh2teU9lAGNS8EjveEppoHNQiKlOXAjedsrdWuaMErBPdLQjXfcrYvN6WM6Su9PMsAxf3FXXZ+HwQw==} + engines: {node: '>=8.0.0'} + + web3-core-helpers@1.10.4: + resolution: {integrity: sha512-r+L5ylA17JlD1vwS8rjhWr0qg7zVoVMDvWhajWA5r5+USdh91jRUYosp19Kd1m2vE034v7Dfqe1xYRoH2zvG0g==} + engines: {node: '>=8.0.0'} + + web3-core-method@1.10.4: + resolution: {integrity: sha512-uZTb7flr+Xl6LaDsyTeE2L1TylokCJwTDrIVfIfnrGmnwLc6bmTWCCrm71sSrQ0hqs6vp/MKbQYIYqUN0J8WyA==} + engines: {node: '>=8.0.0'} + + web3-core-promievent@1.10.4: + resolution: {integrity: sha512-2de5WnJQ72YcIhYwV/jHLc4/cWJnznuoGTJGD29ncFQHAfwW/MItHFSVKPPA5v8AhJe+r6y4Y12EKvZKjQVBvQ==} + engines: {node: '>=8.0.0'} + + web3-core-requestmanager@1.10.4: + resolution: {integrity: sha512-vqP6pKH8RrhT/2MoaU+DY/OsYK9h7HmEBNCdoMj+4ZwujQtw/Mq2JifjwsJ7gits7Q+HWJwx8q6WmQoVZAWugg==} + engines: {node: '>=8.0.0'} + + web3-core-subscriptions@1.10.4: + resolution: {integrity: sha512-o0lSQo/N/f7/L76C0HV63+S54loXiE9fUPfHFcTtpJRQNDBVsSDdWRdePbWwR206XlsBqD5VHApck1//jEafTw==} + engines: {node: '>=8.0.0'} + + web3-core@1.10.4: + resolution: {integrity: sha512-B6elffYm81MYZDTrat7aEhnhdtVE3lDBUZft16Z8awYMZYJDbnykEbJVS+l3mnA7AQTnSDr/1MjWofGDLBJPww==} + engines: {node: '>=8.0.0'} + + web3-eth-abi@1.10.4: + resolution: {integrity: sha512-cZ0q65eJIkd/jyOlQPDjr8X4fU6CRL1eWgdLwbWEpo++MPU/2P4PFk5ZLAdye9T5Sdp+MomePPJ/gHjLMj2VfQ==} + engines: {node: '>=8.0.0'} + + web3-eth-accounts@1.10.4: + resolution: {integrity: sha512-ysy5sVTg9snYS7tJjxVoQAH6DTOTkRGR8emEVCWNGLGiB9txj+qDvSeT0izjurS/g7D5xlMAgrEHLK1Vi6I3yg==} + engines: {node: '>=8.0.0'} + + web3-eth-contract@1.10.4: + resolution: {integrity: sha512-Q8PfolOJ4eV9TvnTj1TGdZ4RarpSLmHnUnzVxZ/6/NiTfe4maJz99R0ISgwZkntLhLRtw0C7LRJuklzGYCNN3A==} + engines: {node: '>=8.0.0'} + + web3-eth-ens@1.10.4: + resolution: {integrity: sha512-LLrvxuFeVooRVZ9e5T6OWKVflHPFgrVjJ/jtisRWcmI7KN/b64+D/wJzXqgmp6CNsMQcE7rpmf4CQmJCrTdsgg==} + engines: {node: '>=8.0.0'} + + web3-eth-iban@1.10.4: + resolution: {integrity: sha512-0gE5iNmOkmtBmbKH2aTodeompnNE8jEyvwFJ6s/AF6jkw9ky9Op9cqfzS56AYAbrqEFuClsqB/AoRves7LDELw==} + engines: {node: '>=8.0.0'} + + web3-eth-personal@1.10.4: + resolution: {integrity: sha512-BRa/hs6jU1hKHz+AC/YkM71RP3f0Yci1dPk4paOic53R4ZZG4MgwKRkJhgt3/GPuPliwS46f/i5A7fEGBT4F9w==} + engines: {node: '>=8.0.0'} + + web3-eth@1.10.4: + resolution: {integrity: sha512-Sql2kYKmgt+T/cgvg7b9ce24uLS7xbFrxE4kuuor1zSCGrjhTJ5rRNG8gTJUkAJGKJc7KgnWmgW+cOfMBPUDSA==} + engines: {node: '>=8.0.0'} + + web3-net@1.10.4: + resolution: {integrity: sha512-mKINnhOOnZ4koA+yV2OT5s5ztVjIx7IY9a03w6s+yao/BUn+Luuty0/keNemZxTr1E8Ehvtn28vbOtW7Ids+Ow==} + engines: {node: '>=8.0.0'} + + web3-providers-http@1.10.4: + resolution: {integrity: sha512-m2P5Idc8hdiO0l60O6DSCPw0kw64Zgi0pMjbEFRmxKIck2Py57RQMu4bxvkxJwkF06SlGaEQF8rFZBmuX7aagQ==} + engines: {node: '>=8.0.0'} + + web3-providers-ipc@1.10.4: + resolution: {integrity: sha512-YRF/bpQk9z3WwjT+A6FI/GmWRCASgd+gC0si7f9zbBWLXjwzYAKG73bQBaFRAHex1hl4CVcM5WUMaQXf3Opeuw==} + engines: {node: '>=8.0.0'} + + web3-providers-ws@1.10.4: + resolution: {integrity: sha512-j3FBMifyuFFmUIPVQR4pj+t5ILhAexAui0opgcpu9R5LxQrLRUZxHSnU+YO25UycSOa/NAX8A+qkqZNpcFAlxA==} + engines: {node: '>=8.0.0'} + + web3-shh@1.10.4: + resolution: {integrity: sha512-cOH6iFFM71lCNwSQrC3niqDXagMqrdfFW85hC9PFUrAr3PUrIem8TNstTc3xna2bwZeWG6OBy99xSIhBvyIACw==} + engines: {node: '>=8.0.0'} + + web3-utils@1.10.4: + resolution: {integrity: sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A==} + engines: {node: '>=8.0.0'} + + web3@1.10.4: + resolution: {integrity: sha512-kgJvQZjkmjOEKimx/tJQsqWfRDPTTcBfYPa9XletxuHLpHcXdx67w8EFn5AW3eVxCutE9dTVHgGa9VYe8vgsEA==} + engines: {node: '>=8.0.0'} + + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + + websocket@1.0.35: + resolution: {integrity: sha512-/REy6amwPZl44DDzvRCkaI1q1bIiQB0mEFQLUrhz3z2EK91cp3n72rAjUlrTP0zV22HJIUOVHQGPxhFRjxjt+Q==} + engines: {node: '>=4.0.0'} + + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + + which-typed-array@1.1.20: + resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==} + engines: {node: '>= 0.4'} + + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@3.3.3: + resolution: {integrity: sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + xhr-request-promise@0.1.3: + resolution: {integrity: sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==} + + xhr-request@1.1.0: + resolution: {integrity: sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==} + + xhr@2.6.0: + resolution: {integrity: sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==} + + xtend@4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yaeti@0.0.6: + resolution: {integrity: sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==} + engines: {node: '>=0.10.32'} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + + yargs-unparser@2.0.0: + resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} + engines: {node: '>=10'} + + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@ethereumjs/common@2.6.5': + dependencies: + crc-32: 1.2.2 + ethereumjs-util: 7.1.5 + + '@ethereumjs/rlp@4.0.1': {} + + '@ethereumjs/tx@3.5.2': + dependencies: + '@ethereumjs/common': 2.6.5 + ethereumjs-util: 7.1.5 + + '@ethereumjs/util@8.1.0': + dependencies: + '@ethereumjs/rlp': 4.0.1 + ethereum-cryptography: 2.2.1 + micro-ftch: 0.3.1 + + '@ethersproject/abi@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/abstract-provider@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 + + '@ethersproject/abstract-signer@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + + '@ethersproject/address@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/rlp': 5.8.0 + + '@ethersproject/base64@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + + '@ethersproject/bignumber@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + bn.js: 5.2.3 + + '@ethersproject/bytes@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/constants@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + + '@ethersproject/hash@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/keccak256@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + js-sha3: 0.8.0 + + '@ethersproject/logger@5.8.0': {} + + '@ethersproject/networks@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/properties@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/rlp@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/signing-key@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + bn.js: 5.2.3 + elliptic: 6.6.1 + hash.js: 1.1.7 + + '@ethersproject/strings@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/transactions@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + + '@ethersproject/web@5.8.0': + dependencies: + '@ethersproject/base64': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@noble/curves@1.4.2': + dependencies: + '@noble/hashes': 1.4.0 + + '@noble/hashes@1.4.0': {} + + '@noble/hashes@1.8.0': {} + + '@scure/base@1.1.9': {} + + '@scure/bip32@1.4.0': + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.3.0': + dependencies: + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@sindresorhus/is@4.6.0': {} + + '@szmarczak/http-timer@4.0.6': + dependencies: + defer-to-connect: 2.0.1 + + '@szmarczak/http-timer@5.0.1': + dependencies: + defer-to-connect: 2.0.1 + + '@types/bn.js@5.2.0': + dependencies: + '@types/node': 12.20.55 + + '@types/cacheable-request@6.0.3': + dependencies: + '@types/http-cache-semantics': 4.2.0 + '@types/keyv': 3.1.4 + '@types/node': 12.20.55 + '@types/responselike': 1.0.3 + + '@types/http-cache-semantics@4.2.0': {} + + '@types/keyv@3.1.4': + dependencies: + '@types/node': 12.20.55 + + '@types/node@12.20.55': {} + + '@types/node@25.3.1': + dependencies: + undici-types: 7.18.2 + + '@types/pbkdf2@3.1.2': + dependencies: + '@types/node': 25.3.1 + + '@types/responselike@1.0.3': + dependencies: + '@types/node': 12.20.55 + + '@types/secp256k1@4.0.7': + dependencies: + '@types/node': 25.3.1 + + abortcontroller-polyfill@1.7.8: {} + + accepts@1.3.8: + dependencies: + mime-types: 2.1.35 + negotiator: 0.6.3 + + ajv@6.14.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ansi-colors@4.1.3: {} + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + argparse@2.0.1: {} + + array-flatten@1.1.1: {} + + asn1@0.2.6: + dependencies: + safer-buffer: 2.1.2 + + assert-plus@1.0.0: {} + + assertion-error@1.1.0: {} + + async-limiter@1.0.1: {} + + asynckit@0.4.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + aws-sign2@0.7.0: {} + + aws4@1.13.2: {} + + balanced-match@1.0.2: {} + + base-x@3.0.11: + dependencies: + safe-buffer: 5.2.1 + + base64-js@1.5.1: {} + + bcrypt-pbkdf@1.0.2: + dependencies: + tweetnacl: 0.14.5 + + bignumber.js@9.3.1: {} + + binary-extensions@2.3.0: {} + + blakejs@1.2.1: {} + + bluebird@3.7.2: {} + + bn.js@4.11.6: {} + + bn.js@4.12.3: {} + + bn.js@5.2.3: {} + + body-parser@1.20.4: + dependencies: + bytes: 3.1.2 + content-type: 1.0.5 + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + http-errors: 2.0.1 + iconv-lite: 0.4.24 + on-finished: 2.4.1 + qs: 6.14.2 + raw-body: 2.5.3 + type-is: 1.6.18 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + brorand@1.1.0: {} + + browser-stdout@1.3.1: {} + + browserify-aes@1.2.0: + dependencies: + buffer-xor: 1.0.3 + cipher-base: 1.0.7 + create-hash: 1.2.0 + evp_bytestokey: 1.0.3 + inherits: 2.0.4 + safe-buffer: 5.2.1 + + bs58@4.0.1: + dependencies: + base-x: 3.0.11 + + bs58check@2.1.2: + dependencies: + bs58: 4.0.1 + create-hash: 1.2.0 + safe-buffer: 5.2.1 + + buffer-to-arraybuffer@0.0.5: {} + + buffer-xor@1.0.3: {} + + buffer@5.7.1: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + bufferutil@4.1.0: + dependencies: + node-gyp-build: 4.8.4 + + bytes@3.1.2: {} + + cacheable-lookup@5.0.4: {} + + cacheable-lookup@6.1.0: {} + + cacheable-request@7.0.4: + dependencies: + clone-response: 1.0.3 + get-stream: 5.2.0 + http-cache-semantics: 4.2.0 + keyv: 4.5.4 + lowercase-keys: 2.0.0 + normalize-url: 6.1.0 + responselike: 2.0.1 + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + camelcase@6.3.0: {} + + caseless@0.12.0: {} + + chai@4.5.0: + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.4 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.1.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + check-error@1.0.3: + dependencies: + get-func-name: 2.0.2 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + chownr@1.1.4: {} + + cids@0.7.5: + dependencies: + buffer: 5.7.1 + class-is: 1.1.0 + multibase: 0.6.1 + multicodec: 1.0.4 + multihashes: 0.4.21 + + cipher-base@1.0.7: + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + class-is@1.1.0: {} + + cliui@7.0.4: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + clone-response@1.0.3: + dependencies: + mimic-response: 1.0.1 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + content-disposition@0.5.4: + dependencies: + safe-buffer: 5.2.1 + + content-hash@2.5.2: + dependencies: + cids: 0.7.5 + multicodec: 0.5.7 + multihashes: 0.4.21 + + content-type@1.0.5: {} + + cookie-signature@1.0.7: {} + + cookie@0.7.2: {} + + core-util-is@1.0.2: {} + + core-util-is@1.0.3: {} + + cors@2.8.6: + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + + crc-32@1.2.2: {} + + create-hash@1.2.0: + dependencies: + cipher-base: 1.0.7 + inherits: 2.0.4 + md5.js: 1.3.5 + ripemd160: 2.0.3 + sha.js: 2.4.12 + + create-hmac@1.1.7: + dependencies: + cipher-base: 1.0.7 + create-hash: 1.2.0 + inherits: 2.0.4 + ripemd160: 2.0.3 + safe-buffer: 5.2.1 + sha.js: 2.4.12 + + cross-fetch@4.1.0: + dependencies: + node-fetch: 2.7.0 + transitivePeerDependencies: + - encoding + + d@1.0.2: + dependencies: + es5-ext: 0.10.64 + type: 2.7.3 + + dashdash@1.14.1: + dependencies: + assert-plus: 1.0.0 + + debug@2.6.9: + dependencies: + ms: 2.0.0 + + debug@4.4.3(supports-color@8.1.1): + dependencies: + ms: 2.1.3 + optionalDependencies: + supports-color: 8.1.1 + + decamelize@4.0.0: {} + + decode-uri-component@0.2.2: {} + + decompress-response@3.3.0: + dependencies: + mimic-response: 1.0.1 + + decompress-response@6.0.0: + dependencies: + mimic-response: 3.1.0 + + deep-eql@4.1.4: + dependencies: + type-detect: 4.1.0 + + defer-to-connect@2.0.1: {} + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + delayed-stream@1.0.0: {} + + depd@2.0.0: {} + + destroy@1.2.0: {} + + diff@5.2.2: {} + + dom-walk@0.1.2: {} + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + ecc-jsbn@0.1.2: + dependencies: + jsbn: 0.1.1 + safer-buffer: 2.1.2 + + ee-first@1.1.1: {} + + elliptic@6.6.1: + dependencies: + bn.js: 4.12.3 + brorand: 1.1.0 + hash.js: 1.1.7 + hmac-drbg: 1.0.1 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + emoji-regex@8.0.0: {} + + encodeurl@2.0.0: {} + + end-of-stream@1.4.5: + dependencies: + once: 1.4.0 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es5-ext@0.10.64: + dependencies: + es6-iterator: 2.0.3 + es6-symbol: 3.1.4 + esniff: 2.0.1 + next-tick: 1.1.0 + + es6-iterator@2.0.3: + dependencies: + d: 1.0.2 + es5-ext: 0.10.64 + es6-symbol: 3.1.4 + + es6-promise@4.2.8: {} + + es6-symbol@3.1.4: + dependencies: + d: 1.0.2 + ext: 1.7.0 + + escalade@3.2.0: {} + + escape-html@1.0.3: {} + + escape-string-regexp@4.0.0: {} + + esniff@2.0.1: + dependencies: + d: 1.0.2 + es5-ext: 0.10.64 + event-emitter: 0.3.5 + type: 2.7.3 + + etag@1.8.1: {} + + eth-ens-namehash@2.0.8: + dependencies: + idna-uts46-hx: 2.3.1 + js-sha3: 0.5.7 + + eth-lib@0.1.29(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + bn.js: 4.12.3 + elliptic: 6.6.1 + nano-json-stream-parser: 0.1.2 + servify: 0.1.12 + ws: 3.3.3(bufferutil@4.1.0)(utf-8-validate@5.0.10) + xhr-request-promise: 0.1.3 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + eth-lib@0.2.8: + dependencies: + bn.js: 4.12.3 + elliptic: 6.6.1 + xhr-request-promise: 0.1.3 + + ethereum-bloom-filters@1.2.0: + dependencies: + '@noble/hashes': 1.8.0 + + ethereum-cryptography@0.1.3: + dependencies: + '@types/pbkdf2': 3.1.2 + '@types/secp256k1': 4.0.7 + blakejs: 1.2.1 + browserify-aes: 1.2.0 + bs58check: 2.1.2 + create-hash: 1.2.0 + create-hmac: 1.1.7 + hash.js: 1.1.7 + keccak: 3.0.4 + pbkdf2: 3.1.5 + randombytes: 2.1.0 + safe-buffer: 5.2.1 + scrypt-js: 3.0.1 + secp256k1: 4.0.4 + setimmediate: 1.0.5 + + ethereum-cryptography@2.2.1: + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/bip32': 1.4.0 + '@scure/bip39': 1.3.0 + + ethereumjs-util@7.1.5: + dependencies: + '@types/bn.js': 5.2.0 + bn.js: 5.2.3 + create-hash: 1.2.0 + ethereum-cryptography: 0.1.3 + rlp: 2.2.7 + + ethjs-unit@0.1.6: + dependencies: + bn.js: 4.11.6 + number-to-bn: 1.7.0 + + event-emitter@0.3.5: + dependencies: + d: 1.0.2 + es5-ext: 0.10.64 + + eventemitter3@4.0.4: {} + + evp_bytestokey@1.0.3: + dependencies: + md5.js: 1.3.5 + safe-buffer: 5.2.1 + + express@4.22.1: + dependencies: + accepts: 1.3.8 + array-flatten: 1.1.1 + body-parser: 1.20.4 + content-disposition: 0.5.4 + content-type: 1.0.5 + cookie: 0.7.2 + cookie-signature: 1.0.7 + debug: 2.6.9 + depd: 2.0.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 1.3.2 + fresh: 0.5.2 + http-errors: 2.0.1 + merge-descriptors: 1.0.3 + methods: 1.1.2 + on-finished: 2.4.1 + parseurl: 1.3.3 + path-to-regexp: 0.1.12 + proxy-addr: 2.0.7 + qs: 6.14.2 + range-parser: 1.2.1 + safe-buffer: 5.2.1 + send: 0.19.2 + serve-static: 1.16.3 + setprototypeof: 1.2.0 + statuses: 2.0.2 + type-is: 1.6.18 + utils-merge: 1.0.1 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + + ext@1.7.0: + dependencies: + type: 2.7.3 + + extend@3.0.2: {} + + extsprintf@1.3.0: {} + + fast-deep-equal@3.1.3: {} + + fast-json-stable-stringify@2.1.0: {} + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + finalhandler@1.3.2: + dependencies: + debug: 2.6.9 + encodeurl: 2.0.0 + escape-html: 1.0.3 + on-finished: 2.4.1 + parseurl: 1.3.3 + statuses: 2.0.2 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat@5.0.2: {} + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + forever-agent@0.6.1: {} + + form-data-encoder@1.7.1: {} + + form-data@2.3.3: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + + forwarded@0.2.0: {} + + fresh@0.5.2: {} + + fs-extra@4.0.3: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs-minipass@1.2.7: + dependencies: + minipass: 2.9.0 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + generator-function@2.0.1: {} + + get-caller-file@2.0.5: {} + + get-func-name@2.0.2: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-stream@5.2.0: + dependencies: + pump: 3.0.3 + + get-stream@6.0.1: {} + + getpass@0.1.7: + dependencies: + assert-plus: 1.0.0 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob@8.1.0: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 5.1.9 + once: 1.4.0 + + global@4.4.0: + dependencies: + min-document: 2.19.2 + process: 0.11.10 + + gopd@1.2.0: {} + + got@11.8.6: + dependencies: + '@sindresorhus/is': 4.6.0 + '@szmarczak/http-timer': 4.0.6 + '@types/cacheable-request': 6.0.3 + '@types/responselike': 1.0.3 + cacheable-lookup: 5.0.4 + cacheable-request: 7.0.4 + decompress-response: 6.0.0 + http2-wrapper: 1.0.3 + lowercase-keys: 2.0.0 + p-cancelable: 2.1.1 + responselike: 2.0.1 + + got@12.1.0: + dependencies: + '@sindresorhus/is': 4.6.0 + '@szmarczak/http-timer': 5.0.1 + '@types/cacheable-request': 6.0.3 + '@types/responselike': 1.0.3 + cacheable-lookup: 6.1.0 + cacheable-request: 7.0.4 + decompress-response: 6.0.0 + form-data-encoder: 1.7.1 + get-stream: 6.0.1 + http2-wrapper: 2.2.1 + lowercase-keys: 3.0.0 + p-cancelable: 3.0.0 + responselike: 2.0.1 + + graceful-fs@4.2.11: {} + + har-schema@2.0.0: {} + + har-validator@5.1.5: + dependencies: + ajv: 6.14.0 + har-schema: 2.0.0 + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hash-base@3.1.2: + dependencies: + inherits: 2.0.4 + readable-stream: 2.3.8 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + hash.js@1.1.7: + dependencies: + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + he@1.2.0: {} + + hmac-drbg@1.0.1: + dependencies: + hash.js: 1.1.7 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + http-cache-semantics@4.2.0: {} + + http-errors@2.0.1: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.2 + toidentifier: 1.0.1 + + http-https@1.0.0: {} + + http-signature@1.2.0: + dependencies: + assert-plus: 1.0.0 + jsprim: 1.4.2 + sshpk: 1.18.0 + + http2-wrapper@1.0.3: + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + + http2-wrapper@2.2.1: + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + + iconv-lite@0.4.24: + dependencies: + safer-buffer: 2.1.2 + + idna-uts46-hx@2.3.1: + dependencies: + punycode: 2.1.0 + + ieee754@1.2.1: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + ipaddr.js@1.9.1: {} + + is-arguments@1.2.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-callable@1.2.7: {} + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-function@1.0.2: {} + + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-hex-prefixed@1.0.0: {} + + is-number@7.0.0: {} + + is-plain-obj@2.1.0: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.20 + + is-typedarray@1.0.0: {} + + is-unicode-supported@0.1.0: {} + + isarray@1.0.0: {} + + isarray@2.0.5: {} + + isstream@0.1.2: {} + + js-sha3@0.5.7: {} + + js-sha3@0.8.0: {} + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + jsbn@0.1.1: {} + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-schema@0.4.0: {} + + json-stringify-safe@5.0.1: {} + + jsonfile@4.0.0: + optionalDependencies: + graceful-fs: 4.2.11 + + jsprim@1.4.2: + dependencies: + assert-plus: 1.0.0 + extsprintf: 1.3.0 + json-schema: 0.4.0 + verror: 1.10.0 + + keccak@3.0.4: + dependencies: + node-addon-api: 2.0.2 + node-gyp-build: 4.8.4 + readable-stream: 3.6.2 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + loupe@2.3.7: + dependencies: + get-func-name: 2.0.2 + + lowercase-keys@2.0.0: {} + + lowercase-keys@3.0.0: {} + + math-intrinsics@1.1.0: {} + + md5.js@1.3.5: + dependencies: + hash-base: 3.1.2 + inherits: 2.0.4 + safe-buffer: 5.2.1 + + media-typer@0.3.0: {} + + merge-descriptors@1.0.3: {} + + methods@1.1.2: {} + + micro-ftch@0.3.1: {} + + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + mime@1.6.0: {} + + mimic-response@1.0.1: {} + + mimic-response@3.1.0: {} + + min-document@2.19.2: + dependencies: + dom-walk: 0.1.2 + + minimalistic-assert@1.0.1: {} + + minimalistic-crypto-utils@1.0.1: {} + + minimatch@5.1.9: + dependencies: + brace-expansion: 2.0.2 + + minimist@1.2.8: {} + + minipass@2.9.0: + dependencies: + safe-buffer: 5.2.1 + yallist: 3.1.1 + + minizlib@1.3.3: + dependencies: + minipass: 2.9.0 + + mkdirp-promise@5.0.1: + dependencies: + mkdirp: 3.0.1 + + mkdirp@0.5.6: + dependencies: + minimist: 1.2.8 + + mkdirp@3.0.1: {} + + mocha@10.8.2: + dependencies: + ansi-colors: 4.1.3 + browser-stdout: 1.3.1 + chokidar: 3.6.0 + debug: 4.4.3(supports-color@8.1.1) + diff: 5.2.2 + escape-string-regexp: 4.0.0 + find-up: 5.0.0 + glob: 8.1.0 + he: 1.2.0 + js-yaml: 4.1.1 + log-symbols: 4.1.0 + minimatch: 5.1.9 + ms: 2.1.3 + serialize-javascript: 6.0.2 + strip-json-comments: 3.1.1 + supports-color: 8.1.1 + workerpool: 6.5.1 + yargs: 16.2.0 + yargs-parser: 20.2.9 + yargs-unparser: 2.0.0 + + mock-fs@4.14.0: {} + + ms@2.0.0: {} + + ms@2.1.3: {} + + multibase@0.6.1: + dependencies: + base-x: 3.0.11 + buffer: 5.7.1 + + multibase@0.7.0: + dependencies: + base-x: 3.0.11 + buffer: 5.7.1 + + multicodec@0.5.7: + dependencies: + varint: 5.0.2 + + multicodec@1.0.4: + dependencies: + buffer: 5.7.1 + varint: 5.0.2 + + multihashes@0.4.21: + dependencies: + buffer: 5.7.1 + multibase: 0.7.0 + varint: 5.0.2 + + nano-json-stream-parser@0.1.2: {} + + negotiator@0.6.3: {} + + next-tick@1.1.0: {} + + node-addon-api@2.0.2: {} + + node-addon-api@5.1.0: {} + + node-fetch@2.7.0: + dependencies: + whatwg-url: 5.0.0 + + node-gyp-build@4.8.4: {} + + normalize-path@3.0.0: {} + + normalize-url@6.1.0: {} + + number-to-bn@1.7.0: + dependencies: + bn.js: 4.11.6 + strip-hex-prefix: 1.0.0 + + oauth-sign@0.9.0: {} + + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + oboe@2.1.5: + dependencies: + http-https: 1.0.0 + + on-finished@2.4.1: + dependencies: + ee-first: 1.1.1 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + p-cancelable@2.1.1: {} + + p-cancelable@3.0.0: {} + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + parse-headers@2.0.6: {} + + parseurl@1.3.3: {} + + path-exists@4.0.0: {} + + path-to-regexp@0.1.12: {} + + pathval@1.1.1: {} + + pbkdf2@3.1.5: + dependencies: + create-hash: 1.2.0 + create-hmac: 1.1.7 + ripemd160: 2.0.3 + safe-buffer: 5.2.1 + sha.js: 2.4.12 + to-buffer: 1.2.2 + + performance-now@2.1.0: {} + + picomatch@2.3.1: {} + + possible-typed-array-names@1.1.0: {} + + process-nextick-args@2.0.1: {} + + process@0.11.10: {} + + proxy-addr@2.0.7: + dependencies: + forwarded: 0.2.0 + ipaddr.js: 1.9.1 + + psl@1.15.0: + dependencies: + punycode: 2.3.1 + + pump@3.0.3: + dependencies: + end-of-stream: 1.4.5 + once: 1.4.0 + + punycode@2.1.0: {} + + punycode@2.3.1: {} + + qs@6.14.2: + dependencies: + side-channel: 1.1.0 + + qs@6.5.5: {} + + query-string@5.1.1: + dependencies: + decode-uri-component: 0.2.2 + object-assign: 4.1.1 + strict-uri-encode: 1.1.0 + + quick-lru@5.1.1: {} + + randombytes@2.1.0: + dependencies: + safe-buffer: 5.2.1 + + range-parser@1.2.1: {} + + raw-body@2.5.3: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.1 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + + readable-stream@2.3.8: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 1.0.0 + process-nextick-args: 2.0.1 + safe-buffer: 5.1.2 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + request@2.88.2: + dependencies: + aws-sign2: 0.7.0 + aws4: 1.13.2 + caseless: 0.12.0 + combined-stream: 1.0.8 + extend: 3.0.2 + forever-agent: 0.6.1 + form-data: 2.3.3 + har-validator: 5.1.5 + http-signature: 1.2.0 + is-typedarray: 1.0.0 + isstream: 0.1.2 + json-stringify-safe: 5.0.1 + mime-types: 2.1.35 + oauth-sign: 0.9.0 + performance-now: 2.1.0 + qs: 6.5.5 + safe-buffer: 5.2.1 + tough-cookie: 2.5.0 + tunnel-agent: 0.6.0 + uuid: 3.4.0 + + require-directory@2.1.1: {} + + resolve-alpn@1.2.1: {} + + responselike@2.0.1: + dependencies: + lowercase-keys: 2.0.0 + + ripemd160@2.0.3: + dependencies: + hash-base: 3.1.2 + inherits: 2.0.4 + + rlp@2.2.7: + dependencies: + bn.js: 5.2.3 + + safe-buffer@5.1.2: {} + + safe-buffer@5.2.1: {} + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + + safer-buffer@2.1.2: {} + + scrypt-js@3.0.1: {} + + secp256k1@4.0.4: + dependencies: + elliptic: 6.6.1 + node-addon-api: 5.1.0 + node-gyp-build: 4.8.4 + + send@0.19.2: + dependencies: + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 0.5.2 + http-errors: 2.0.1 + mime: 1.6.0 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + + serialize-javascript@6.0.2: + dependencies: + randombytes: 2.1.0 + + serve-static@1.16.3: + dependencies: + encodeurl: 2.0.0 + escape-html: 1.0.3 + parseurl: 1.3.3 + send: 0.19.2 + transitivePeerDependencies: + - supports-color + + servify@0.1.12: + dependencies: + body-parser: 1.20.4 + cors: 2.8.6 + express: 4.22.1 + request: 2.88.2 + xhr: 2.6.0 + transitivePeerDependencies: + - supports-color + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + setimmediate@1.0.5: {} + + setprototypeof@1.2.0: {} + + sha.js@2.4.12: + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + simple-concat@1.0.1: {} + + simple-get@2.8.2: + dependencies: + decompress-response: 3.3.0 + once: 1.4.0 + simple-concat: 1.0.1 + + sshpk@1.18.0: + dependencies: + asn1: 0.2.6 + assert-plus: 1.0.0 + bcrypt-pbkdf: 1.0.2 + dashdash: 1.14.1 + ecc-jsbn: 0.1.2 + getpass: 0.1.7 + jsbn: 0.1.1 + safer-buffer: 2.1.2 + tweetnacl: 0.14.5 + + statuses@2.0.2: {} + + strict-uri-encode@1.1.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string_decoder@1.1.1: + dependencies: + safe-buffer: 5.1.2 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-hex-prefix@1.0.0: + dependencies: + is-hex-prefixed: 1.0.0 + + strip-json-comments@3.1.1: {} + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + swarm-js@0.1.42(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + bluebird: 3.7.2 + buffer: 5.7.1 + eth-lib: 0.1.29(bufferutil@4.1.0)(utf-8-validate@5.0.10) + fs-extra: 4.0.3 + got: 11.8.6 + mime-types: 2.1.35 + mkdirp-promise: 5.0.1 + mock-fs: 4.14.0 + setimmediate: 1.0.5 + tar: 4.4.19 + xhr-request: 1.1.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + tar@4.4.19: + dependencies: + chownr: 1.1.4 + fs-minipass: 1.2.7 + minipass: 2.9.0 + minizlib: 1.3.3 + mkdirp: 0.5.6 + safe-buffer: 5.2.1 + yallist: 3.1.1 + + timed-out@4.0.1: {} + + to-buffer@1.2.2: + dependencies: + isarray: 2.0.5 + safe-buffer: 5.2.1 + typed-array-buffer: 1.0.3 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + toidentifier@1.0.1: {} + + tough-cookie@2.5.0: + dependencies: + psl: 1.15.0 + punycode: 2.3.1 + + tr46@0.0.3: {} + + tunnel-agent@0.6.0: + dependencies: + safe-buffer: 5.2.1 + + tweetnacl@0.14.5: {} + + type-detect@4.1.0: {} + + type-is@1.6.18: + dependencies: + media-typer: 0.3.0 + mime-types: 2.1.35 + + type@2.7.3: {} + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typedarray-to-buffer@3.1.5: + dependencies: + is-typedarray: 1.0.0 + + ultron@1.1.1: {} + + undici-types@7.18.2: {} + + universalify@0.1.2: {} + + unpipe@1.0.0: {} + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + url-set-query@1.0.0: {} + + utf-8-validate@5.0.10: + dependencies: + node-gyp-build: 4.8.4 + + utf8@3.0.0: {} + + util-deprecate@1.0.2: {} + + util@0.12.5: + dependencies: + inherits: 2.0.4 + is-arguments: 1.2.0 + is-generator-function: 1.1.2 + is-typed-array: 1.1.15 + which-typed-array: 1.1.20 + + utils-merge@1.0.1: {} + + uuid@3.4.0: {} + + uuid@9.0.1: {} + + varint@5.0.2: {} + + vary@1.1.2: {} + + verror@1.10.0: + dependencies: + assert-plus: 1.0.0 + core-util-is: 1.0.2 + extsprintf: 1.3.0 + + web3-bzz@1.10.4(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + '@types/node': 12.20.55 + got: 12.1.0 + swarm-js: 0.1.42(bufferutil@4.1.0)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + web3-core-helpers@1.10.4: + dependencies: + web3-eth-iban: 1.10.4 + web3-utils: 1.10.4 + + web3-core-method@1.10.4: + dependencies: + '@ethersproject/transactions': 5.8.0 + web3-core-helpers: 1.10.4 + web3-core-promievent: 1.10.4 + web3-core-subscriptions: 1.10.4 + web3-utils: 1.10.4 + + web3-core-promievent@1.10.4: + dependencies: + eventemitter3: 4.0.4 + + web3-core-requestmanager@1.10.4: + dependencies: + util: 0.12.5 + web3-core-helpers: 1.10.4 + web3-providers-http: 1.10.4 + web3-providers-ipc: 1.10.4 + web3-providers-ws: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-core-subscriptions@1.10.4: + dependencies: + eventemitter3: 4.0.4 + web3-core-helpers: 1.10.4 + + web3-core@1.10.4: + dependencies: + '@types/bn.js': 5.2.0 + '@types/node': 12.20.55 + bignumber.js: 9.3.1 + web3-core-helpers: 1.10.4 + web3-core-method: 1.10.4 + web3-core-requestmanager: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-abi@1.10.4: + dependencies: + '@ethersproject/abi': 5.8.0 + web3-utils: 1.10.4 + + web3-eth-accounts@1.10.4: + dependencies: + '@ethereumjs/common': 2.6.5 + '@ethereumjs/tx': 3.5.2 + '@ethereumjs/util': 8.1.0 + eth-lib: 0.2.8 + scrypt-js: 3.0.1 + uuid: 9.0.1 + web3-core: 1.10.4 + web3-core-helpers: 1.10.4 + web3-core-method: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-contract@1.10.4: + dependencies: + '@types/bn.js': 5.2.0 + web3-core: 1.10.4 + web3-core-helpers: 1.10.4 + web3-core-method: 1.10.4 + web3-core-promievent: 1.10.4 + web3-core-subscriptions: 1.10.4 + web3-eth-abi: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-ens@1.10.4: + dependencies: + content-hash: 2.5.2 + eth-ens-namehash: 2.0.8 + web3-core: 1.10.4 + web3-core-helpers: 1.10.4 + web3-core-promievent: 1.10.4 + web3-eth-abi: 1.10.4 + web3-eth-contract: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-iban@1.10.4: + dependencies: + bn.js: 5.2.3 + web3-utils: 1.10.4 + + web3-eth-personal@1.10.4: + dependencies: + '@types/node': 12.20.55 + web3-core: 1.10.4 + web3-core-helpers: 1.10.4 + web3-core-method: 1.10.4 + web3-net: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth@1.10.4: + dependencies: + web3-core: 1.10.4 + web3-core-helpers: 1.10.4 + web3-core-method: 1.10.4 + web3-core-subscriptions: 1.10.4 + web3-eth-abi: 1.10.4 + web3-eth-accounts: 1.10.4 + web3-eth-contract: 1.10.4 + web3-eth-ens: 1.10.4 + web3-eth-iban: 1.10.4 + web3-eth-personal: 1.10.4 + web3-net: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-net@1.10.4: + dependencies: + web3-core: 1.10.4 + web3-core-method: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-providers-http@1.10.4: + dependencies: + abortcontroller-polyfill: 1.7.8 + cross-fetch: 4.1.0 + es6-promise: 4.2.8 + web3-core-helpers: 1.10.4 + transitivePeerDependencies: + - encoding + + web3-providers-ipc@1.10.4: + dependencies: + oboe: 2.1.5 + web3-core-helpers: 1.10.4 + + web3-providers-ws@1.10.4: + dependencies: + eventemitter3: 4.0.4 + web3-core-helpers: 1.10.4 + websocket: 1.0.35 + transitivePeerDependencies: + - supports-color + + web3-shh@1.10.4: + dependencies: + web3-core: 1.10.4 + web3-core-method: 1.10.4 + web3-core-subscriptions: 1.10.4 + web3-net: 1.10.4 + transitivePeerDependencies: + - encoding + - supports-color + + web3-utils@1.10.4: + dependencies: + '@ethereumjs/util': 8.1.0 + bn.js: 5.2.3 + ethereum-bloom-filters: 1.2.0 + ethereum-cryptography: 2.2.1 + ethjs-unit: 0.1.6 + number-to-bn: 1.7.0 + randombytes: 2.1.0 + utf8: 3.0.0 + + web3@1.10.4(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + web3-bzz: 1.10.4(bufferutil@4.1.0)(utf-8-validate@5.0.10) + web3-core: 1.10.4 + web3-eth: 1.10.4 + web3-eth-personal: 1.10.4 + web3-net: 1.10.4 + web3-shh: 1.10.4 + web3-utils: 1.10.4 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + webidl-conversions@3.0.1: {} + + websocket@1.0.35: + dependencies: + bufferutil: 4.1.0 + debug: 2.6.9 + es5-ext: 0.10.64 + typedarray-to-buffer: 3.1.5 + utf-8-validate: 5.0.10 + yaeti: 0.0.6 + transitivePeerDependencies: + - supports-color + + whatwg-url@5.0.0: + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + + which-typed-array@1.1.20: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + workerpool@6.5.1: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + ws@3.3.3(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + async-limiter: 1.0.1 + safe-buffer: 5.1.2 + ultron: 1.1.1 + optionalDependencies: + bufferutil: 4.1.0 + utf-8-validate: 5.0.10 + + xhr-request-promise@0.1.3: + dependencies: + xhr-request: 1.1.0 + + xhr-request@1.1.0: + dependencies: + buffer-to-arraybuffer: 0.0.5 + object-assign: 4.1.1 + query-string: 5.1.1 + simple-get: 2.8.2 + timed-out: 4.0.1 + url-set-query: 1.0.0 + xhr: 2.6.0 + + xhr@2.6.0: + dependencies: + global: 4.4.0 + is-function: 1.0.2 + parse-headers: 2.0.6 + xtend: 4.0.2 + + xtend@4.0.2: {} + + y18n@5.0.8: {} + + yaeti@0.0.6: {} + + yallist@3.1.1: {} + + yargs-parser@20.2.9: {} + + yargs-unparser@2.0.0: + dependencies: + camelcase: 6.3.0 + decamelize: 4.0.0 + flat: 5.0.2 + is-plain-obj: 2.1.0 + + yargs@16.2.0: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.9 + + yocto-queue@0.1.0: {} diff --git a/tests/solidity/package.json b/tests/solidity/package.json index e08316d03..999f76b4d 100644 --- a/tests/solidity/package.json +++ b/tests/solidity/package.json @@ -4,14 +4,7 @@ "version": "1.0.0", "author": "Aragon Association ", "license": "GPL-3.0-or-later", - "workspaces": { - "packages": [ - "suites/*" - ], - "nohoist": [ - "**/@aragon/contract-helpers-test" - ] - }, + "packageManager": "pnpm@9.15.0", "dependencies": { "truffle": "5.11.5", "yargs": "^18.0.0", @@ -33,6 +26,5 @@ "assert", "describe" ] - }, - "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" + } } diff --git a/tests/solidity/pnpm-lock.yaml b/tests/solidity/pnpm-lock.yaml new file mode 100644 index 000000000..e8588c4e6 --- /dev/null +++ b/tests/solidity/pnpm-lock.yaml @@ -0,0 +1,11436 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + patch-package: + specifier: ^8.0.0 + version: 8.0.1 + truffle: + specifier: 5.11.5 + version: 5.11.5(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + yargs: + specifier: ^18.0.0 + version: 18.0.0 + + suites/basic: + devDependencies: + truffle-assertions: + specifier: ^0.9.2 + version: 0.9.2 + + suites/eip1559: + dependencies: + '@truffle/hdwallet-provider': + specifier: ^1.6.0 + version: 1.7.0(@babel/core@7.29.0)(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + devDependencies: + truffle: + specifier: ^5.4.14 + version: 5.11.5(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + truffle-assertions: + specifier: ^0.9.2 + version: 0.9.2 + + suites/exception: + devDependencies: + truffle-assertions: + specifier: ^0.9.2 + version: 0.9.2 + + suites/opcode: + devDependencies: + truffle-assertions: + specifier: ^0.9.2 + version: 0.9.2 + + suites/precompiles: + dependencies: + ethers: + specifier: ^6.7.0 + version: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + devDependencies: + '@nomicfoundation/hardhat-chai-matchers': + specifier: ^2.0.2 + version: 2.1.0(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(chai@4.5.0)(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-ethers': + specifier: ^3.0.4 + version: 3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-network-helpers': + specifier: ^1.0.8 + version: 1.1.2(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-toolbox': + specifier: ^3.0.0 + version: 3.0.0(ss63mfmoopokpljgyamawaquwa) + '@nomicfoundation/hardhat-verify': + specifier: ^1.1.1 + version: 1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@openzeppelin/contracts': + specifier: ^5.4.0 + version: 5.4.0 + '@openzeppelin/hardhat-upgrades': + specifier: ^2.0.2 + version: 2.5.1(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(@nomicfoundation/hardhat-verify@1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(bufferutil@4.1.0)(encoding@0.1.13)(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + '@typechain/ethers-v6': + specifier: ^0.4.3 + version: 0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3) + '@typechain/hardhat': + specifier: ^8.0.3 + version: 8.0.3(@typechain/ethers-v6@0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3))(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3)) + '@types/chai': + specifier: ^4.3.5 + version: 4.3.20 + '@types/mocha': + specifier: ^10.0.1 + version: 10.0.10 + chai: + specifier: ^4.3.7 + version: 4.5.0 + hardhat: + specifier: ^2.20.0 + version: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + hardhat-gas-reporter: + specifier: ^1.0.9 + version: 1.0.10(bufferutil@4.1.0)(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + solidity-coverage: + specifier: ^0.8.4 + version: 0.8.17(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + ts-node: + specifier: ^10.9.1 + version: 10.9.2(@types/node@25.3.1)(typescript@5.9.3) + typechain: + specifier: ^8.3.1 + version: 8.3.2(typescript@5.9.3) + typescript: + specifier: ^5.1.6 + version: 5.9.3 + + suites/revert_cases: + dependencies: + ethers: + specifier: ^6.7.0 + version: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + devDependencies: + '@nomicfoundation/hardhat-chai-matchers': + specifier: ^2.0.2 + version: 2.1.0(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(chai@4.5.0)(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-ethers': + specifier: ^3.0.4 + version: 3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-network-helpers': + specifier: ^1.0.8 + version: 1.1.2(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-toolbox': + specifier: ^3.0.0 + version: 3.0.0(ss63mfmoopokpljgyamawaquwa) + '@nomicfoundation/hardhat-verify': + specifier: ^1.1.1 + version: 1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@openzeppelin/contracts': + specifier: ^5.4.0 + version: 5.4.0 + '@openzeppelin/hardhat-upgrades': + specifier: ^2.0.2 + version: 2.5.1(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(@nomicfoundation/hardhat-verify@1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(bufferutil@4.1.0)(encoding@0.1.13)(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + '@typechain/ethers-v6': + specifier: ^0.4.3 + version: 0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3) + '@typechain/hardhat': + specifier: ^8.0.3 + version: 8.0.3(@typechain/ethers-v6@0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3))(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3)) + '@types/chai': + specifier: ^4.3.5 + version: 4.3.20 + '@types/mocha': + specifier: ^10.0.1 + version: 10.0.10 + chai: + specifier: ^4.3.7 + version: 4.5.0 + hardhat: + specifier: ^2.20.0 + version: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + hardhat-gas-reporter: + specifier: ^1.0.9 + version: 1.0.10(bufferutil@4.1.0)(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + solidity-coverage: + specifier: ^0.8.4 + version: 0.8.17(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + ts-node: + specifier: ^10.9.1 + version: 10.9.2(@types/node@25.3.1)(typescript@5.9.3) + typechain: + specifier: ^8.3.1 + version: 8.3.2(typescript@5.9.3) + typescript: + specifier: ^5.1.6 + version: 5.9.3 + +packages: + + '@adraffy/ens-normalize@1.10.1': + resolution: {integrity: sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==} + + '@apollo/protobufjs@1.2.6': + resolution: {integrity: sha512-Wqo1oSHNUj/jxmsVp4iR3I480p6qdqHikn38lKrFhfzcDJ7lwd7Ck7cHRl4JE81tWNArl77xhnG/OkZhxKBYOw==} + hasBin: true + + '@apollo/protobufjs@1.2.7': + resolution: {integrity: sha512-Lahx5zntHPZia35myYDBRuF58tlwPskwHc5CWBZC/4bMKB6siTBWwtMrkqXcsNwQiFSzSx5hKdRPUmemrEp3Gg==} + hasBin: true + + '@apollo/usage-reporting-protobuf@4.1.1': + resolution: {integrity: sha512-u40dIUePHaSKVshcedO7Wp+mPiZsaU6xjv9J+VyxpoU/zL6Jle+9zWeG98tr/+SZ0nZ4OXhrbb8SNr0rAPpIDA==} + + '@apollo/utils.dropunuseddefinitions@1.1.0': + resolution: {integrity: sha512-jU1XjMr6ec9pPoL+BFWzEPW7VHHulVdGKMkPAMiCigpVIT11VmCbnij0bWob8uS3ODJ65tZLYKAh/55vLw2rbg==} + engines: {node: '>=12.13.0'} + peerDependencies: + graphql: 14.x || 15.x || 16.x + + '@apollo/utils.keyvaluecache@1.0.2': + resolution: {integrity: sha512-p7PVdLPMnPzmXSQVEsy27cYEjVON+SH/Wb7COyW3rQN8+wJgT1nv9jZouYtztWW8ZgTkii5T6tC9qfoDREd4mg==} + + '@apollo/utils.logger@1.0.1': + resolution: {integrity: sha512-XdlzoY7fYNK4OIcvMD2G94RoFZbzTQaNP0jozmqqMudmaGo2I/2Jx71xlDJ801mWA/mbYRihyaw6KJii7k5RVA==} + + '@apollo/utils.printwithreducedwhitespace@1.1.0': + resolution: {integrity: sha512-GfFSkAv3n1toDZ4V6u2d7L4xMwLA+lv+6hqXicMN9KELSJ9yy9RzuEXaX73c/Ry+GzRsBy/fdSUGayGqdHfT2Q==} + engines: {node: '>=12.13.0'} + peerDependencies: + graphql: 14.x || 15.x || 16.x + + '@apollo/utils.removealiases@1.0.0': + resolution: {integrity: sha512-6cM8sEOJW2LaGjL/0vHV0GtRaSekrPQR4DiywaApQlL9EdROASZU5PsQibe2MWeZCOhNrPRuHh4wDMwPsWTn8A==} + engines: {node: '>=12.13.0'} + peerDependencies: + graphql: 14.x || 15.x || 16.x + + '@apollo/utils.sortast@1.1.0': + resolution: {integrity: sha512-VPlTsmUnOwzPK5yGZENN069y6uUHgeiSlpEhRnLFYwYNoJHsuJq2vXVwIaSmts015WTPa2fpz1inkLYByeuRQA==} + engines: {node: '>=12.13.0'} + peerDependencies: + graphql: 14.x || 15.x || 16.x + + '@apollo/utils.stripsensitiveliterals@1.2.0': + resolution: {integrity: sha512-E41rDUzkz/cdikM5147d8nfCFVKovXxKBcjvLEQ7bjZm/cg9zEcXvS6vFY8ugTubI3fn6zoqo0CyU8zT+BGP9w==} + engines: {node: '>=12.13.0'} + peerDependencies: + graphql: 14.x || 15.x || 16.x + + '@apollo/utils.usagereporting@1.0.1': + resolution: {integrity: sha512-6dk+0hZlnDbahDBB2mP/PZ5ybrtCJdLMbeNJD+TJpKyZmSY6bA3SjI8Cr2EM9QA+AdziywuWg+SgbWUF3/zQqQ==} + engines: {node: '>=12.13.0'} + peerDependencies: + graphql: 14.x || 15.x || 16.x + + '@apollographql/apollo-tools@0.5.4': + resolution: {integrity: sha512-shM3q7rUbNyXVVRkQJQseXv6bnYM3BUma/eZhwXR4xsuM+bqWnJKvW7SAfRjP7LuSCocrexa5AXhjjawNHrIlw==} + engines: {node: '>=8', npm: '>=6'} + peerDependencies: + graphql: ^14.2.1 || ^15.0.0 || ^16.0.0 + + '@apollographql/graphql-playground-html@1.6.29': + resolution: {integrity: sha512-xCcXpoz52rI4ksJSdOCxeOCn2DLocxwHf9dVT/Q90Pte1LX+LY+91SFtJF3KXVHH8kEin+g1KKCQPKBjZJfWNA==} + + '@aws-crypto/sha256-js@1.2.2': + resolution: {integrity: sha512-Nr1QJIbW/afYYGzYvrF70LtaHrIRtd4TNAglX8BvlfxJLZ45SAmueIKYl5tWoNBPzp65ymXGFK0Bb1vZUpuc9g==} + + '@aws-crypto/util@1.2.2': + resolution: {integrity: sha512-H8PjG5WJ4wz0UXAFXeJjWCW1vkvIJ3qUUD+rGRwJ2/hj+xT58Qle2MTql/2MGzkU+1JLAFuR6aJpLAjHwhmwwg==} + + '@aws-sdk/types@3.973.3': + resolution: {integrity: sha512-tma6D8/xHZHJEUqmr6ksZjZ0onyIUqKDQLyp50ttZJmS0IwFYzxBgp5CxFvpYAnah52V3UtgrqGA6E83gtT7NQ==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/util-utf8-browser@3.259.0': + resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==} + + '@babel/code-frame@7.29.0': + resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.29.0': + resolution: {integrity: sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.29.0': + resolution: {integrity: sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.29.1': + resolution: {integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.28.6': + resolution: {integrity: sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-define-polyfill-provider@0.6.6': + resolution: {integrity: sha512-mOAsxeeKkUKayvZR3HeTYD/fICpCPLJrU5ZjelT/PA6WHtNDBOE436YiaEUvHN454bRM3CebhDsIpieCc4texA==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + '@babel/helper-globals@7.28.0': + resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.28.6': + resolution: {integrity: sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.28.6': + resolution: {integrity: sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-plugin-utils@7.28.6': + resolution: {integrity: sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.27.1': + resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.28.6': + resolution: {integrity: sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.29.0': + resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-transform-runtime@7.29.0': + resolution: {integrity: sha512-jlaRT5dJtMaMCV6fAuLbsQMSwz/QkvaHOHOSXRitGGwSpR1blCY4KUKoyP2tYO8vJcqYe8cEj96cqSztv3uF9w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/runtime@7.28.6': + resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.28.6': + resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.29.0': + resolution: {integrity: sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.29.0': + resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} + engines: {node: '>=6.9.0'} + + '@bytecodealliance/preview2-shim@0.17.0': + resolution: {integrity: sha512-JorcEwe4ud0x5BS/Ar2aQWOQoFzjq/7jcnxYXCvSMh0oRm0dQXzOA+hqLDBnOMks1LLBA7dmiLLsEBl09Yd6iQ==} + + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + + '@ensdomains/address-encoder@0.1.9': + resolution: {integrity: sha512-E2d2gP4uxJQnDu2Kfg1tHNspefzbLT8Tyjrm5sEuim32UkU2sm5xL4VXtgc2X33fmPEw9+jUMpGs4veMbf+PYg==} + + '@ensdomains/ens@0.4.5': + resolution: {integrity: sha512-JSvpj1iNMFjK6K+uVl4unqMoa9rf5jopb8cya5UGBWz23Nw8hSNT7efgUx4BTlAPAgpNlEioUfeTyQ6J9ZvTVw==} + deprecated: Please use @ensdomains/ens-contracts + + '@ensdomains/ensjs@2.1.0': + resolution: {integrity: sha512-GRbGPT8Z/OJMDuxs75U/jUNEC0tbL0aj7/L/QQznGYKm/tiasp+ndLOaoULy9kKJFC0TBByqfFliEHDgoLhyog==} + + '@ensdomains/resolver@0.2.4': + resolution: {integrity: sha512-bvaTH34PMCbv6anRa9I/0zjLJgY4EuznbEMgbV77JBCQ9KNC46rzi0avuxpOfu+xDjPEtSFGqVEOr5GlUSGudA==} + deprecated: Please use @ensdomains/ens-contracts + + '@ethereumjs/common@2.5.0': + resolution: {integrity: sha512-DEHjW6e38o+JmB/NO3GZBpW4lpaiBpkFgXF6jLcJ6gETBYpEyaA5nTimsWBUJR3Vmtm/didUEbNjajskugZORg==} + + '@ethereumjs/common@2.6.5': + resolution: {integrity: sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==} + + '@ethereumjs/rlp@4.0.1': + resolution: {integrity: sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==} + engines: {node: '>=14'} + hasBin: true + + '@ethereumjs/rlp@5.0.2': + resolution: {integrity: sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA==} + engines: {node: '>=18'} + hasBin: true + + '@ethereumjs/tx@3.3.2': + resolution: {integrity: sha512-6AaJhwg4ucmwTvw/1qLaZUX5miWrwZ4nLOUsKyb/HtzS3BMw/CasKhdi1ims9mBKeK9sOJCH4qGKOBGyJCeeog==} + + '@ethereumjs/tx@3.5.2': + resolution: {integrity: sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==} + + '@ethereumjs/util@8.1.0': + resolution: {integrity: sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==} + engines: {node: '>=14'} + + '@ethereumjs/util@9.1.0': + resolution: {integrity: sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog==} + engines: {node: '>=18'} + + '@ethersproject/abi@5.8.0': + resolution: {integrity: sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==} + + '@ethersproject/abstract-provider@5.8.0': + resolution: {integrity: sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==} + + '@ethersproject/abstract-signer@5.8.0': + resolution: {integrity: sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==} + + '@ethersproject/address@5.8.0': + resolution: {integrity: sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==} + + '@ethersproject/base64@5.8.0': + resolution: {integrity: sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==} + + '@ethersproject/basex@5.8.0': + resolution: {integrity: sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q==} + + '@ethersproject/bignumber@5.8.0': + resolution: {integrity: sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==} + + '@ethersproject/bytes@5.8.0': + resolution: {integrity: sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==} + + '@ethersproject/constants@5.8.0': + resolution: {integrity: sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==} + + '@ethersproject/contracts@5.8.0': + resolution: {integrity: sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ==} + + '@ethersproject/hash@5.8.0': + resolution: {integrity: sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==} + + '@ethersproject/hdnode@5.8.0': + resolution: {integrity: sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA==} + + '@ethersproject/json-wallets@5.8.0': + resolution: {integrity: sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w==} + + '@ethersproject/keccak256@5.8.0': + resolution: {integrity: sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==} + + '@ethersproject/logger@5.8.0': + resolution: {integrity: sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==} + + '@ethersproject/networks@5.8.0': + resolution: {integrity: sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==} + + '@ethersproject/pbkdf2@5.8.0': + resolution: {integrity: sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg==} + + '@ethersproject/properties@5.8.0': + resolution: {integrity: sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==} + + '@ethersproject/providers@5.8.0': + resolution: {integrity: sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw==} + + '@ethersproject/random@5.8.0': + resolution: {integrity: sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A==} + + '@ethersproject/rlp@5.8.0': + resolution: {integrity: sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==} + + '@ethersproject/sha2@5.8.0': + resolution: {integrity: sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A==} + + '@ethersproject/signing-key@5.8.0': + resolution: {integrity: sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==} + + '@ethersproject/solidity@5.8.0': + resolution: {integrity: sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA==} + + '@ethersproject/strings@5.8.0': + resolution: {integrity: sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==} + + '@ethersproject/transactions@5.8.0': + resolution: {integrity: sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==} + + '@ethersproject/units@5.8.0': + resolution: {integrity: sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ==} + + '@ethersproject/wallet@5.8.0': + resolution: {integrity: sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA==} + + '@ethersproject/web@5.8.0': + resolution: {integrity: sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==} + + '@ethersproject/wordlists@5.8.0': + resolution: {integrity: sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg==} + + '@fastify/busboy@2.1.1': + resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} + engines: {node: '>=14'} + + '@graphql-tools/batch-execute@8.5.1': + resolution: {integrity: sha512-hRVDduX0UDEneVyEWtc2nu5H2PxpfSfM/riUlgZvo/a/nG475uyehxR5cFGvTEPEQUKY3vGIlqvtRigzqTfCew==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/delegate@8.8.1': + resolution: {integrity: sha512-NDcg3GEQmdEHlnF7QS8b4lM1PSF+DKeFcIlLEfZFBvVq84791UtJcDj8734sIHLukmyuAxXMfA1qLd2l4lZqzA==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/merge@8.3.1': + resolution: {integrity: sha512-BMm99mqdNZbEYeTPK3it9r9S6rsZsQKtlqJsSBknAclXq2pGEfOxjcIZi+kBSkHZKPKCRrYDd5vY0+rUmIHVLg==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/merge@8.4.2': + resolution: {integrity: sha512-XbrHAaj8yDuINph+sAfuq3QCZ/tKblrTLOpirK0+CAgNlZUCHs0Fa+xtMUURgwCVThLle1AF7svJCxFizygLsw==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/mock@8.7.20': + resolution: {integrity: sha512-ljcHSJWjC/ZyzpXd5cfNhPI7YljRVvabKHPzKjEs5ElxWu2cdlLGvyNYepApXDsM/OJG/2xuhGM+9GWu5gEAPQ==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/schema@8.5.1': + resolution: {integrity: sha512-0Esilsh0P/qYcB5DKQpiKeQs/jevzIadNTaT0jeWklPMwNbT7yMX4EqZany7mbeRRlSRwMzNzL5olyFdffHBZg==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/schema@9.0.19': + resolution: {integrity: sha512-oBRPoNBtCkk0zbUsyP4GaIzCt8C0aCI4ycIRUL67KK5pOHljKLBBtGT+Jr6hkzA74C8Gco8bpZPe7aWFjiaK2w==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/utils@8.9.0': + resolution: {integrity: sha512-pjJIWH0XOVnYGXCqej8g/u/tsfV4LvLlj0eATKQu5zwnxd/TiTHq7Cg313qUPTFFHZ3PP5wJ15chYVtLDwaymg==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-tools/utils@9.2.1': + resolution: {integrity: sha512-WUw506Ql6xzmOORlriNrD6Ugx+HjVgYxt9KCXD9mHAak+eaXSwuGGPyE60hy9xaDEoXKBsG7SkG69ybitaVl6A==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@graphql-typed-document-node/core@3.2.0': + resolution: {integrity: sha512-mB9oAsNCm9aM3/SOv4YtBMqZbYj10R7dkq8byBqxGY/ncFwhf2oQzMV+LCRlWoDSEBJ3COiR1yeDvMtsoOsuFQ==} + peerDependencies: + graphql: ^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + + '@josephg/resolvable@1.0.1': + resolution: {integrity: sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg==} + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/remapping@2.3.5': + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + + '@noble/curves@1.2.0': + resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} + + '@noble/curves@1.4.2': + resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} + + '@noble/curves@1.8.2': + resolution: {integrity: sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.2.0': + resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==} + + '@noble/hashes@1.3.2': + resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} + engines: {node: '>= 16'} + + '@noble/hashes@1.4.0': + resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} + engines: {node: '>= 16'} + + '@noble/hashes@1.7.2': + resolution: {integrity: sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + + '@noble/secp256k1@1.7.1': + resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.23': + resolution: {integrity: sha512-Amh7mRoDzZyJJ4efqoePqdoZOzharmSOttZuJDlVE5yy07BoE8hL6ZRpa5fNYn0LCqn/KoWs8OHANWxhKDGhvQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.23': + resolution: {integrity: sha512-9wn489FIQm7m0UCD+HhktjWx6vskZzeZD9oDc2k9ZvbBzdXwPp5tiDqUBJ+eQpByAzCDfteAJwRn2lQCE0U+Iw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.23': + resolution: {integrity: sha512-nlk5EejSzEUfEngv0Jkhqq3/wINIfF2ED9wAofc22w/V1DV99ASh9l3/e/MIHOQFecIZ9MDqt0Em9/oDyB1Uew==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.23': + resolution: {integrity: sha512-SJuPBp3Rc6vM92UtVTUxZQ/QlLhLfwTftt2XUiYohmGKB3RjGzpgduEFMCA0LEnucUckU6UHrJNFHiDm77C4PQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.23': + resolution: {integrity: sha512-NU+Qs3u7Qt6t3bJFdmmjd5CsvgI2bPPzO31KifM2Ez96/jsXYho5debtTQnimlb5NAqiHTSlxjh/F8ROcptmeQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.23': + resolution: {integrity: sha512-F78fZA2h6/ssiCSZOovlgIu0dUeI7ItKPsDDF3UUlIibef052GCXmliMinC90jVPbrjUADMd1BUwjfI0Z8OllQ==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.23': + resolution: {integrity: sha512-IfJZQJn7d/YyqhmguBIGoCKjE9dKjbu6V6iNEPApfwf5JyyjHYyyfkLU4rf7hygj57bfH4sl1jtQ6r8HnT62lw==} + engines: {node: '>= 20'} + + '@nomicfoundation/edr@0.12.0-next.23': + resolution: {integrity: sha512-F2/6HZh8Q9RsgkOIkRrckldbhPjIZY7d4mT9LYuW68miwGQ5l7CkAgcz9fRRiurA0+YJhtsbx/EyrD9DmX9BOw==} + engines: {node: '>= 20'} + + '@nomicfoundation/hardhat-chai-matchers@2.1.0': + resolution: {integrity: sha512-GPhBNafh1fCnVD9Y7BYvoLnblnvfcq3j8YDbO1gGe/1nOFWzGmV7gFu5DkwFXF+IpYsS+t96o9qc/mPu3V3Vfw==} + peerDependencies: + '@nomicfoundation/hardhat-ethers': ^3.1.0 + chai: ^4.2.0 + ethers: ^6.14.0 + hardhat: ^2.26.0 + + '@nomicfoundation/hardhat-ethers@3.1.3': + resolution: {integrity: sha512-208JcDeVIl+7Wu3MhFUUtiA8TJ7r2Rn3Wr+lSx9PfsDTKkbsAsWPY6N6wQ4mtzDv0/pB9nIbJhkjoHe1EsgNsA==} + peerDependencies: + ethers: ^6.14.0 + hardhat: ^2.28.0 + + '@nomicfoundation/hardhat-network-helpers@1.1.2': + resolution: {integrity: sha512-p7HaUVDbLj7ikFivQVNhnfMHUBgiHYMwQWvGn9AriieuopGOELIrwj2KjyM2a6z70zai5YKO264Vwz+3UFJZPQ==} + peerDependencies: + hardhat: ^2.26.0 + + '@nomicfoundation/hardhat-toolbox@3.0.0': + resolution: {integrity: sha512-MsteDXd0UagMksqm9KvcFG6gNKYNa3GGNCy73iQ6bEasEgg2v8Qjl6XA5hjs8o5UD5A3153B6W2BIVJ8SxYUtA==} + peerDependencies: + '@nomicfoundation/hardhat-chai-matchers': ^2.0.0 + '@nomicfoundation/hardhat-ethers': ^3.0.0 + '@nomicfoundation/hardhat-network-helpers': ^1.0.0 + '@nomicfoundation/hardhat-verify': ^1.0.0 + '@typechain/ethers-v6': ^0.4.0 + '@typechain/hardhat': ^8.0.0 + '@types/chai': ^4.2.0 + '@types/mocha': '>=9.1.0' + '@types/node': '>=12.0.0' + chai: ^4.2.0 + ethers: ^6.4.0 + hardhat: ^2.11.0 + hardhat-gas-reporter: ^1.0.8 + solidity-coverage: ^0.8.1 + ts-node: '>=8.0.0' + typechain: ^8.2.0 + typescript: '>=4.5.0' + + '@nomicfoundation/hardhat-verify@1.1.1': + resolution: {integrity: sha512-9QsTYD7pcZaQFEA3tBb/D/oCStYDiEVDN7Dxeo/4SCyHRSm86APypxxdOMEPlGmXsAvd+p1j/dTODcpxb8aztA==} + peerDependencies: + hardhat: ^2.0.4 + + '@nomicfoundation/slang@0.18.3': + resolution: {integrity: sha512-YqAWgckqbHM0/CZxi9Nlf4hjk9wUNLC9ngWCWBiqMxPIZmzsVKYuChdlrfeBPQyvQQBoOhbx+7C1005kLVQDZQ==} + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + resolution: {integrity: sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + resolution: {integrity: sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + resolution: {integrity: sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + resolution: {integrity: sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + resolution: {integrity: sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + resolution: {integrity: sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + resolution: {integrity: sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA==} + engines: {node: '>= 12'} + + '@nomicfoundation/solidity-analyzer@0.1.2': + resolution: {integrity: sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA==} + engines: {node: '>= 12'} + + '@openzeppelin/contracts@5.4.0': + resolution: {integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==} + + '@openzeppelin/defender-admin-client@1.54.6': + resolution: {integrity: sha512-P4lxJDySrekWNuPa7FeyW/UmuxnuIXIAGYr5gZnmnMHRsYNaw+XfgkiCDfoGtjEyJbXYxXttYF6iAZhWQPdf1g==} + deprecated: This package has been deprecated and will no longer be maintained, please use @openzeppelin/defender-sdk package instead. + + '@openzeppelin/defender-base-client@1.54.6': + resolution: {integrity: sha512-PTef+rMxkM5VQ7sLwLKSjp2DBakYQd661ZJiSRywx+q/nIpm3B/HYGcz5wPZCA5O/QcEP6TatXXDoeMwimbcnw==} + deprecated: This package has been deprecated and will no longer be maintained, please use @openzeppelin/defender-sdk package instead. + + '@openzeppelin/defender-sdk-base-client@1.15.2': + resolution: {integrity: sha512-N3ZTeH8TXyklL7yNPMLUv0dxQwT78DTkOEDhzMS2/QE2FxbXrclSseoeeXxl6UYI61RBtZKn+okbSsbwiB5QWQ==} + + '@openzeppelin/defender-sdk-deploy-client@1.15.2': + resolution: {integrity: sha512-zspzMqh+OC8arXAkgBqTUDVO+NfCkt54UrsmQHbA3UAjr5TiDXKycBKU5ORb01hE+2gAmoPwEpDW9uS2VLg33A==} + + '@openzeppelin/hardhat-upgrades@2.5.1': + resolution: {integrity: sha512-wRwq9f2PqlfIdNGFApsqRpqptqy98exSFp8SESb6Brgw4L07sExySInNJhscM/tWVSnR1Qnuws9Ck6Fs5zIxvg==} + hasBin: true + peerDependencies: + '@nomicfoundation/hardhat-ethers': ^3.0.0 + '@nomicfoundation/hardhat-verify': ^1.1.0 + ethers: ^6.6.0 + hardhat: ^2.0.2 + peerDependenciesMeta: + '@nomicfoundation/hardhat-verify': + optional: true + + '@openzeppelin/upgrades-core@1.44.2': + resolution: {integrity: sha512-m6iorjyhPK9ow5/trNs7qsBC/SOzJCO51pvvAF2W9nOiZ1t0RtCd+rlRmRmlWTv4M33V0wzIUeamJ2BPbzgUXA==} + hasBin: true + + '@protobufjs/aspromise@1.1.2': + resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} + + '@protobufjs/base64@1.1.2': + resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} + + '@protobufjs/codegen@2.0.4': + resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + + '@protobufjs/eventemitter@1.1.0': + resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + + '@protobufjs/fetch@1.1.0': + resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + + '@protobufjs/float@1.0.2': + resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + + '@protobufjs/inquire@1.1.0': + resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + + '@protobufjs/path@1.1.2': + resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + + '@protobufjs/pool@1.1.0': + resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + + '@protobufjs/utf8@1.1.0': + resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + + '@redux-saga/core@1.4.2': + resolution: {integrity: sha512-nIMLGKo6jV6Wc1sqtVQs1iqbB3Kq20udB/u9XEaZQisT6YZ0NRB8+4L6WqD/E+YziYutd27NJbG8EWUPkb7c6Q==} + + '@redux-saga/deferred@1.3.1': + resolution: {integrity: sha512-0YZ4DUivWojXBqLB/TmuRRpDDz7tyq1I0AuDV7qi01XlLhM5m51W7+xYtIckH5U2cMlv9eAuicsfRAi1XHpXIg==} + + '@redux-saga/delay-p@1.3.1': + resolution: {integrity: sha512-597I7L5MXbD/1i3EmcaOOjL/5suxJD7p5tnbV1PiWnE28c2cYiIHqmSMK2s7us2/UrhOL2KTNBiD0qBg6KnImg==} + + '@redux-saga/is@1.2.1': + resolution: {integrity: sha512-x3aWtX3GmQfEvn8dh0ovPbsXgK9JjpiR24wKztpGbZP8JZUWWvUgKrvnWZ/T/4iphOBftyVc9VrIwhAnsM+OFA==} + + '@redux-saga/symbols@1.2.1': + resolution: {integrity: sha512-3dh+uDvpBXi7EUp/eO+N7eFM4xKaU4yuGBXc50KnZGzIrR/vlvkTFQsX13zsY8PB6sCFYAgROfPSRUj8331QSA==} + + '@redux-saga/types@1.3.1': + resolution: {integrity: sha512-YRCrJdhQLobGIQ8Cj1sta3nn6DrZDTSUnrIYhS2e5V590BmfVDleKoAquclAiKSBKWJwmuXTb+b4BL6rSHnahw==} + + '@scure/base@1.1.9': + resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} + + '@scure/base@1.2.6': + resolution: {integrity: sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==} + + '@scure/bip32@1.1.5': + resolution: {integrity: sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==} + + '@scure/bip32@1.4.0': + resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} + + '@scure/bip39@1.1.1': + resolution: {integrity: sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==} + + '@scure/bip39@1.3.0': + resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} + + '@sentry/core@5.30.0': + resolution: {integrity: sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==} + engines: {node: '>=6'} + + '@sentry/hub@5.30.0': + resolution: {integrity: sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==} + engines: {node: '>=6'} + + '@sentry/minimal@5.30.0': + resolution: {integrity: sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==} + engines: {node: '>=6'} + + '@sentry/node@5.30.0': + resolution: {integrity: sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==} + engines: {node: '>=6'} + + '@sentry/tracing@5.30.0': + resolution: {integrity: sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==} + engines: {node: '>=6'} + + '@sentry/types@5.30.0': + resolution: {integrity: sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==} + engines: {node: '>=6'} + + '@sentry/utils@5.30.0': + resolution: {integrity: sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==} + engines: {node: '>=6'} + + '@sindresorhus/is@4.6.0': + resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} + engines: {node: '>=10'} + + '@smithy/types@4.13.0': + resolution: {integrity: sha512-COuLsZILbbQsdrwKQpkkpyep7lCsByxwj7m0Mg5v66/ZTyenlfBc40/QFQ5chO0YN/PNEH1Bi3fGtfXPnYNeDw==} + engines: {node: '>=18.0.0'} + + '@solidity-parser/parser@0.14.5': + resolution: {integrity: sha512-6dKnHZn7fg/iQATVEzqyUOyEidbn05q7YA2mQ9hC0MMXhhV3/JrsxmFSYZAcr7j1yUP700LLhTruvJ3MiQmjJg==} + + '@solidity-parser/parser@0.20.2': + resolution: {integrity: sha512-rbu0bzwNvMcwAjH86hiEAcOeRI2EeK8zCkHDrFykh/Al8mvJeFmjy3UrE7GYQjNwOgbGUUtCn5/k8CB8zIu7QA==} + + '@szmarczak/http-timer@4.0.6': + resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} + engines: {node: '>=10'} + + '@szmarczak/http-timer@5.0.1': + resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} + engines: {node: '>=14.16'} + + '@truffle/abi-utils@1.0.3': + resolution: {integrity: sha512-AWhs01HCShaVKjml7Z4AbVREr/u4oiWxCcoR7Cktm0mEvtT04pvnxW5xB/cI4znRkrbPdFQlFt67kgrAjesYkw==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/code-utils@3.0.4': + resolution: {integrity: sha512-MWK3TMisIFaBpSjK7tt1GoQan7DQDBqT2iSsdQOGD74C7r9NMwsIdnL2EYoB/DPcEJ7B8yP4grlG2fQTrPF96g==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/codec@0.17.3': + resolution: {integrity: sha512-Ko/+dsnntNyrJa57jUD9u4qx9nQby+H4GsUO6yjiCPSX0TQnEHK08XWqBSg0WdmCH2+h0y1nr2CXSx8gbZapxg==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/compile-common@0.9.8': + resolution: {integrity: sha512-DTpiyo32t/YhLI1spn84D3MHYHrnoVqO+Gp7ZHrYNwDs86mAxtNiH5lsVzSb8cPgiqlvNsRCU9nm9R0YmKMTBQ==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/config@1.3.61': + resolution: {integrity: sha512-L4uyG47V+k0NrSoVJ9D+hp2jcMstihW1QlNuXiu5g3mU24BjrozlJT34DFkczh/TtRceLjdrQJKA8WJCMICutw==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/dashboard-message-bus-client@0.1.12': + resolution: {integrity: sha512-pI9G0La9tTstb2J2wxUZIMx6H+ZF0XBlsGN3HBkffr4edT0oT12WMCK9GxmKE22Q5VnpXl7wGjatRSEx0C9qDQ==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/dashboard-message-bus-common@0.1.7': + resolution: {integrity: sha512-jN7q8LBmwQRldSzT/YJE33mnDLrp3EFFDuZyLwtQGInlfcRTXcr5yPY42jxr3Ln19dQe2Chx3I6dWtDByeKLIQ==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/db-loader@0.2.36': + resolution: {integrity: sha512-Cm8uVc2eoihquMOSZm8UOuGGUvBo+/GHkxRoPAZ5pftOpSlRAug0okVOp6ETj1BujgLJ02izU/qdrwSGWwGR9A==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/db@2.0.36': + resolution: {integrity: sha512-PpUjOXZgf9Gy8RlP8bJhl5pjJRkghZUcCiGOsS0YbCCI//PGDDoKmS+3QUjXWhiMwTeld3gfUV2ip4p2hMbyVA==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/debugger@12.1.5': + resolution: {integrity: sha512-m6FQoddmptcXZkO+OABcz4Ka7YDLAPW9/GhnTSqYonlaOeV7g5dMzybhHq6whaQet34rhNteomep7JpskKW9Mw==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/error@0.2.2': + resolution: {integrity: sha512-TqbzJ0O8DHh34cu8gDujnYl4dUl6o2DE4PR6iokbybvnIm/L2xl6+Gv1VC+YJS45xfH83Yo3/Zyg/9Oq8/xZWg==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/events@0.1.25': + resolution: {integrity: sha512-5elJxNXPVuXDMOoIcCVox0sz95ovRhRbte/H9ht18vyOvtualb4bTjwYyRoWw6Y7j0pom0tPI3OLZWqCdKQNdA==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/hdwallet-provider@1.7.0': + resolution: {integrity: sha512-nT7BPJJ2jPCLJc5uZdVtRnRMny5he5d3kO9Hi80ZSqe5xlnK905grBptM/+CwOfbeqHKQirI1btwm6r3wIBM8A==} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/interface-adapter@0.5.37': + resolution: {integrity: sha512-lPH9MDgU+7sNDlJSClwyOwPCfuOimqsCx0HfGkznL3mcFRymc1pukAR1k17zn7ErHqBwJjiKAZ6Ri72KkS+IWw==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/promise-tracker@0.1.7': + resolution: {integrity: sha512-NiPXNJvdei8MRZRUjEZoL0Y7TPDR1TaeCfGUgB3md6Q7TBiqSKo2p5OT36JO106B2j57SLmXOiDn8fLb+u2sjA==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/provider@0.3.13': + resolution: {integrity: sha512-W9yZO0ZUwA0LhFvf7+NNNXVSCOd4x5pTbFiXUVURjyqp7f4YooLAqnlLPSpV+6qwIwThc+86CeLlOiFslYdDIA==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/source-map-utils@1.3.119': + resolution: {integrity: sha512-TFYi3XvanY8WZBOfBwDHQe9HfZUXJ2ejnmFNjsq1//sbM4fUNWjeNshGqkWGxfKPh3OAzXgD4iTnPG3YeXM8YQ==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@truffle/spinners@0.2.5': + resolution: {integrity: sha512-emYyLEuoY62MQV/RNjyVIuTPEjMyIA0WiYMG2N3yfh8OSjD/TC0HRc2oyDWtVkNNox/5D2tH2m5fFB8HOt80FQ==} + engines: {node: ^16.20 || ^18.16 || >=20} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + '@trufflesuite/eth-json-rpc-filters@4.1.2-1': + resolution: {integrity: sha512-/MChvC5dw2ck9NU1cZmdovCz2VKbOeIyR4tcxDvA5sT+NaL0rA2/R5U0yI7zsbo1zD+pgqav77rQHTzpUdDNJQ==} + + '@trufflesuite/eth-json-rpc-infura@4.0.3-0': + resolution: {integrity: sha512-xaUanOmo0YLqRsL0SfXpFienhdw5bpQ1WEXxMTRi57az4lwpZBv4tFUDvcerdwJrxX9wQqNmgUgd1BrR01dumw==} + + '@trufflesuite/eth-json-rpc-middleware@4.4.2-1': + resolution: {integrity: sha512-iEy9H8ja7/8aYES5HfrepGBKU9n/Y4OabBJEklVd/zIBlhCCBAWBqkIZgXt11nBXO/rYAeKwYuE3puH3ByYnLA==} + + '@trufflesuite/eth-sig-util@1.4.2': + resolution: {integrity: sha512-+GyfN6b0LNW77hbQlH3ufZ/1eCON7mMrGym6tdYf7xiNw9Vv3jBO72bmmos1EId2NgBvPMhmYYm6DSLQFTmzrA==} + + '@trufflesuite/spinnies@0.1.1': + resolution: {integrity: sha512-jltEtmFJj6xmQqr85gP8OqBHCEiId+zw+uAsb3DyLLRD17O6sySW6Afa2Z/jpzSafj+32ssDfLJ+c0of1NLqcA==} + + '@trufflesuite/uws-js-unofficial@20.30.0-unofficial.0': + resolution: {integrity: sha512-r5X0aOQcuT6pLwTRLD+mPnAM/nlKtvIK4Z+My++A8tTOR0qTjNRx8UB8jzRj3D+p9PMAp5LnpCUUGmz7/TppwA==} + + '@trufflesuite/web3-provider-engine@15.0.14': + resolution: {integrity: sha512-6/LoWvNMxYf0oaYzJldK2a9AdnkAdIeJhHW4nuUBAeO29eK9xezEaEYQ0ph1QRTaICxGxvn+1Azp4u8bQ8NEZw==} + + '@tsconfig/node10@1.0.12': + resolution: {integrity: sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ==} + + '@tsconfig/node12@1.0.11': + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + + '@tsconfig/node14@1.0.3': + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + + '@tsconfig/node16@1.0.4': + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + + '@typechain/ethers-v6@0.4.3': + resolution: {integrity: sha512-TrxBsyb4ryhaY9keP6RzhFCviWYApcLCIRMPyWaKp2cZZrfaM3QBoxXTnw/eO4+DAY3l+8O0brNW0WgeQeOiDA==} + peerDependencies: + ethers: 6.x + typechain: ^8.3.1 + typescript: '>=4.7.0' + + '@typechain/hardhat@8.0.3': + resolution: {integrity: sha512-MytSmJJn+gs7Mqrpt/gWkTCOpOQ6ZDfRrRT2gtZL0rfGe4QrU4x9ZdW15fFbVM/XTa+5EsKiOMYXhRABibNeng==} + peerDependencies: + '@typechain/ethers-v6': ^0.4.3 + ethers: ^6.1.0 + hardhat: ^2.9.9 + typechain: ^8.3.1 + + '@types/accepts@1.3.7': + resolution: {integrity: sha512-Pay9fq2lM2wXPWbteBsRAGiWH2hig4ZE2asK+mm7kUzlxRTfL961rj89I6zV/E3PcIkDqyuBEcMxFT7rccugeQ==} + + '@types/bn.js@4.11.6': + resolution: {integrity: sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==} + + '@types/bn.js@5.2.0': + resolution: {integrity: sha512-DLbJ1BPqxvQhIGbeu8VbUC1DiAiahHtAYvA0ZEAa4P31F7IaArc8z3C3BRQdWX4mtLQuABG4yzp76ZrS02Ui1Q==} + + '@types/body-parser@1.19.2': + resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} + + '@types/body-parser@1.19.6': + resolution: {integrity: sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==} + + '@types/cacheable-request@6.0.3': + resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==} + + '@types/chai-as-promised@7.1.8': + resolution: {integrity: sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==} + + '@types/chai@4.3.20': + resolution: {integrity: sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==} + + '@types/concat-stream@1.6.1': + resolution: {integrity: sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==} + + '@types/connect@3.4.38': + resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} + + '@types/cors@2.8.12': + resolution: {integrity: sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==} + + '@types/express-serve-static-core@4.17.31': + resolution: {integrity: sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==} + + '@types/express-serve-static-core@4.19.8': + resolution: {integrity: sha512-02S5fmqeoKzVZCHPZid4b8JH2eM5HzQLZWN2FohQEy/0eXTq8VXZfSN6Pcr3F6N9R/vNrj7cpgbhjie6m/1tCA==} + + '@types/express@4.17.14': + resolution: {integrity: sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==} + + '@types/form-data@0.0.33': + resolution: {integrity: sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==} + + '@types/glob@7.2.0': + resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} + + '@types/http-cache-semantics@4.2.0': + resolution: {integrity: sha512-L3LgimLHXtGkWikKnsPg0/VFx9OGZaC+eN1u4r+OB1XRqH3meBIAVC2zr1WdMH+RHmnRkqliQAOHNJ/E0j/e0Q==} + + '@types/http-errors@2.0.5': + resolution: {integrity: sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg==} + + '@types/keyv@3.1.4': + resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} + + '@types/long@4.0.2': + resolution: {integrity: sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==} + + '@types/lru-cache@5.1.1': + resolution: {integrity: sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==} + + '@types/minimatch@6.0.0': + resolution: {integrity: sha512-zmPitbQ8+6zNutpwgcQuLcsEpn/Cj54Kbn7L5pX0Os5kdWplB7xPgEh/g+SWOB/qmows2gpuCaPyduq8ZZRnxA==} + deprecated: This is a stub types definition. minimatch provides its own type definitions, so you do not need this installed. + + '@types/mocha@10.0.10': + resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==} + + '@types/node@10.17.60': + resolution: {integrity: sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==} + + '@types/node@12.20.55': + resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + + '@types/node@22.7.5': + resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} + + '@types/node@25.3.1': + resolution: {integrity: sha512-hj9YIJimBCipHVfHKRMnvmHg+wfhKc0o4mTtXh9pKBjC8TLJzz0nzGmLi5UJsYAUgSvXFHgb0V2oY10DUFtImw==} + + '@types/node@8.10.66': + resolution: {integrity: sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==} + + '@types/pbkdf2@3.1.2': + resolution: {integrity: sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==} + + '@types/prettier@2.7.3': + resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==} + + '@types/qs@6.14.0': + resolution: {integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==} + + '@types/range-parser@1.2.7': + resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} + + '@types/responselike@1.0.3': + resolution: {integrity: sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==} + + '@types/secp256k1@4.0.7': + resolution: {integrity: sha512-Rcvjl6vARGAKRO6jHeKMatGrvOMGrR/AR11N1x2LqintPCyDZ7NBhrh238Z2VZc7aM7KIwnFpFQ7fnfK4H/9Qw==} + + '@types/seedrandom@3.0.1': + resolution: {integrity: sha512-giB9gzDeiCeloIXDgzFBCgjj1k4WxcDrZtGl6h1IqmUPlxF+Nx8Ve+96QCyDZ/HseB/uvDsKbpib9hU5cU53pw==} + + '@types/send@1.2.1': + resolution: {integrity: sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ==} + + '@types/serve-static@2.2.0': + resolution: {integrity: sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ==} + + '@yarnpkg/lockfile@1.1.0': + resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==} + + abbrev@1.0.9: + resolution: {integrity: sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==} + + abort-controller@3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + + abortcontroller-polyfill@1.7.8: + resolution: {integrity: sha512-9f1iZ2uWh92VcrU9Y8x+LdM4DLj75VE0MJB8zuF1iUnroEptStw+DQ8EQPMUdfe5k+PkB1uUfDQfWbhstH8LrQ==} + + abstract-level@1.0.3: + resolution: {integrity: sha512-t6jv+xHy+VYwc4xqZMn2Pa9DjcdzvzZmQGRjTFc8spIbRGHgBrEKbPq+rYXc7CCo0lxgYvSgKVg9qZAhpVQSjA==} + engines: {node: '>=12'} + + abstract-leveldown@2.6.3: + resolution: {integrity: sha512-2++wDf/DYqkPR3o5tbfdhF96EfMApo1GpPfzOsR/ZYXdkSmELlvOOEAl9iKkRsktMPHdGjO4rtkBpf2I7TiTeA==} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + abstract-leveldown@2.7.2: + resolution: {integrity: sha512-+OVvxH2rHVEhWLdbudP6p0+dNMXu8JA1CbhP19T8paTYAcX7oJ4OVjT+ZUVpv7mITxXHqDMej+GdqXBmXkw09w==} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + abstract-leveldown@6.2.3: + resolution: {integrity: sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + abstract-leveldown@6.3.0: + resolution: {integrity: sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + abstract-leveldown@7.2.0: + resolution: {integrity: sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ==} + engines: {node: '>=10'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + accepts@1.3.8: + resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} + engines: {node: '>= 0.6'} + + acorn-walk@8.3.5: + resolution: {integrity: sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==} + engines: {node: '>=0.4.0'} + + acorn@8.16.0: + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} + engines: {node: '>=0.4.0'} + hasBin: true + + adm-zip@0.4.16: + resolution: {integrity: sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==} + engines: {node: '>=0.3.0'} + + aes-js@3.0.0: + resolution: {integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==} + + aes-js@3.1.2: + resolution: {integrity: sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==} + + aes-js@4.0.0-beta.5: + resolution: {integrity: sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==} + + agent-base@6.0.2: + resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} + engines: {node: '>= 6.0.0'} + + aggregate-error@3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} + + ajv-formats@2.1.1: + resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + + ajv@6.14.0: + resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} + + ajv@8.18.0: + resolution: {integrity: sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==} + + amazon-cognito-identity-js@6.3.16: + resolution: {integrity: sha512-HPGSBGD6Q36t99puWh0LnptxO/4icnk2kqIQ9cTJ2tFQo5NMUnWQIgtrTAk8nm+caqUbjDzXzG56GBjI2tS6jQ==} + + amdefine@1.0.1: + resolution: {integrity: sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==} + engines: {node: '>=0.4.2'} + + ansi-align@3.0.1: + resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} + + ansi-colors@4.1.1: + resolution: {integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==} + engines: {node: '>=6'} + + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + + ansi-regex@2.1.1: + resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} + engines: {node: '>=0.10.0'} + + ansi-regex@3.0.1: + resolution: {integrity: sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==} + engines: {node: '>=4'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} + engines: {node: '>=12'} + + antlr4ts@0.5.0-alpha.4: + resolution: {integrity: sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + apollo-datasource@3.3.2: + resolution: {integrity: sha512-L5TiS8E2Hn/Yz7SSnWIVbZw0ZfEIXZCa5VUiVxD9P53JvSrf4aStvsFDlGWPvpIdCR+aly2CfoB79B9/JjKFqg==} + engines: {node: '>=12.0'} + deprecated: The `apollo-datasource` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + + apollo-reporting-protobuf@3.4.0: + resolution: {integrity: sha512-h0u3EbC/9RpihWOmcSsvTW2O6RXVaD/mPEjfrPkxRPTEPWqncsgOoRJw+wih4OqfH3PvTJvoEIf4LwKrUaqWog==} + deprecated: The `apollo-reporting-protobuf` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/usage-reporting-protobuf` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + + apollo-server-core@3.13.0: + resolution: {integrity: sha512-v/g6DR6KuHn9DYSdtQijz8dLOkP78I5JSVJzPkARhDbhpH74QNwrQ2PP2URAPPEDJ2EeZNQDX8PvbYkAKqg+kg==} + engines: {node: '>=12.0'} + deprecated: The `apollo-server-core` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + peerDependencies: + graphql: ^15.3.0 || ^16.0.0 + + apollo-server-env@4.2.1: + resolution: {integrity: sha512-vm/7c7ld+zFMxibzqZ7SSa5tBENc4B0uye9LTfjJwGoQFY5xsUPH5FpO5j0bMUDZ8YYNbrF9SNtzc5Cngcr90g==} + engines: {node: '>=12.0'} + deprecated: The `apollo-server-env` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/utils.fetcher` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + + apollo-server-errors@3.3.1: + resolution: {integrity: sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA==} + engines: {node: '>=12.0'} + deprecated: The `apollo-server-errors` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + peerDependencies: + graphql: ^15.3.0 || ^16.0.0 + + apollo-server-express@3.13.0: + resolution: {integrity: sha512-iSxICNbDUyebOuM8EKb3xOrpIwOQgKxGbR2diSr4HP3IW8T3njKFOoMce50vr+moOCe1ev8BnLcw9SNbuUtf7g==} + engines: {node: '>=12.0'} + deprecated: The `apollo-server-express` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + peerDependencies: + express: ^4.17.1 + graphql: ^15.3.0 || ^16.0.0 + + apollo-server-plugin-base@3.7.2: + resolution: {integrity: sha512-wE8dwGDvBOGehSsPTRZ8P/33Jan6/PmL0y0aN/1Z5a5GcbFhDaaJCjK5cav6npbbGL2DPKK0r6MPXi3k3N45aw==} + engines: {node: '>=12.0'} + deprecated: The `apollo-server-plugin-base` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + peerDependencies: + graphql: ^15.3.0 || ^16.0.0 + + apollo-server-types@3.8.0: + resolution: {integrity: sha512-ZI/8rTE4ww8BHktsVpb91Sdq7Cb71rdSkXELSwdSR0eXu600/sY+1UXhTWdiJvk+Eq5ljqoHLwLbY2+Clq2b9A==} + engines: {node: '>=12.0'} + deprecated: The `apollo-server-types` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + peerDependencies: + graphql: ^15.3.0 || ^16.0.0 + + apollo-server@3.13.0: + resolution: {integrity: sha512-hgT/MswNB5G1r+oBhggVX4Fjw53CFLqG15yB5sN+OrYkCVWF5YwPbJWHfSWa7699JMEXJGaoVfFzcvLZK0UlDg==} + deprecated: The `apollo-server` package is part of Apollo Server v2 and v3, which are now end-of-life (as of October 22nd 2023 and October 22nd 2024, respectively). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. + peerDependencies: + graphql: ^15.3.0 || ^16.0.0 + + app-module-path@2.2.0: + resolution: {integrity: sha512-gkco+qxENJV+8vFcDiiFhuoSvRXb2a/QPqpSoWhVz829VNJfOTnELbBmPmNKFxf3xdNnw4DWCkzkDaavcX/1YQ==} + + arg@4.1.3: + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + + argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + argsarray@0.0.1: + resolution: {integrity: sha512-u96dg2GcAKtpTrBdDoFIM7PjcBA+6rSP0OR94MOReNRyUECL6MtQt5XXmRr4qrftYaef9+l5hcpO5te7sML1Cg==} + + array-back@3.1.0: + resolution: {integrity: sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==} + engines: {node: '>=6'} + + array-back@4.0.2: + resolution: {integrity: sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==} + engines: {node: '>=8'} + + array-flatten@1.1.1: + resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + array-uniq@1.0.3: + resolution: {integrity: sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==} + engines: {node: '>=0.10.0'} + + asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + + asn1@0.2.6: + resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} + + assert-plus@1.0.0: + resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} + engines: {node: '>=0.8'} + + assertion-error@1.1.0: + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + + astral-regex@2.0.0: + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} + engines: {node: '>=8'} + + async-eventemitter@0.2.4: + resolution: {integrity: sha512-pd20BwL7Yt1zwDFy+8MX8F1+WCT8aQeKj0kQnTrH9WaeRETlRamVhD0JtRPmrV4GfOJ2F9CvdQkZeZhnh2TuHw==} + + async-limiter@1.0.1: + resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} + + async-retry@1.3.3: + resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==} + + async@1.5.2: + resolution: {integrity: sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==} + + async@2.6.4: + resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + at-least-node@1.0.0: + resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} + engines: {node: '>= 4.0.0'} + + atomically@1.7.0: + resolution: {integrity: sha512-Xcz9l0z7y9yQ9rdDaxlmaI4uJHf/T8g9hOEzJcsEqX2SjCj4J20uK7+ldkDHMbpJDK76wF7xEIgxc/vSlsfw5w==} + engines: {node: '>=10.12.0'} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + await-semaphore@0.1.3: + resolution: {integrity: sha512-d1W2aNSYcz/sxYO4pMGX9vq65qOTu0P800epMud+6cYYX0QcT7zyqcxec3VWzpgvdXo57UWmVbZpLMjX2m1I7Q==} + + aws-sign2@0.7.0: + resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} + + aws4@1.13.2: + resolution: {integrity: sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==} + + axios@1.13.5: + resolution: {integrity: sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q==} + + axios@1.5.0: + resolution: {integrity: sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==} + + babel-plugin-polyfill-corejs2@0.4.15: + resolution: {integrity: sha512-hR3GwrRwHUfYwGfrisXPIDP3JcYfBrW7wKE7+Au6wDYl7fm/ka1NEII6kORzxNU556JjfidZeBsO10kYvtV1aw==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + babel-plugin-polyfill-corejs3@0.13.0: + resolution: {integrity: sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + babel-plugin-polyfill-regenerator@0.6.6: + resolution: {integrity: sha512-hYm+XLYRMvupxiQzrvXUj7YyvFFVfv5gI0R71AJzudg1g2AI2vyCPPIFEBjk162/wFzti3inBHo7isWFuEVS/A==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + backoff@2.5.0: + resolution: {integrity: sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==} + engines: {node: '>= 0.6'} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + + base-x@3.0.11: + resolution: {integrity: sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==} + + base64-js@1.5.1: + resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} + + baseline-browser-mapping@2.10.0: + resolution: {integrity: sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==} + engines: {node: '>=6.0.0'} + hasBin: true + + bcrypt-pbkdf@1.0.2: + resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} + + bech32@1.1.4: + resolution: {integrity: sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==} + + big-integer@1.6.36: + resolution: {integrity: sha512-t70bfa7HYEA1D9idDbmuv7YbsbVkQ+Hp+8KFSul4aE5e/i1bjCNIRYJZlA8Q8p0r9T8cF/RVvwUgRA//FydEyg==} + engines: {node: '>=0.6'} + + big.js@6.2.2: + resolution: {integrity: sha512-y/ie+Faknx7sZA5MfGA2xKlu0GDv8RWrXGsmlteyJQ2lvoKv9GBK/fpRMc2qlSoBAgNxrixICFCBefIq8WCQpQ==} + + bignumber.js@9.3.1: + resolution: {integrity: sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + blakejs@1.2.1: + resolution: {integrity: sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==} + + bluebird@3.7.2: + resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} + + bn.js@4.11.6: + resolution: {integrity: sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==} + + bn.js@4.12.3: + resolution: {integrity: sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==} + + bn.js@5.2.3: + resolution: {integrity: sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==} + + body-parser@1.20.4: + resolution: {integrity: sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + + boxen@5.1.2: + resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} + engines: {node: '>=10'} + + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + brace-expansion@5.0.3: + resolution: {integrity: sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==} + engines: {node: 18 || 20 || >=22} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + brorand@1.1.0: + resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} + + browser-stdout@1.3.1: + resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} + + browserify-aes@1.2.0: + resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} + + browserslist@4.28.1: + resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + bs58@4.0.1: + resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==} + + bs58check@2.1.2: + resolution: {integrity: sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==} + + btoa@1.2.1: + resolution: {integrity: sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==} + engines: {node: '>= 0.4.0'} + hasBin: true + + buffer-from@1.1.2: + resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + + buffer-to-arraybuffer@0.0.5: + resolution: {integrity: sha512-3dthu5CYiVB1DEJp61FtApNnNndTckcqe4pFcLdvHtrpG+kcyekCJKg4MRiDcFW7A6AODnXB9U4dwQiCW5kzJQ==} + + buffer-xor@1.0.3: + resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} + + buffer@4.9.2: + resolution: {integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==} + + buffer@5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + + buffer@6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + + bufferutil@4.0.5: + resolution: {integrity: sha512-HTm14iMQKK2FjFLRTM5lAVcyaUzOnqbPtesFIvREgXpJHdQm8bWS+GkQgIkfaBYRHuCnea7w8UVNfwiAQhlr9A==} + engines: {node: '>=6.14.2'} + + bufferutil@4.0.7: + resolution: {integrity: sha512-kukuqc39WOHtdxtw4UScxF/WVnMFVSQVKhtx3AjZJzhd0RGZZldcrfSEbVsWWe6KNH253574cq5F+wpv0G9pJw==} + engines: {node: '>=6.14.2'} + + bufferutil@4.1.0: + resolution: {integrity: sha512-ZMANVnAixE6AWWnPzlW2KpUrxhm9woycYvPOo67jWHyFowASTEd9s+QN1EIMsSDtwhIxN4sWE1jotpuDUIgyIw==} + engines: {node: '>=6.14.2'} + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + + cacheable-lookup@5.0.4: + resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} + engines: {node: '>=10.6.0'} + + cacheable-lookup@6.1.0: + resolution: {integrity: sha512-KJ/Dmo1lDDhmW2XDPMo+9oiy/CeqosPguPCrgcVzKyZrL6pM1gU2GmPY/xo6OQPTUaA/c0kwHuywB4E6nmT9ww==} + engines: {node: '>=10.6.0'} + + cacheable-request@7.0.4: + resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==} + engines: {node: '>=8'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + camel-case@3.0.0: + resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==} + + camelcase@3.0.0: + resolution: {integrity: sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==} + engines: {node: '>=0.10.0'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + caniuse-lite@1.0.30001774: + resolution: {integrity: sha512-DDdwPGz99nmIEv216hKSgLD+D4ikHQHjBC/seF98N9CPqRX4M5mSxT9eTV6oyisnJcuzxtZy4n17yKKQYmYQOA==} + + caseless@0.12.0: + resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==} + + catering@2.1.1: + resolution: {integrity: sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==} + engines: {node: '>=6'} + + cbor@10.0.11: + resolution: {integrity: sha512-vIwORDd/WyB8Nc23o2zNN5RrtFGlR6Fca61TtjkUXueI3Jf2DOZDl1zsshvBntZ3wZHBM9ztjnkXSmzQDaq3WA==} + engines: {node: '>=20'} + + cbor@5.2.0: + resolution: {integrity: sha512-5IMhi9e1QU76ppa5/ajP1BmMWZ2FHkhAhjeVKQ/EFCgYSEaeVaoGtL7cxJskf9oCCk+XjzaIdc3IuU/dbA/o2A==} + engines: {node: '>=6.0.0'} + + cbor@8.1.0: + resolution: {integrity: sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==} + engines: {node: '>=12.19'} + + chai-as-promised@7.1.2: + resolution: {integrity: sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==} + peerDependencies: + chai: '>= 2.1.2 < 6' + + chai@4.5.0: + resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} + engines: {node: '>=4'} + + chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + change-case@3.0.2: + resolution: {integrity: sha512-Mww+SLF6MZ0U6kdg11algyKd5BARbyM4TbFBepwowYSR5ClfQGCGtxNXgykpN0uF/bstWeaGDT4JWaDh8zWAHA==} + + charenc@0.0.2: + resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} + + check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + + checkpoint-store@1.1.0: + resolution: {integrity: sha512-J/NdY2WvIx654cc6LWSq/IYFFCUf75fFTgwzFnmbqyORH4MwgiQCgswLLKBGzmsyTI5V7i5bp/So6sMbDWhedg==} + + chokidar@3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + engines: {node: '>= 8.10.0'} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + chokidar@4.0.3: + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} + engines: {node: '>= 14.16.0'} + + chownr@1.1.4: + resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + + ci-info@2.0.0: + resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} + + ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + + cids@0.7.5: + resolution: {integrity: sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA==} + engines: {node: '>=4.0.0', npm: '>=3.0.0'} + deprecated: This module has been superseded by the multiformats module + + cipher-base@1.0.7: + resolution: {integrity: sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==} + engines: {node: '>= 0.10'} + + class-is@1.1.0: + resolution: {integrity: sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==} + + clean-stack@2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} + + cli-boxes@2.2.1: + resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} + engines: {node: '>=6'} + + cli-cursor@3.1.0: + resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} + engines: {node: '>=8'} + + cli-table3@0.5.1: + resolution: {integrity: sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==} + engines: {node: '>=6'} + + cliui@3.2.0: + resolution: {integrity: sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==} + + cliui@7.0.4: + resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + + cliui@9.0.1: + resolution: {integrity: sha512-k7ndgKhwoQveBL+/1tqGJYNz097I7WOvwbmmU2AR5+magtbjPWQTS1C5vzGkBC8Ym8UWRzfKUzUUqFLypY4Q+w==} + engines: {node: '>=20'} + + clone-buffer@1.0.0: + resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==} + engines: {node: '>= 0.10'} + + clone-response@1.0.3: + resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} + + clone@2.1.2: + resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} + engines: {node: '>=0.8'} + + code-point-at@1.1.0: + resolution: {integrity: sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==} + engines: {node: '>=0.10.0'} + + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + colors@1.4.0: + resolution: {integrity: sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==} + engines: {node: '>=0.1.90'} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + command-exists@1.2.9: + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + + command-line-args@5.2.1: + resolution: {integrity: sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==} + engines: {node: '>=4.0.0'} + + command-line-usage@6.1.3: + resolution: {integrity: sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==} + engines: {node: '>=8.0.0'} + + commander@2.20.3: + resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + + commander@8.3.0: + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} + + compare-versions@6.1.1: + resolution: {integrity: sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + concat-stream@1.6.2: + resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} + engines: {'0': node >= 0.8} + + conf@10.2.0: + resolution: {integrity: sha512-8fLl9F04EJqjSqH+QjITQfJF8BrOVaYr1jewVgSRAEWePfxT0sku4w2hrGQ60BC/TNLGQ2pgxNlTbWQmMPFvXg==} + engines: {node: '>=12'} + + constant-case@2.0.0: + resolution: {integrity: sha512-eS0N9WwmjTqrOmR3o83F5vW8Z+9R1HnVz3xmzT2PMFug9ly+Au/fxRWlEBSb6LcZwspSsEn9Xs1uw9YgzAg1EQ==} + + content-disposition@0.5.4: + resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} + engines: {node: '>= 0.6'} + + content-hash@2.5.2: + resolution: {integrity: sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw==} + + content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} + engines: {node: '>= 0.6'} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + cookie-signature@1.0.7: + resolution: {integrity: sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==} + + cookie@0.4.2: + resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} + engines: {node: '>= 0.6'} + + cookie@0.7.2: + resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} + engines: {node: '>= 0.6'} + + core-js-compat@3.48.0: + resolution: {integrity: sha512-OM4cAF3D6VtH/WkLtWvyNC56EZVXsZdU3iqaMG2B4WvYrlqU831pc4UtG5yp0sE9z8Y02wVN7PjW5Zf9Gt0f1Q==} + + core-util-is@1.0.2: + resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} + + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + cors@2.8.6: + resolution: {integrity: sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==} + engines: {node: '>= 0.10'} + + crc-32@1.2.2: + resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} + engines: {node: '>=0.8'} + hasBin: true + + create-hash@1.2.0: + resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} + + create-hmac@1.1.7: + resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} + + create-require@1.1.1: + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + + cross-fetch@2.2.6: + resolution: {integrity: sha512-9JZz+vXCmfKUZ68zAptS7k4Nu8e2qcibe7WVZYps7sAgk5R8GYTc+T1WR0v1rlP9HxgARmOX1UTIJZFytajpNA==} + + cross-fetch@3.2.0: + resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + crypt@0.0.2: + resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} + + crypto-addr-codec@0.1.8: + resolution: {integrity: sha512-GqAK90iLLgP3FvhNmHbpT3wR6dEdaM8hZyZtLX29SPardh3OA13RFLHDR6sntGCgRWOfiHqW6sIyohpNqOtV/g==} + + cssfilter@0.0.10: + resolution: {integrity: sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==} + + d@1.0.2: + resolution: {integrity: sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==} + engines: {node: '>=0.12'} + + dashdash@1.14.1: + resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} + engines: {node: '>=0.10'} + + dataloader@2.1.0: + resolution: {integrity: sha512-qTcEYLen3r7ojZNgVUaRggOI+KM7jrKxXeSHhogh/TWxYMeONEMqY+hmkobiYQozsGIyg9OYVzO4ZIfoB4I0pQ==} + + death@1.1.0: + resolution: {integrity: sha512-vsV6S4KVHvTGxbEcij7hkWRv0It+sGGWVOM67dQde/o5Xjnr+KmLjxWJii2uEObIrt1CcM9w0Yaovx+iOlIL+w==} + + debounce-fn@4.0.0: + resolution: {integrity: sha512-8pYCQiL9Xdcg0UPSD3d+0KMlOjp+KGU5EPwYddgzQ7DATsg4fuUDjQtsYLmWjnk2obnNHgV3vE2Y4jejSOJVBQ==} + engines: {node: '>=10'} + + debug@2.6.9: + resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@3.1.0: + resolution: {integrity: sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decamelize@1.2.0: + resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} + engines: {node: '>=0.10.0'} + + decamelize@4.0.0: + resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==} + engines: {node: '>=10'} + + decode-uri-component@0.2.2: + resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} + engines: {node: '>=0.10'} + + decompress-response@3.3.0: + resolution: {integrity: sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==} + engines: {node: '>=4'} + + decompress-response@6.0.0: + resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} + engines: {node: '>=10'} + + deep-eql@4.1.4: + resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} + engines: {node: '>=6'} + + deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + defer-to-connect@2.0.1: + resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} + engines: {node: '>=10'} + + deferred-leveldown@1.2.2: + resolution: {integrity: sha512-uukrWD2bguRtXilKt6cAWKyoXrTSMo5m7crUdLfWQmu8kIm88w3QZoUL+6nhpfKVmhHANER6Re3sKoNoZ3IKMA==} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + deferred-leveldown@5.3.0: + resolution: {integrity: sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + delay@5.0.0: + resolution: {integrity: sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==} + engines: {node: '>=10'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + + destroy@1.2.0: + resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + + diff@4.0.4: + resolution: {integrity: sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==} + engines: {node: '>=0.3.1'} + + diff@5.0.0: + resolution: {integrity: sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==} + engines: {node: '>=0.3.1'} + + diff@5.2.2: + resolution: {integrity: sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A==} + engines: {node: '>=0.3.1'} + + difflib@0.2.4: + resolution: {integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + dom-walk@0.1.2: + resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==} + + dot-case@2.1.1: + resolution: {integrity: sha512-HnM6ZlFqcajLsyudHq7LeeLDr2rFAVYtDv/hV5qchQEidSck8j9OPUsXY9KwJv/lHMtYlX4DjRQqwFYa+0r8Ug==} + + dot-prop@6.0.1: + resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==} + engines: {node: '>=10'} + + double-ended-queue@2.1.0-0: + resolution: {integrity: sha512-+BNfZ+deCo8hMNpDqDnvT+c0XpJ5cUa6mqYq89bho2Ifze4URTqRkcwR399hWoTrTkbZ/XJYDgP6rc7pRgffEQ==} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + ecc-jsbn@0.1.2: + resolution: {integrity: sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==} + + ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + + electron-to-chromium@1.5.302: + resolution: {integrity: sha512-sM6HAN2LyK82IyPBpznDRqlTQAtuSaO+ShzFiWTvoMJLHyZ+Y39r8VMfHzwbU8MVBzQ4Wdn85+wlZl2TLGIlwg==} + + elliptic@6.5.4: + resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} + + elliptic@6.6.1: + resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==} + + emittery@0.10.0: + resolution: {integrity: sha512-AGvFfs+d0JKCJQ4o01ASQLGPmSCxgfU9RFXvzPvZdjKK8oscynksuJhWrSTSw7j7Ep/sZct5b5ZhYCi8S/t0HQ==} + engines: {node: '>=12'} + + emittery@0.4.1: + resolution: {integrity: sha512-r4eRSeStEGf6M5SKdrQhhLK5bOwOBxQhIE3YSTnZE3GpKiLfnnhE+tPtrJE79+eDJgm39BM6LSoI8SCx4HbwlQ==} + engines: {node: '>=6'} + + emoji-regex@10.6.0: + resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + encodeurl@2.0.0: + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} + engines: {node: '>= 0.8'} + + encoding-down@6.3.0: + resolution: {integrity: sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + encoding@0.1.13: + resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} + + end-of-stream@1.4.5: + resolution: {integrity: sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==} + + end-stream@0.1.0: + resolution: {integrity: sha512-Brl10T8kYnc75IepKizW6Y9liyW8ikz1B7n/xoHrJxoVSSjoqPn30sb7XVFfQERK4QfUMYRGs9dhWwtt2eu6uA==} + + enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + errno@0.1.8: + resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==} + hasBin: true + + error-ex@1.3.4: + resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es5-ext@0.10.64: + resolution: {integrity: sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==} + engines: {node: '>=0.10'} + + es6-iterator@2.0.3: + resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} + + es6-promise@4.2.8: + resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==} + + es6-symbol@3.1.4: + resolution: {integrity: sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==} + engines: {node: '>=0.12'} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escodegen@1.8.1: + resolution: {integrity: sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==} + engines: {node: '>=0.12.0'} + hasBin: true + + esniff@2.0.1: + resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==} + engines: {node: '>=0.10'} + + esprima@2.7.3: + resolution: {integrity: sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==} + engines: {node: '>=0.10.0'} + hasBin: true + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + estraverse@1.9.3: + resolution: {integrity: sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==} + engines: {node: '>=0.10.0'} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} + engines: {node: '>= 0.6'} + + eth-block-tracker@4.4.3: + resolution: {integrity: sha512-A8tG4Z4iNg4mw5tP1Vung9N9IjgMNqpiMoJ/FouSFwNCGHv2X0mmOYwtQOJzki6XN7r7Tyo01S29p7b224I4jw==} + + eth-ens-namehash@2.0.8: + resolution: {integrity: sha512-VWEI1+KJfz4Km//dadyvBBoBeSQ0MHTXPvr8UIXiLW6IanxvAV+DmlZAijZwAyggqGUfwQBeHf7tc9wzc1piSw==} + + eth-gas-reporter@0.2.27: + resolution: {integrity: sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw==} + peerDependencies: + '@codechecks/client': ^0.1.0 + peerDependenciesMeta: + '@codechecks/client': + optional: true + + eth-json-rpc-errors@1.1.1: + resolution: {integrity: sha512-WT5shJ5KfNqHi9jOZD+ID8I1kuYWNrigtZat7GOQkvwo99f8SzAVaEcWhJUv656WiZOAg3P1RiJQANtUmDmbIg==} + deprecated: 'Package renamed: https://www.npmjs.com/package/eth-rpc-errors' + + eth-json-rpc-errors@2.0.2: + resolution: {integrity: sha512-uBCRM2w2ewusRHGxN8JhcuOb2RN3ueAOYH/0BhqdFmQkZx5lj5+fLKTz0mIVOzd4FG5/kUksCzCD7eTEim6gaA==} + deprecated: 'Package renamed: https://www.npmjs.com/package/eth-rpc-errors' + + eth-lib@0.1.29: + resolution: {integrity: sha512-bfttrr3/7gG4E02HoWTDUcDDslN003OlOoBxk9virpAZQ1ja/jDgwkWB8QfJF7ojuEowrqy+lzp9VcJG7/k5bQ==} + + eth-lib@0.2.8: + resolution: {integrity: sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==} + + eth-query@2.1.2: + resolution: {integrity: sha512-srES0ZcvwkR/wd5OQBRA1bIJMww1skfGS0s8wlwK3/oNP4+wnds60krvu5R1QbpRQjMmpG5OMIWro5s7gvDPsA==} + + eth-rpc-errors@3.0.0: + resolution: {integrity: sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==} + + eth-sig-util@3.0.1: + resolution: {integrity: sha512-0Us50HiGGvZgjtWTyAI/+qTzYPMLy5Q451D0Xy68bxq1QMWdoOddDwGvsqcFT27uohKgalM9z/yxplyt+mY2iQ==} + deprecated: Deprecated in favor of '@metamask/eth-sig-util' + + ethereum-bloom-filters@1.2.0: + resolution: {integrity: sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA==} + + ethereum-common@0.0.18: + resolution: {integrity: sha512-EoltVQTRNg2Uy4o84qpa2aXymXDJhxm7eos/ACOg0DG4baAbMjhbdAEsx9GeE8sC3XCxnYvrrzZDH8D8MtA2iQ==} + + ethereum-common@0.2.0: + resolution: {integrity: sha512-XOnAR/3rntJgbCdGhqdaLIxDLWKLmsZOGhHdBKadEr6gEnJLH52k93Ou+TUdFaPN3hJc3isBZBal3U/XZ15abA==} + + ethereum-cryptography@0.1.3: + resolution: {integrity: sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==} + + ethereum-cryptography@1.2.0: + resolution: {integrity: sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==} + + ethereum-cryptography@2.2.1: + resolution: {integrity: sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==} + + ethereum-protocol@1.0.1: + resolution: {integrity: sha512-3KLX1mHuEsBW0dKG+c6EOJS1NBNqdCICvZW9sInmZTt5aY0oxmHVggYRE0lJu1tcnMD1K+AKHdLi6U43Awm1Vg==} + + ethereumjs-abi@0.6.8: + resolution: {integrity: sha512-Tx0r/iXI6r+lRsdvkFDlut0N08jWMnKRZ6Gkq+Nmw75lZe4e6o3EkSnkaBP5NF6+m5PTGAr9JP43N3LyeoglsA==} + deprecated: This library has been deprecated and usage is discouraged. + + ethereumjs-account@2.0.5: + resolution: {integrity: sha512-bgDojnXGjhMwo6eXQC0bY6UK2liSFUSMwwylOmQvZbSl/D7NXQ3+vrGO46ZeOgjGfxXmgIeVNDIiHw7fNZM4VA==} + + ethereumjs-block@1.7.1: + resolution: {integrity: sha512-B+sSdtqm78fmKkBq78/QLKJbu/4Ts4P2KFISdgcuZUPDm9x+N7qgBPIIFUGbaakQh8bzuquiRVbdmvPKqbILRg==} + deprecated: 'New package name format for new versions: @ethereumjs/block. Please update.' + + ethereumjs-block@2.2.2: + resolution: {integrity: sha512-2p49ifhek3h2zeg/+da6XpdFR3GlqY3BIEiqxGF8j9aSRIgkb7M1Ky+yULBKJOu8PAZxfhsYA+HxUk2aCQp3vg==} + deprecated: 'New package name format for new versions: @ethereumjs/block. Please update.' + + ethereumjs-common@1.5.2: + resolution: {integrity: sha512-hTfZjwGX52GS2jcVO6E2sx4YuFnf0Fhp5ylo4pEPhEffNln7vS59Hr5sLnp3/QCazFLluuBZ+FZ6J5HTp0EqCA==} + deprecated: 'New package name format for new versions: @ethereumjs/common. Please update.' + + ethereumjs-tx@1.3.7: + resolution: {integrity: sha512-wvLMxzt1RPhAQ9Yi3/HKZTn0FZYpnsmQdbKYfUUpi4j1SEIcbkd9tndVjcPrufY3V7j2IebOpC00Zp2P/Ay2kA==} + deprecated: 'New package name format for new versions: @ethereumjs/tx. Please update.' + + ethereumjs-tx@2.1.2: + resolution: {integrity: sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==} + deprecated: 'New package name format for new versions: @ethereumjs/tx. Please update.' + + ethereumjs-util@5.2.1: + resolution: {integrity: sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==} + + ethereumjs-util@6.2.1: + resolution: {integrity: sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==} + + ethereumjs-util@7.1.5: + resolution: {integrity: sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==} + engines: {node: '>=10.0.0'} + + ethereumjs-vm@2.6.0: + resolution: {integrity: sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw==} + deprecated: 'New package name format for new versions: @ethereumjs/vm. Please update.' + + ethereumjs-wallet@1.0.2: + resolution: {integrity: sha512-CCWV4RESJgRdHIvFciVQFnCHfqyhXWchTPlkfp28Qc53ufs+doi5I/cV2+xeK9+qEo25XCWfP9MiL+WEPAZfdA==} + deprecated: 'New package name format for new versions: @ethereumjs/wallet. Please update.' + + ethers@4.0.49: + resolution: {integrity: sha512-kPltTvWiyu+OktYy1IStSO16i2e7cS9D9OxZ81q2UUaiNPVrm/RTcbxamCXF9VUSKzJIdJV68EAIhTEVBalRWg==} + + ethers@5.8.0: + resolution: {integrity: sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==} + + ethers@6.16.0: + resolution: {integrity: sha512-U1wulmetNymijEhpSEQ7Ct/P/Jw9/e7R1j5XIbPRydgV2DjLVMsULDlNksq3RQnFgKoLlZf88ijYtWEXcPa07A==} + engines: {node: '>=14.0.0'} + + ethjs-unit@0.1.6: + resolution: {integrity: sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==} + engines: {node: '>=6.5.0', npm: '>=3'} + + ethjs-util@0.1.6: + resolution: {integrity: sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==} + engines: {node: '>=6.5.0', npm: '>=3'} + + event-emitter@0.3.5: + resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} + + event-target-shim@5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + + eventemitter3@4.0.4: + resolution: {integrity: sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==} + + events@3.3.0: + resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} + engines: {node: '>=0.8.x'} + + evp_bytestokey@1.0.3: + resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} + + express@4.22.1: + resolution: {integrity: sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g==} + engines: {node: '>= 0.10.0'} + + ext@1.7.0: + resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + + extsprintf@1.3.0: + resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} + engines: {'0': node >=0.6.0} + + fake-merkle-patricia-tree@1.0.1: + resolution: {integrity: sha512-Tgq37lkc9pUIgIKw5uitNUKcgcYL3R6JvXtKQbOf/ZSavXbidsksgp/pAY6p//uhw0I4yoMsvTSovvVIsk/qxA==} + + fast-base64-decode@1.0.0: + resolution: {integrity: sha512-qwaScUgUGBYeDNRnbc/KyllVU88Jk1pRHPStuF/lO7B0/RTRLj7U0lkdTAutlBblY08rwZDff6tNU9cjv6j//Q==} + + fast-check@3.1.1: + resolution: {integrity: sha512-3vtXinVyuUKCKFKYcwXhGE6NtGWkqF8Yh3rvMZNzmwz8EPrgoc/v4pDdLHyLnCyCI5MZpZZkDEwFyXyEONOxpA==} + engines: {node: '>=8.0.0'} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fast-safe-stringify@2.1.1: + resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} + + fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + fetch-cookie@0.11.0: + resolution: {integrity: sha512-BQm7iZLFhMWFy5CZ/162sAGjBfdNWb7a8LEqqnzsHFhxT/X/SVj/z2t2nu3aJvjlbQkrAlTUApplPRjWyH4mhA==} + engines: {node: '>=8'} + + fetch-ponyfill@4.1.0: + resolution: {integrity: sha512-knK9sGskIg2T7OnYLdZ2hZXn0CtDrAIBxYQLpmEf0BqfdWnwmM1weccUl5+4EdA44tzNSFAuxITPbXtPehUB3g==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + finalhandler@1.3.2: + resolution: {integrity: sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==} + engines: {node: '>= 0.8'} + + find-replace@3.0.0: + resolution: {integrity: sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==} + engines: {node: '>=4.0.0'} + + find-up@1.1.2: + resolution: {integrity: sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==} + engines: {node: '>=0.10.0'} + + find-up@2.1.0: + resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==} + engines: {node: '>=4'} + + find-up@3.0.0: + resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} + engines: {node: '>=6'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + find-yarn-workspace-root@2.0.0: + resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} + + flat@5.0.2: + resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} + hasBin: true + + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + foreach@2.0.6: + resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==} + + forever-agent@0.6.1: + resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} + + form-data-encoder@1.7.1: + resolution: {integrity: sha512-EFRDrsMm/kyqbTQocNvRXMLjc7Es2Vk+IQFx/YW7hkUH1eBl4J1fqiP34l74Yt0pFLCNpc06fkbVk00008mzjg==} + + form-data@2.3.3: + resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} + engines: {node: '>= 0.12'} + + form-data@2.5.5: + resolution: {integrity: sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A==} + engines: {node: '>= 0.12'} + + form-data@4.0.5: + resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} + engines: {node: '>= 6'} + + forwarded@0.2.0: + resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} + engines: {node: '>= 0.6'} + + fp-ts@1.19.3: + resolution: {integrity: sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==} + + fresh@0.5.2: + resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} + engines: {node: '>= 0.6'} + + fs-extra@0.30.0: + resolution: {integrity: sha512-UvSPKyhMn6LEd/WpUaV9C9t3zATuqoqfWc3QdPhPLb58prN9tqYPlPWi8Krxi44loBoUzlobqZ3+8tGpxxSzwA==} + + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + + fs-extra@4.0.3: + resolution: {integrity: sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==} + + fs-extra@7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} + + fs-extra@8.1.0: + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} + + fs-extra@9.1.0: + resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} + engines: {node: '>=10'} + + fs-minipass@1.2.7: + resolution: {integrity: sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==} + + fs-readdir-recursive@1.1.0: + resolution: {integrity: sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + functional-red-black-tree@1.0.1: + resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==} + + ganache@7.9.1: + resolution: {integrity: sha512-Tqhd4J3cpiLeYTD6ek/zlchSB107IVPMIm4ypyg+xz1sdkeALUnYYZnmY4Bdjqj3i6QwtlZPCu7U4qKy7HlWTA==} + hasBin: true + bundledDependencies: + - '@trufflesuite/bigint-buffer' + - keccak + - leveldown + - secp256k1 + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-caller-file@1.0.3: + resolution: {integrity: sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-east-asian-width@1.5.0: + resolution: {integrity: sha512-CQ+bEO+Tva/qlmw24dCejulK5pMzVnUOFOijVogd3KQs07HnRIgp8TGipvCCRT06xeYEbpbgwaCxglFyiuIcmA==} + engines: {node: '>=18'} + + get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-port@3.2.0: + resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==} + engines: {node: '>=4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-stream@5.2.0: + resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} + engines: {node: '>=8'} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + getpass@0.1.7: + resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} + + ghost-testrpc@0.0.2: + resolution: {integrity: sha512-i08dAEgJ2g8z5buJIrCTduwPIhih3DP+hOCTyyryikfV8T0bNvHnGXO67i0DD1H4GBDETTclPy9njZbfluQYrQ==} + hasBin: true + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob@5.0.15: + resolution: {integrity: sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + glob@7.1.7: + resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + glob@7.2.0: + resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + glob@8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} + deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + global-modules@2.0.0: + resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==} + engines: {node: '>=6'} + + global-prefix@3.0.0: + resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==} + engines: {node: '>=6'} + + global@4.4.0: + resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==} + + globby@10.0.2: + resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==} + engines: {node: '>=8'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + got@11.8.6: + resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} + engines: {node: '>=10.19.0'} + + got@12.1.0: + resolution: {integrity: sha512-hBv2ty9QN2RdbJJMK3hesmSkFTjVIHyIDDbssCKnSmq62edGgImJWD10Eb1k77TiV1bxloxqcFAVK8+9pkhOig==} + engines: {node: '>=14.16'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + graphql-tag@2.12.6: + resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} + engines: {node: '>=10'} + peerDependencies: + graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 + + graphql@15.10.1: + resolution: {integrity: sha512-BL/Xd/T9baO6NFzoMpiMD7YUZ62R6viR5tp/MULVEnbYJXZA//kRNW7J0j1w/wXArgL0sCxhDfK5dczSKn3+cg==} + engines: {node: '>= 10.x'} + + handlebars@4.7.8: + resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} + engines: {node: '>=0.4.7'} + hasBin: true + + har-schema@2.0.0: + resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==} + engines: {node: '>=4'} + + har-validator@5.1.5: + resolution: {integrity: sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==} + engines: {node: '>=6'} + deprecated: this library is no longer supported + + hardhat-gas-reporter@1.0.10: + resolution: {integrity: sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA==} + peerDependencies: + hardhat: ^2.0.2 + + hardhat@2.28.6: + resolution: {integrity: sha512-zQze7qe+8ltwHvhX5NQ8sN1N37WWZGw8L63y+2XcPxGwAjc/SMF829z3NS6o1krX0sryhAsVBK/xrwUqlsot4Q==} + hasBin: true + peerDependencies: + ts-node: '*' + typescript: '*' + peerDependenciesMeta: + ts-node: + optional: true + typescript: + optional: true + + has-flag@1.0.0: + resolution: {integrity: sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==} + engines: {node: '>=0.10.0'} + + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hash-base@3.1.2: + resolution: {integrity: sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==} + engines: {node: '>= 0.8'} + + hash.js@1.1.3: + resolution: {integrity: sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==} + + hash.js@1.1.7: + resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + header-case@1.0.1: + resolution: {integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==} + + heap@0.2.7: + resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} + + hmac-drbg@1.0.1: + resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} + + hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + + http-basic@8.1.3: + resolution: {integrity: sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==} + engines: {node: '>=6.0.0'} + + http-cache-semantics@4.2.0: + resolution: {integrity: sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==} + + http-errors@2.0.1: + resolution: {integrity: sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==} + engines: {node: '>= 0.8'} + + http-https@1.0.0: + resolution: {integrity: sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg==} + + http-response-object@3.0.2: + resolution: {integrity: sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==} + + http-signature@1.2.0: + resolution: {integrity: sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==} + engines: {node: '>=0.8', npm: '>=1.3.7'} + + http2-wrapper@1.0.3: + resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} + engines: {node: '>=10.19.0'} + + http2-wrapper@2.2.1: + resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==} + engines: {node: '>=10.19.0'} + + https-proxy-agent@5.0.1: + resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} + engines: {node: '>= 6'} + + iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + + idna-uts46-hx@2.3.1: + resolution: {integrity: sha512-PWoF9Keq6laYdIRwwCdhTPl60xRqAloYNMQLiyUnG42VjT53oW07BXIRM+NK7eQjzXjAk2gUvX9caRxlnF9TAA==} + engines: {node: '>=4.0.0'} + + ieee754@1.2.1: + resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + immediate@3.3.0: + resolution: {integrity: sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==} + + immutable@4.3.7: + resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==} + + indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + interpret@1.4.0: + resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} + engines: {node: '>= 0.10'} + + invert-kv@1.0.0: + resolution: {integrity: sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==} + engines: {node: '>=0.10.0'} + + io-ts@1.10.4: + resolution: {integrity: sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==} + + ipaddr.js@1.9.1: + resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} + engines: {node: '>= 0.10'} + + is-arguments@1.2.0: + resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==} + engines: {node: '>= 0.4'} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-buffer@2.0.5: + resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} + engines: {node: '>=4'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fn@1.0.0: + resolution: {integrity: sha512-XoFPJQmsAShb3jEQRfzf2rqXavq7fIqF/jOekp308JlThqrODnMpweVSGilKTCXELfLhltGP2AGgbQGVP8F1dg==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@1.0.0: + resolution: {integrity: sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@2.0.0: + resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} + engines: {node: '>=4'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-function@1.0.2: + resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==} + + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-hex-prefixed@1.0.0: + resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==} + engines: {node: '>=6.5.0', npm: '>=3'} + + is-lower-case@1.1.3: + resolution: {integrity: sha512-+5A1e/WJpLLXZEDlgz4G//WYSHyQBD32qa4Jd3Lw06qQlv3fJHnp3YIHjTQSGzHMgzmVKz2ZP3rBxTHkPw/lxA==} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-obj@2.0.0: + resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} + engines: {node: '>=8'} + + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-stream@1.1.0: + resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} + engines: {node: '>=0.10.0'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-typedarray@1.0.0: + resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} + + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + + is-upper-case@1.1.2: + resolution: {integrity: sha512-GQYSJMgfeAmVwh9ixyk888l7OIhNAGKtY6QA+IrWlu9MDTCaXmeozOZ2S9Knj7bQwBO/H6J2kb+pbyTUiMNbsw==} + + is-utf8@0.2.1: + resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==} + + is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + + isarray@0.0.1: + resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + isomorphic-unfetch@3.1.0: + resolution: {integrity: sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==} + + isomorphic-ws@4.0.1: + resolution: {integrity: sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==} + peerDependencies: + ws: '*' + + isstream@0.1.2: + resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} + + js-cookie@2.2.1: + resolution: {integrity: sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==} + + js-sha3@0.5.7: + resolution: {integrity: sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==} + + js-sha3@0.8.0: + resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@3.14.2: + resolution: {integrity: sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==} + hasBin: true + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + jsbn@0.1.1: + resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-pointer@0.6.2: + resolution: {integrity: sha512-vLWcKbOaXlO+jvRy4qNd+TI1QUPZzfJj1tpJ3vAXDych5XJf93ftpUKe5pKCrzyIIwgBJcOcCVRUfqQP25afBw==} + + json-rpc-engine@5.4.0: + resolution: {integrity: sha512-rAffKbPoNDjuRnXkecTjnsE3xLLrb00rEkdgalINhaYVYIxDwWtvYBr9UFbhTvPB1B2qUOLoFd/cV6f4Q7mh7g==} + + json-rpc-random-id@1.0.1: + resolution: {integrity: sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + + json-schema-typed@7.0.3: + resolution: {integrity: sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A==} + + json-schema@0.4.0: + resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + + json-stable-stringify@1.3.0: + resolution: {integrity: sha512-qtYiSSFlwot9XHtF9bD9c7rwKjr+RecWT//ZnPvSmEjpV5mmPOCN4j8UjY5hbjNkOwZ/jQv3J6R1/pL7RwgMsg==} + engines: {node: '>= 0.4'} + + json-stream-stringify@3.1.6: + resolution: {integrity: sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==} + engines: {node: '>=7.10.1'} + + json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsonfile@2.4.0: + resolution: {integrity: sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==} + + jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + + jsonfile@6.2.0: + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} + + jsonify@0.0.1: + resolution: {integrity: sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==} + + jsonschema@1.5.0: + resolution: {integrity: sha512-K+A9hhqbn0f3pJX17Q/7H6yQfD/5OXgdrR5UE12gMXCiN9D5Xq2o5mddV2QEcX/bjla99ASsAAQUyMCCRWAEhw==} + + jsprim@1.4.2: + resolution: {integrity: sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==} + engines: {node: '>=0.6.0'} + + keccak@3.0.4: + resolution: {integrity: sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==} + engines: {node: '>=10.0.0'} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + + klaw-sync@6.0.0: + resolution: {integrity: sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==} + + klaw@1.3.1: + resolution: {integrity: sha512-TED5xi9gGQjGpNnvRWknrwAB1eL5GciPfVFOt3Vk1OJCVDQbzuSfrF3hkUQKlsgKrG1F+0t5W0m+Fje1jIt8rw==} + + lcid@1.0.0: + resolution: {integrity: sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==} + engines: {node: '>=0.10.0'} + + level-codec@7.0.1: + resolution: {integrity: sha512-Ua/R9B9r3RasXdRmOtd+t9TCOEIIlts+TN/7XTT2unhDaL6sJn83S3rUyljbr6lVtw49N3/yA0HHjpV6Kzb2aQ==} + deprecated: Superseded by level-transcoder (https://github.com/Level/community#faq) + + level-codec@9.0.2: + resolution: {integrity: sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==} + engines: {node: '>=6'} + deprecated: Superseded by level-transcoder (https://github.com/Level/community#faq) + + level-concat-iterator@2.0.1: + resolution: {integrity: sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + level-concat-iterator@3.1.0: + resolution: {integrity: sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ==} + engines: {node: '>=10'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + level-errors@1.0.5: + resolution: {integrity: sha512-/cLUpQduF6bNrWuAC4pwtUKA5t669pCsCi2XbmojG2tFeOr9j6ShtdDCtFFQO1DRt+EVZhx9gPzP9G2bUaG4ig==} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + level-errors@2.0.1: + resolution: {integrity: sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + level-iterator-stream@1.3.1: + resolution: {integrity: sha512-1qua0RHNtr4nrZBgYlpV0qHHeHpcRRWTxEZJ8xsemoHAXNL5tbooh4tPEEqIqsbWCAJBmUmkwYK/sW5OrFjWWw==} + + level-iterator-stream@4.0.2: + resolution: {integrity: sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==} + engines: {node: '>=6'} + + level-js@5.0.2: + resolution: {integrity: sha512-SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg==} + deprecated: Superseded by browser-level (https://github.com/Level/community#faq) + + level-packager@5.1.1: + resolution: {integrity: sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + level-supports@1.0.1: + resolution: {integrity: sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==} + engines: {node: '>=6'} + + level-supports@2.1.0: + resolution: {integrity: sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA==} + engines: {node: '>=10'} + + level-supports@4.0.1: + resolution: {integrity: sha512-PbXpve8rKeNcZ9C1mUicC9auIYFyGpkV9/i6g76tLgANwWhtG2v7I4xNBUlkn3lE2/dZF3Pi0ygYGtLc4RXXdA==} + engines: {node: '>=12'} + + level-transcoder@1.0.1: + resolution: {integrity: sha512-t7bFwFtsQeD8cl8NIoQ2iwxA0CL/9IFw7/9gAjOonH0PWTTiRfY7Hq+Ejbsxh86tXobDQ6IOiddjNYIfOBs06w==} + engines: {node: '>=12'} + + level-write-stream@1.0.0: + resolution: {integrity: sha512-bBNKOEOMl8msO+uIM9YX/gUO6ckokZ/4pCwTm/lwvs46x6Xs8Zy0sn3Vh37eDqse4mhy4fOMIb/JsSM2nyQFtw==} + + level-ws@0.0.0: + resolution: {integrity: sha512-XUTaO/+Db51Uiyp/t7fCMGVFOTdtLS/NIACxE/GHsij15mKzxksZifKVjlXDF41JMUP/oM1Oc4YNGdKnc3dVLw==} + + level@6.0.1: + resolution: {integrity: sha512-psRSqJZCsC/irNhfHzrVZbmPYXDcEYhA5TVNwr+V92jF44rbf86hqGp8fiT702FyiArScYIlPSBTDUASCVNSpw==} + engines: {node: '>=8.6.0'} + + leveldown@5.6.0: + resolution: {integrity: sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==} + engines: {node: '>=8.6.0'} + deprecated: Superseded by classic-level (https://github.com/Level/community#faq) + + levelup@1.3.9: + resolution: {integrity: sha512-VVGHfKIlmw8w1XqpGOAGwq6sZm2WwWLmlDcULkKWQXEA5EopA8OBNJ2Ck2v6bdk8HeEZSbCSEgzXadyQFm76sQ==} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + levelup@4.4.0: + resolution: {integrity: sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==} + engines: {node: '>=6'} + deprecated: Superseded by abstract-level (https://github.com/Level/community#faq) + + levn@0.3.0: + resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==} + engines: {node: '>= 0.8.0'} + + load-json-file@1.1.0: + resolution: {integrity: sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==} + engines: {node: '>=0.10.0'} + + locate-path@2.0.0: + resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} + engines: {node: '>=4'} + + locate-path@3.0.0: + resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} + engines: {node: '>=6'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash-es@4.17.23: + resolution: {integrity: sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==} + + lodash.assign@4.2.0: + resolution: {integrity: sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw==} + + lodash.camelcase@4.3.0: + resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} + + lodash.clonedeep@4.5.0: + resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} + + lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + + lodash.flatmap@4.5.0: + resolution: {integrity: sha512-/OcpcAGWlrZyoHGeHh3cAoa6nGdX6QYtmzNP84Jqol6UEQQ2gIaU3H+0eICcjcKGl0/XF8LWOujNn9lffsnaOg==} + + lodash.isequal@4.5.0: + resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} + deprecated: This package is deprecated. Use require('node:util').isDeepStrictEqual instead. + + lodash.sortby@4.7.0: + resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} + + lodash.truncate@4.4.2: + resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} + + lodash@4.17.23: + resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==} + + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + + loglevel@1.9.2: + resolution: {integrity: sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg==} + engines: {node: '>= 0.6.0'} + + long@4.0.0: + resolution: {integrity: sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + + lower-case-first@1.0.2: + resolution: {integrity: sha512-UuxaYakO7XeONbKrZf5FEgkantPf5DUqDayzP5VXZrtRPdH86s4kN47I8B3TW10S4QKiE3ziHNf3kRN//okHjA==} + + lower-case@1.1.4: + resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==} + + lowercase-keys@2.0.0: + resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} + engines: {node: '>=8'} + + lowercase-keys@3.0.0: + resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + + lru-cache@7.13.1: + resolution: {integrity: sha512-CHqbAq7NFlW3RSnoWXLJBxCWaZVBrfa9UEHId2M3AW8iEBurbqduNexEUCGc3SHc6iCYXNJCDi903LajSVAEPQ==} + engines: {node: '>=12'} + + lru_map@0.3.3: + resolution: {integrity: sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==} + + ltgt@2.2.1: + resolution: {integrity: sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==} + + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + + markdown-table@1.1.3: + resolution: {integrity: sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==} + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + md5.js@1.3.5: + resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} + + media-typer@0.3.0: + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} + engines: {node: '>= 0.6'} + + memdown@1.4.1: + resolution: {integrity: sha512-iVrGHZB8i4OQfM155xx8akvG9FIj+ht14DX5CQkCTG4EHzZ3d3sgckIf/Lm9ivZalEsFuEVnWv2B2WZvbrro2w==} + deprecated: Superseded by memory-level (https://github.com/Level/community#faq) + + memorystream@0.3.1: + resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} + engines: {node: '>= 0.10.0'} + + merge-descriptors@1.0.3: + resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + merkle-patricia-tree@2.3.2: + resolution: {integrity: sha512-81PW5m8oz/pz3GvsAwbauj7Y00rqm81Tzad77tHBwU7pIAtN+TJnMSOJhxBKflSVYhptMMb9RskhqHqrSm1V+g==} + + methods@1.1.2: + resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} + engines: {node: '>= 0.6'} + + micro-eth-signer@0.14.0: + resolution: {integrity: sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==} + + micro-ftch@0.3.1: + resolution: {integrity: sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==} + + micro-packed@0.7.3: + resolution: {integrity: sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mime@1.6.0: + resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} + engines: {node: '>=4'} + hasBin: true + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + mimic-fn@3.1.0: + resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==} + engines: {node: '>=8'} + + mimic-response@1.0.1: + resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} + engines: {node: '>=4'} + + mimic-response@3.1.0: + resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} + engines: {node: '>=10'} + + min-document@2.19.2: + resolution: {integrity: sha512-8S5I8db/uZN8r9HSLFVWPdJCvYOejMcEC82VIzNUc6Zkklf/d1gg2psfE79/vyhWOj4+J8MtwmoOz3TmvaGu5A==} + + minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + + minimalistic-crypto-utils@1.0.1: + resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + + minimatch@10.2.4: + resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} + engines: {node: 18 || 20 || >=22} + + minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + + minimatch@5.0.1: + resolution: {integrity: sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==} + engines: {node: '>=10'} + + minimatch@5.1.9: + resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} + engines: {node: '>=10'} + + minimatch@9.0.8: + resolution: {integrity: sha512-reYkDYtj/b19TeqbNZCV4q9t+Yxylf/rYBsLb42SXJatTv4/ylq5lEiAmhA/IToxO7NI2UzNMghHoHuaqDkAjw==} + engines: {node: '>=16 || 14 >=14.17'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + minipass@2.9.0: + resolution: {integrity: sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==} + + minizlib@1.3.3: + resolution: {integrity: sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==} + + mkdirp-promise@5.0.1: + resolution: {integrity: sha512-Hepn5kb1lJPtVW84RFT40YG1OddBNTOVUZR2bzQUHc+Z03en8/3uX0+060JDhcEzyO08HmipsN9DcnFMxhIL9w==} + engines: {node: '>=4'} + deprecated: This package is broken and no longer maintained. 'mkdirp' itself supports promises now, please switch to that. + + mkdirp@0.5.6: + resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + hasBin: true + + mkdirp@1.0.4: + resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} + engines: {node: '>=10'} + hasBin: true + + mkdirp@3.0.1: + resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} + engines: {node: '>=10'} + hasBin: true + + mnemonist@0.38.5: + resolution: {integrity: sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==} + + mocha@10.1.0: + resolution: {integrity: sha512-vUF7IYxEoN7XhQpFLxQAEMtE4W91acW4B6En9l97MwE9stL1A9gusXfoHZCLVHDUJ/7V5+lbCM6yMqzo5vNymg==} + engines: {node: '>= 14.0.0'} + hasBin: true + + mocha@10.8.2: + resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==} + engines: {node: '>= 14.0.0'} + hasBin: true + + mock-fs@4.14.0: + resolution: {integrity: sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==} + + module-error@1.0.2: + resolution: {integrity: sha512-0yuvsqSCv8LbaOKhnsQ/T5JhyFlCYLPXK3U2sgV10zoKQwzs/MyfuQUOZQ1V/6OCOJsK/TRgNVrPuPDqtdMFtA==} + engines: {node: '>=10'} + + ms@2.0.0: + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} + + ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + multibase@0.6.1: + resolution: {integrity: sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw==} + deprecated: This module has been superseded by the multiformats module + + multibase@0.7.0: + resolution: {integrity: sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg==} + deprecated: This module has been superseded by the multiformats module + + multicodec@0.5.7: + resolution: {integrity: sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA==} + deprecated: This module has been superseded by the multiformats module + + multicodec@1.0.4: + resolution: {integrity: sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg==} + deprecated: This module has been superseded by the multiformats module + + multihashes@0.4.21: + resolution: {integrity: sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw==} + + nano-base32@1.0.1: + resolution: {integrity: sha512-sxEtoTqAPdjWVGv71Q17koMFGsOMSiHsIFEvzOM7cNp8BXB4AnEwmDabm5dorusJf/v1z7QxaZYxUorU9RKaAw==} + + nano-json-stream-parser@0.1.2: + resolution: {integrity: sha512-9MqxMH/BSJC7dnLsEMPyfN5Dvoo49IsPFYMcHw3Bcfc2kN0lpHRBSzlMSVx4HGyJ7s9B31CyBTVehWJoQ8Ctew==} + + nanoid@3.3.3: + resolution: {integrity: sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + napi-macros@2.0.0: + resolution: {integrity: sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==} + + negotiator@0.6.3: + resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} + engines: {node: '>= 0.6'} + + neo-async@2.6.2: + resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + + next-tick@1.1.0: + resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} + + no-case@2.3.2: + resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==} + + node-abort-controller@3.1.1: + resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==} + + node-addon-api@2.0.2: + resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + + node-addon-api@5.1.0: + resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} + + node-emoji@1.11.0: + resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} + + node-fetch@1.7.3: + resolution: {integrity: sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==} + + node-fetch@2.6.7: + resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + node-gyp-build@4.1.1: + resolution: {integrity: sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==} + hasBin: true + + node-gyp-build@4.8.4: + resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} + hasBin: true + + node-interval-tree@1.3.3: + resolution: {integrity: sha512-K9vk96HdTK5fEipJwxSvIIqwTqr4e3HRJeJrNxBSeVMNSC/JWARRaX7etOLOuTmrRMeOI/K5TCJu3aWIwZiNTw==} + engines: {node: '>= 7.6.0'} + + node-releases@2.0.27: + resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} + + nofilter@1.0.4: + resolution: {integrity: sha512-N8lidFp+fCz+TD51+haYdbDGrcBWwuHX40F5+z0qkUjMJ5Tp+rdSuAkMJ9N9eoolDlEVTf6u5icM+cNKkKW2mA==} + engines: {node: '>=8'} + + nofilter@3.1.0: + resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} + engines: {node: '>=12.19'} + + nopt@3.0.6: + resolution: {integrity: sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==} + hasBin: true + + normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + normalize-url@6.1.0: + resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} + engines: {node: '>=10'} + + number-is-nan@1.0.1: + resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==} + engines: {node: '>=0.10.0'} + + number-to-bn@1.7.0: + resolution: {integrity: sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==} + engines: {node: '>=6.5.0', npm: '>=3'} + + oauth-sign@0.9.0: + resolution: {integrity: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@0.4.0: + resolution: {integrity: sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + obliterator@2.0.5: + resolution: {integrity: sha512-42CPE9AhahZRsMNslczq0ctAEtqk8Eka26QofnqC346BZdHDySk3LWka23LI7ULIw11NmltpiLagIq8gBozxTw==} + + oboe@2.1.5: + resolution: {integrity: sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==} + + on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} + engines: {node: '>= 0.8'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + + open@7.4.2: + resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} + engines: {node: '>=8'} + + optionator@0.8.3: + resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==} + engines: {node: '>= 0.8.0'} + + ordinal@1.0.3: + resolution: {integrity: sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==} + + original-require@1.0.1: + resolution: {integrity: sha512-5vdKMbE58WaE61uVD+PKyh8xdM398UnjPBLotW2sjG5MzHARwta/+NtMBCBA0t2WQblGYBvq5vsiZpWokwno+A==} + + os-locale@1.4.0: + resolution: {integrity: sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==} + engines: {node: '>=0.10.0'} + + os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + + p-cancelable@2.1.1: + resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} + engines: {node: '>=8'} + + p-cancelable@3.0.0: + resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==} + engines: {node: '>=12.20'} + + p-limit@1.3.0: + resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} + engines: {node: '>=4'} + + p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@2.0.0: + resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==} + engines: {node: '>=4'} + + p-locate@3.0.0: + resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} + engines: {node: '>=6'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-map@4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} + engines: {node: '>=10'} + + p-try@1.0.0: + resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==} + engines: {node: '>=4'} + + p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + + param-case@2.1.1: + resolution: {integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==} + + parse-cache-control@1.0.1: + resolution: {integrity: sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==} + + parse-headers@2.0.6: + resolution: {integrity: sha512-Tz11t3uKztEW5FEVZnj1ox8GKblWn+PvHY9TmJV5Mll2uHEwRdR/5Li1OlXoECjLYkApdhWy44ocONwXLiKO5A==} + + parse-json@2.2.0: + resolution: {integrity: sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==} + engines: {node: '>=0.10.0'} + + parseurl@1.3.3: + resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} + engines: {node: '>= 0.8'} + + pascal-case@2.0.1: + resolution: {integrity: sha512-qjS4s8rBOJa2Xm0jmxXiyh1+OFf6ekCWOvUaRgAQSktzlTbMotS0nmG9gyYAybCWBcuP4fsBeRCKNwGBnMe2OQ==} + + patch-package@8.0.1: + resolution: {integrity: sha512-VsKRIA8f5uqHQ7NGhwIna6Bx6D9s/1iXlA1hthBVBEbkq+t4kXD0HHt+rJhf/Z+Ci0F/HCB2hvn0qLdLG+Qxlw==} + engines: {node: '>=14', npm: '>5'} + hasBin: true + + path-case@2.1.1: + resolution: {integrity: sha512-Ou0N05MioItesaLr9q8TtHVWmJ6fxWdqKB2RohFmNWVyJ+2zeKIeDNWAN6B/Pe7wpzWChhZX6nONYmOnMeJQ/Q==} + + path-exists@2.1.0: + resolution: {integrity: sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==} + engines: {node: '>=0.10.0'} + + path-exists@3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} + engines: {node: '>=4'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-to-regexp@0.1.12: + resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==} + + path-type@1.1.0: + resolution: {integrity: sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==} + engines: {node: '>=0.10.0'} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + pathval@1.1.1: + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + + pbkdf2@3.1.5: + resolution: {integrity: sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ==} + engines: {node: '>= 0.10'} + + performance-now@2.1.0: + resolution: {integrity: sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pify@3.0.0: + resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} + engines: {node: '>=4'} + + pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + + pinkie-promise@2.0.1: + resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==} + engines: {node: '>=0.10.0'} + + pinkie@2.0.4: + resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==} + engines: {node: '>=0.10.0'} + + pkg-up@3.1.0: + resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==} + engines: {node: '>=8'} + + pluralize@8.0.0: + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + pouchdb-abstract-mapreduce@7.3.1: + resolution: {integrity: sha512-0zKXVFBvrfc1KnN0ggrB762JDmZnUpePHywo9Bq3Jy+L1FnoG7fXM5luFfvv5/T0gEw+ZTIwoocZECMnESBI9w==} + + pouchdb-adapter-leveldb-core@7.3.1: + resolution: {integrity: sha512-mxShHlqLMPz2gChrgtA9okV1ogFmQrRAoM/O4EN0CrQWPLXqYtpL1f7sI2asIvFe7SmpnvbLx7kkZyFmLTfwjA==} + + pouchdb-adapter-memory@7.3.1: + resolution: {integrity: sha512-iHdWGJAHONqQv0we3Oi1MYen69ZS8McLW9wUyaAYcWTJnAIIAr2ZM0/TeTDVSHfMUwYqEYk7X8jRtJZEMwLnwg==} + + pouchdb-adapter-utils@7.3.1: + resolution: {integrity: sha512-uKLG6dClwTs/sLIJ4WkLAi9wlnDBpOnfyhpeAgOjlOGN/XLz5nKHrA4UJRnURDyc+uv79S9r/Unc4hVpmbSPUw==} + + pouchdb-binary-utils@7.3.1: + resolution: {integrity: sha512-crZJNfAEOnUoRk977Qtmk4cxEv6sNKllQ6vDDKgQrQLFjMUXma35EHzNyIJr1s76J77Q4sqKQAmxz9Y40yHGtw==} + + pouchdb-collate@7.3.1: + resolution: {integrity: sha512-o4gyGqDMLMSNzf6EDTr3eHaH/JRMoqRhdc+eV+oA8u00nTBtr9wD+jypVe2LbgKLJ4NWqx2qVkXiTiQdUFtsLQ==} + + pouchdb-collections@7.3.1: + resolution: {integrity: sha512-yUyDqR+OJmtwgExOSJegpBJXDLAEC84TWnbAYycyh+DZoA51Yw0+XVQF5Vh8Ii90/Ut2xo88fmrmp0t6kqom8w==} + + pouchdb-debug@7.2.1: + resolution: {integrity: sha512-eP3ht/AKavLF2RjTzBM6S9gaI2/apcW6xvaKRQhEdOfiANqerFuksFqHCal3aikVQuDO+cB/cw+a4RyJn/glBw==} + + pouchdb-errors@7.3.1: + resolution: {integrity: sha512-Zktz4gnXEUcZcty8FmyvtYUYsHskoST05m6H5/E2gg/0mCfEXq/XeyyLkZHaZmqD0ZPS9yNmASB1VaFWEKEaDw==} + + pouchdb-fetch@7.3.1: + resolution: {integrity: sha512-205xAtvdHRPQ4fp1h9+RmT9oQabo9gafuPmWsS9aEl3ER54WbY8Vaj1JHZGbU4KtMTYvW7H5088zLS7Nrusuag==} + + pouchdb-find@7.3.1: + resolution: {integrity: sha512-AeqUfAVY1c7IFaY36BRT0vIz9r4VTKq/YOWTmiqndOZUQ/pDGxyO2fNFal6NN3PyYww0JijlD377cPvhnrhJVA==} + + pouchdb-json@7.3.1: + resolution: {integrity: sha512-AyOKsmc85/GtHjMZyEacqzja8qLVfycS1hh1oskR+Bm5PIITX52Fb8zyi0hEetV6VC0yuGbn0RqiLjJxQePeqQ==} + + pouchdb-mapreduce-utils@7.3.1: + resolution: {integrity: sha512-oUMcq82+4pTGQ6dtrhgORHOVHZSr6w/5tFIUGlv7RABIDvJarL4snMawADjlpiEwPdiQ/ESG8Fqt8cxqvqsIgg==} + + pouchdb-md5@7.3.1: + resolution: {integrity: sha512-aDV8ui/mprnL3xmt0gT/81DFtTtJiKyn+OxIAbwKPMfz/rDFdPYvF0BmDC9QxMMzGfkV+JJUjU6at0PPs2mRLg==} + + pouchdb-merge@7.3.1: + resolution: {integrity: sha512-FeK3r35mKimokf2PQ2tUI523QWyZ4lYZ0Yd75FfSch/SPY6wIokz5XBZZ6PHdu5aOJsEKzoLUxr8CpSg9DhcAw==} + + pouchdb-selector-core@7.3.1: + resolution: {integrity: sha512-HBX+nNGXcaL9z0uNpwSMRq2GNZd3EZXW+fe9rJHS0hvJohjZL7aRJLoaXfEdHPRTNW+CpjM3Rny60eGekQdI/w==} + + pouchdb-utils@7.3.1: + resolution: {integrity: sha512-R3hHBo1zTdTu/NFs3iqkcaQAPwhIH0gMIdfVKd5lbDYlmP26rCG5pdS+v7NuoSSFLJ4xxnaGV+Gjf4duYsJ8wQ==} + + pouchdb@7.3.0: + resolution: {integrity: sha512-OwsIQGXsfx3TrU1pLruj6PGSwFH+h5k4hGNxFkZ76Um7/ZI8F5TzUHFrpldVVIhfXYi2vP31q0q7ot1FSLFYOw==} + + precond@0.2.3: + resolution: {integrity: sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==} + engines: {node: '>= 0.6'} + + prelude-ls@1.1.2: + resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==} + engines: {node: '>= 0.8.0'} + + prettier@2.8.8: + resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} + engines: {node: '>=10.13.0'} + hasBin: true + + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + + process@0.11.10: + resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} + engines: {node: '>= 0.6.0'} + + promise-to-callback@1.0.0: + resolution: {integrity: sha512-uhMIZmKM5ZteDMfLgJnoSq9GCwsNKrYau73Awf1jIy6/eUcuuZ3P+CD9zUv0kJsIUbU+x6uLNIhXhLHDs1pNPA==} + engines: {node: '>=0.10.0'} + + promise@8.3.0: + resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==} + + proper-lockfile@4.1.2: + resolution: {integrity: sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==} + + proxy-addr@2.0.7: + resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} + engines: {node: '>= 0.10'} + + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + + prr@1.0.1: + resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} + + psl@1.15.0: + resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} + + pump@3.0.3: + resolution: {integrity: sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==} + + punycode@2.1.0: + resolution: {integrity: sha512-Yxz2kRwT90aPiWEMHVYnEf4+rhwF1tBmmZ4KepCP+Wkium9JxtWnUm1nqGwpiAHr/tnTSeHqr3wb++jgSkXjhA==} + engines: {node: '>=6'} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + pure-rand@5.0.5: + resolution: {integrity: sha512-BwQpbqxSCBJVpamI6ydzcKqyFmnd5msMWUGvzXLm1aXvusbbgkbOto/EUPM00hjveJEaJtdbhUjKSzWRhQVkaw==} + + qs@6.14.2: + resolution: {integrity: sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q==} + engines: {node: '>=0.6'} + + qs@6.15.0: + resolution: {integrity: sha512-mAZTtNCeetKMH+pSjrb76NAM8V9a05I9aBZOHztWy/UqcJdQYNsf59vrRKWnojAT9Y+GbIvoTBC++CPHqpDBhQ==} + engines: {node: '>=0.6'} + + qs@6.5.5: + resolution: {integrity: sha512-mzR4sElr1bfCaPJe7m8ilJ6ZXdDaGoObcYR0ZHSsktM/Lt21MVHj5De30GQH2eiZ1qGRTO7LCAzQsUeXTNexWQ==} + engines: {node: '>=0.6'} + + query-string@5.1.1: + resolution: {integrity: sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==} + engines: {node: '>=0.10.0'} + + querystringify@2.2.0: + resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + quick-lru@5.1.1: + resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} + engines: {node: '>=10'} + + randombytes@2.1.0: + resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} + + range-parser@1.2.1: + resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} + engines: {node: '>= 0.6'} + + raw-body@2.5.3: + resolution: {integrity: sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==} + engines: {node: '>= 0.8'} + + read-pkg-up@1.0.1: + resolution: {integrity: sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==} + engines: {node: '>=0.10.0'} + + read-pkg@1.1.0: + resolution: {integrity: sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==} + engines: {node: '>=0.10.0'} + + readable-stream@0.0.4: + resolution: {integrity: sha512-azrivNydKRYt7zwLV5wWUK7YzKTWs3q87xSmY6DlHapPrCvaT6ZrukvM5erV+yCSSPmZT8zkSdttOHQpWWm9zw==} + + readable-stream@1.0.34: + resolution: {integrity: sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==} + + readable-stream@1.1.14: + resolution: {integrity: sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==} + + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readable-stream@3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} + engines: {node: '>= 6'} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + readdirp@4.1.2: + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} + engines: {node: '>= 14.18.0'} + + rechoir@0.6.2: + resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} + engines: {node: '>= 0.10'} + + recursive-readdir@2.2.3: + resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} + engines: {node: '>=6.0.0'} + + reduce-flatten@2.0.0: + resolution: {integrity: sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==} + engines: {node: '>=6'} + + redux-saga@1.0.0: + resolution: {integrity: sha512-GvJWs/SzMvEQgeaw6sRMXnS2FghlvEGsHiEtTLpJqc/FHF3I5EE/B+Hq5lyHZ8LSoT2r/X/46uWvkdCnK9WgHA==} + + redux@3.7.2: + resolution: {integrity: sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==} + + req-cwd@2.0.0: + resolution: {integrity: sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ==} + engines: {node: '>=4'} + + req-from@2.0.0: + resolution: {integrity: sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA==} + engines: {node: '>=4'} + + request@2.88.2: + resolution: {integrity: sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==} + engines: {node: '>= 6'} + deprecated: request has been deprecated, see https://github.com/request/request/issues/3142 + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + require-from-string@1.2.1: + resolution: {integrity: sha512-H7AkJWMobeskkttHyhTVtS0fxpFLjxhbfMa6Bk3wimP7sdPRGL3EyCg3sAQenFfAe+xQ+oAc85Nmtvq0ROM83Q==} + engines: {node: '>=0.10.0'} + + require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + + require-main-filename@1.0.1: + resolution: {integrity: sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==} + + requires-port@1.0.0: + resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} + + reselect-tree@1.3.7: + resolution: {integrity: sha512-kZN+C1cVJ6fFN2smSb0l4UvYZlRzttgnu183svH4NrU22cBY++ikgr2QT75Uuk4MYpv5gXSVijw4c5U6cx6GKg==} + + reselect@4.1.8: + resolution: {integrity: sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==} + + resolve-alpn@1.2.1: + resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} + + resolve-from@3.0.0: + resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==} + engines: {node: '>=4'} + + resolve@1.1.7: + resolution: {integrity: sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==} + + resolve@1.17.0: + resolution: {integrity: sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==} + + resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} + engines: {node: '>= 0.4'} + hasBin: true + + responselike@2.0.1: + resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} + + restore-cursor@3.1.0: + resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} + engines: {node: '>=8'} + + retry@0.12.0: + resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} + engines: {node: '>= 4'} + + retry@0.13.1: + resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==} + engines: {node: '>= 4'} + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rimraf@2.7.1: + resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + + ripemd160-min@0.0.6: + resolution: {integrity: sha512-+GcJgQivhs6S9qvLogusiTcS9kQUfgR75whKuy5jIhuiOfQuJ8fjqxV6EGD5duH1Y/FawFUMtMhyeq3Fbnib8A==} + engines: {node: '>=8'} + + ripemd160@2.0.3: + resolution: {integrity: sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==} + engines: {node: '>= 0.8'} + + rlp@2.2.7: + resolution: {integrity: sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==} + hasBin: true + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + rustbn.js@0.2.0: + resolution: {integrity: sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==} + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safe-buffer@5.2.1: + resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + + safe-event-emitter@1.0.1: + resolution: {integrity: sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==} + deprecated: Renamed to @metamask/safe-event-emitter + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + sc-istanbul@0.4.6: + resolution: {integrity: sha512-qJFF/8tW/zJsbyfh/iT/ZM5QNHE3CXxtLJbZsL+CzdJLBsPD7SedJZoUA4d8iAcN2IoMp/Dx80shOOd2x96X/g==} + hasBin: true + + scrypt-js@2.0.4: + resolution: {integrity: sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==} + + scrypt-js@3.0.1: + resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==} + + secp256k1@4.0.4: + resolution: {integrity: sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==} + engines: {node: '>=18.0.0'} + + semaphore@1.1.0: + resolution: {integrity: sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==} + engines: {node: '>=0.8.0'} + + semver@5.4.1: + resolution: {integrity: sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==} + hasBin: true + + semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + engines: {node: '>=10'} + hasBin: true + + send@0.19.2: + resolution: {integrity: sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==} + engines: {node: '>= 0.8.0'} + + sentence-case@2.1.1: + resolution: {integrity: sha512-ENl7cYHaK/Ktwk5OTD+aDbQ3uC8IByu/6Bkg+HDv8Mm+XnBnppVNalcfJTNsp1ibstKh030/JKQQWglDvtKwEQ==} + + serialize-javascript@6.0.0: + resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} + + serialize-javascript@6.0.2: + resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} + + serve-static@1.16.3: + resolution: {integrity: sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==} + engines: {node: '>= 0.8.0'} + + servify@0.1.12: + resolution: {integrity: sha512-/xE6GvsKKqyo1BAY+KxOWXcLpPsUUyji7Qg3bVD7hh1eRze5bR1uYiuDA/k3Gof1s9BTzQZEJK8sNcNGFIzeWw==} + engines: {node: '>=6'} + + set-blocking@2.0.0: + resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-immediate-shim@1.0.1: + resolution: {integrity: sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ==} + engines: {node: '>=0.10.0'} + + setimmediate@1.0.4: + resolution: {integrity: sha512-/TjEmXQVEzdod/FFskf3o7oOAsGhHf2j1dZqRFbDzq4F3mvvxflIIi4Hd3bLQE9y/CpwqfSQam5JakI/mi3Pog==} + + setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} + + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + + sha.js@2.4.12: + resolution: {integrity: sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==} + engines: {node: '>= 0.10'} + hasBin: true + + sha1@1.1.1: + resolution: {integrity: sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==} + + sha3@2.1.4: + resolution: {integrity: sha512-S8cNxbyb0UGUM2VhRD4Poe5N58gJnJsLJ5vC7FYWGUmGhcsj4++WaIOBFVDxlG0W3To6xBuiRh+i0Qp2oNCOtg==} + + shallowequal@1.1.0: + resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + shelljs@0.8.5: + resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} + engines: {node: '>=4'} + hasBin: true + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + simple-concat@1.0.1: + resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} + + simple-get@2.8.2: + resolution: {integrity: sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==} + + slash@2.0.0: + resolution: {integrity: sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==} + engines: {node: '>=6'} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + slice-ansi@4.0.0: + resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} + engines: {node: '>=10'} + + snake-case@2.1.0: + resolution: {integrity: sha512-FMR5YoPFwOLuh4rRz92dywJjyKYZNLpMn1R5ujVpIYkbA9p01fq8RMg0FkO4M+Yobt4MjHeLTJVm5xFFBHSV2Q==} + + solc@0.4.26: + resolution: {integrity: sha512-o+c6FpkiHd+HPjmjEVpQgH7fqZ14tJpXhho+/bQXlXbliLIS/xjXb42Vxh+qQY1WCSTMQ0+a5vR9vi0MfhU6mA==} + hasBin: true + + solc@0.8.26: + resolution: {integrity: sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==} + engines: {node: '>=10.0.0'} + hasBin: true + + solidity-ast@0.4.61: + resolution: {integrity: sha512-OYBJYcYyG7gLV0VuXl9CUrvgJXjV/v0XnR4+1YomVe3q+QyENQXJJxAEASUz4vN6lMAl+C8RSRSr5MBAz09f6w==} + + solidity-coverage@0.8.17: + resolution: {integrity: sha512-5P8vnB6qVX9tt1MfuONtCTEaEGO/O4WuEidPHIAJjx4sktHHKhO3rFvnE0q8L30nWJPTrcqGQMT7jpE29B2qow==} + hasBin: true + peerDependencies: + hardhat: ^2.11.0 + + source-map-support@0.5.21: + resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + + source-map@0.2.0: + resolution: {integrity: sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA==} + engines: {node: '>=0.8.0'} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + spark-md5@3.0.2: + resolution: {integrity: sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==} + + spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + + spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} + + spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + + spdx-license-ids@3.0.23: + resolution: {integrity: sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==} + + sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + + sshpk@1.18.0: + resolution: {integrity: sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==} + engines: {node: '>=0.10.0'} + hasBin: true + + stacktrace-parser@0.1.11: + resolution: {integrity: sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==} + engines: {node: '>=6'} + + statuses@2.0.2: + resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} + engines: {node: '>= 0.8'} + + strict-uri-encode@1.1.0: + resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==} + engines: {node: '>=0.10.0'} + + string-format@2.0.0: + resolution: {integrity: sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==} + + string-width@1.0.2: + resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==} + engines: {node: '>=0.10.0'} + + string-width@2.1.1: + resolution: {integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==} + engines: {node: '>=4'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + + string_decoder@0.10.31: + resolution: {integrity: sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==} + + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + string_decoder@1.3.0: + resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} + + strip-ansi@3.0.1: + resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} + engines: {node: '>=0.10.0'} + + strip-ansi@4.0.0: + resolution: {integrity: sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==} + engines: {node: '>=4'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} + engines: {node: '>=12'} + + strip-bom@2.0.0: + resolution: {integrity: sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==} + engines: {node: '>=0.10.0'} + + strip-hex-prefix@1.0.0: + resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==} + engines: {node: '>=6.5.0', npm: '>=3'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + sublevel-pouchdb@7.3.1: + resolution: {integrity: sha512-n+4fK72F/ORdqPwoGgMGYeOrW2HaPpW9o9k80bT1B3Cim5BSvkKkr9WbWOWynni/GHkbCEdvLVFJL1ktosAdhQ==} + + supports-color@3.2.3: + resolution: {integrity: sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==} + engines: {node: '>=0.8.0'} + + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-color@8.1.1: + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} + engines: {node: '>=10'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + swap-case@1.1.2: + resolution: {integrity: sha512-BAmWG6/bx8syfc6qXPprof3Mn5vQgf5dwdUNJhsNqU9WdPt5P+ES/wQ5bxfijy8zwZgZZHslC3iAsxsuQMCzJQ==} + + swarm-js@0.1.42: + resolution: {integrity: sha512-BV7c/dVlA3R6ya1lMlSSNPLYrntt0LUq4YMgy3iwpCIc6rZnS5W2wUoctarZ5pXlpKtxDDf9hNziEkcfrxdhqQ==} + + symbol-observable@1.2.0: + resolution: {integrity: sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==} + engines: {node: '>=0.10.0'} + + sync-request@6.1.0: + resolution: {integrity: sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==} + engines: {node: '>=8.0.0'} + + sync-rpc@1.3.6: + resolution: {integrity: sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==} + + table-layout@1.0.2: + resolution: {integrity: sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==} + engines: {node: '>=8.0.0'} + + table@6.9.0: + resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==} + engines: {node: '>=10.0.0'} + + tar@4.4.19: + resolution: {integrity: sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==} + engines: {node: '>=4.5'} + deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me + + testrpc@0.0.1: + resolution: {integrity: sha512-afH1hO+SQ/VPlmaLUFj2636QMeDvPCeQMc/9RBMW0IfjNe9gFD9Ra3ShqYkB7py0do1ZcCna/9acHyzTJ+GcNA==} + deprecated: testrpc has been renamed to ganache-cli, please use this package from now on. + + then-request@6.0.2: + resolution: {integrity: sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==} + engines: {node: '>=6.0.0'} + + through2@3.0.2: + resolution: {integrity: sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==} + + timed-out@4.0.1: + resolution: {integrity: sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==} + engines: {node: '>=0.10.0'} + + tiny-typed-emitter@2.1.0: + resolution: {integrity: sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA==} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + title-case@2.1.1: + resolution: {integrity: sha512-EkJoZ2O3zdCz3zJsYCsxyq2OC5hrxR9mfdd5I+w8h/tmFfeOxJ+vvkxsKxdmN0WtS9zLdHEgfgVOiMVgv+Po4Q==} + + tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} + + tmp@0.2.5: + resolution: {integrity: sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==} + engines: {node: '>=14.14'} + + to-buffer@1.2.2: + resolution: {integrity: sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==} + engines: {node: '>= 0.4'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + + tough-cookie@2.5.0: + resolution: {integrity: sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==} + engines: {node: '>=0.8'} + + tough-cookie@4.1.4: + resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} + engines: {node: '>=6'} + + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + + truffle-assertions@0.9.2: + resolution: {integrity: sha512-9g2RhaxU2F8DeWhqoGQvL/bV8QVoSnQ6PY+ZPvYRP5eF7+/8LExb4mjLx/FeliLTjc3Tv1SABG05Gu5qQ/ErmA==} + deprecated: Truffle was sunset, so this package will be deprecated alongside Truffle + + truffle@5.11.5: + resolution: {integrity: sha512-yCa2uWs5DmL0spuJUuIMtnVayRQrVuWLtcRXHMB0NLrtWDcRo7VM9RViveV4+oi9LdZ8VpFmmqHGm43LbzUxOA==} + engines: {node: ^16.20 || ^18.16 || >=20} + hasBin: true + + ts-command-line-args@2.5.1: + resolution: {integrity: sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw==} + hasBin: true + + ts-essentials@7.0.3: + resolution: {integrity: sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==} + peerDependencies: + typescript: '>=3.7.0' + + ts-node@10.9.2: + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + + tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + + tslib@2.4.1: + resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} + + tslib@2.7.0: + resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + tsort@0.0.1: + resolution: {integrity: sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==} + + tunnel-agent@0.6.0: + resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} + + tweetnacl-util@0.15.1: + resolution: {integrity: sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==} + + tweetnacl@0.14.5: + resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==} + + tweetnacl@1.0.3: + resolution: {integrity: sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==} + + type-check@0.3.2: + resolution: {integrity: sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==} + engines: {node: '>= 0.8.0'} + + type-detect@4.1.0: + resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} + engines: {node: '>=4'} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + + type-fest@0.7.1: + resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} + engines: {node: '>=8'} + + type-is@1.6.18: + resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} + engines: {node: '>= 0.6'} + + type@2.7.3: + resolution: {integrity: sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==} + + typechain@8.3.2: + resolution: {integrity: sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==} + hasBin: true + peerDependencies: + typescript: '>=4.3.0' + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typedarray-to-buffer@3.1.5: + resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} + + typedarray@0.0.6: + resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} + + typescript-compare@0.0.2: + resolution: {integrity: sha512-8ja4j7pMHkfLJQO2/8tut7ub+J3Lw2S3061eJLFQcvs3tsmJKp8KG5NtpLn7KcY2w08edF74BSVN7qJS0U6oHA==} + + typescript-logic@0.0.0: + resolution: {integrity: sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q==} + + typescript-tuple@2.2.1: + resolution: {integrity: sha512-Zcr0lbt8z5ZdEzERHAMAniTiIKerFCMgd7yjq1fPnDJ43et/k9twIFQMUYff9k5oXcsQ0WpvFcgzK2ZKASoW6Q==} + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + typical@4.0.0: + resolution: {integrity: sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==} + engines: {node: '>=8'} + + typical@5.2.0: + resolution: {integrity: sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==} + engines: {node: '>=8'} + + uglify-js@3.19.3: + resolution: {integrity: sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==} + engines: {node: '>=0.8.0'} + hasBin: true + + ultron@1.1.1: + resolution: {integrity: sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==} + + undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + + undici-types@7.18.2: + resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} + + undici@5.29.0: + resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==} + engines: {node: '>=14.0'} + + unfetch@4.2.0: + resolution: {integrity: sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==} + + universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + + universalify@0.2.0: + resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} + engines: {node: '>= 4.0.0'} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + + update-browserslist-db@1.2.3: + resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + upper-case-first@1.1.2: + resolution: {integrity: sha512-wINKYvI3Db8dtjikdAqoBbZoP6Q+PZUyfMR7pmwHzjC2quzSkUq5DmPrTtPEqHaz8AGtmsB4TqwapMTM1QAQOQ==} + + upper-case@1.1.3: + resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==} + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + url-parse@1.5.10: + resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + + url-set-query@1.0.0: + resolution: {integrity: sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==} + + utf-8-validate@5.0.10: + resolution: {integrity: sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==} + engines: {node: '>=6.14.2'} + + utf-8-validate@5.0.7: + resolution: {integrity: sha512-vLt1O5Pp+flcArHGIyKEQq883nBt8nN8tVBcoL0qUXj2XT1n7p70yGIq2VK98I5FdZ1YHc0wk/koOnHjnXWk1Q==} + engines: {node: '>=6.14.2'} + + utf-8-validate@6.0.3: + resolution: {integrity: sha512-uIuGf9TWQ/y+0Lp+KGZCMuJWc3N9BHA+l/UmHd/oUHwJJDeysyTRxNQVkbzsIWfGFbRe3OcgML/i0mvVRPOyDA==} + engines: {node: '>=6.14.2'} + + utf8@3.0.0: + resolution: {integrity: sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + util@0.12.5: + resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} + + utils-merge@1.0.1: + resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} + engines: {node: '>= 0.4.0'} + + uuid@2.0.1: + resolution: {integrity: sha512-nWg9+Oa3qD2CQzHIP4qKUqwNfzKn8P0LtFhotaCTFchsV7ZfDhAybeip/HZVeMIpZi9JgY1E3nUlwaCmZT1sEg==} + deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. + + uuid@3.4.0: + resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} + deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. + hasBin: true + + uuid@8.3.2: + resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} + hasBin: true + + uuid@9.0.1: + resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} + hasBin: true + + v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + + validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + + value-or-promise@1.0.11: + resolution: {integrity: sha512-41BrgH+dIbCFXClcSapVs5M6GkENd3gQOJpEfPDNa71LsUGMXDL0jMWpI/Rh7WhX+Aalfz2TTS3Zt5pUsbnhLg==} + engines: {node: '>=12'} + + value-or-promise@1.0.12: + resolution: {integrity: sha512-Z6Uz+TYwEqE7ZN50gwn+1LCVo9ZVrpxRPOhOLnncYkY1ZzOYtrX8Fwf/rFktZ8R5mJms6EZf5TqNOMeZmnPq9Q==} + engines: {node: '>=12'} + + varint@5.0.2: + resolution: {integrity: sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==} + + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + + verror@1.10.0: + resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==} + engines: {'0': node >=0.6.0} + + vuvuzela@1.0.3: + resolution: {integrity: sha512-Tm7jR1xTzBbPW+6y1tknKiEhz04Wf/1iZkcTJjSFcpNko43+dFW6+OOeQe9taJIug3NdfUAjFKgUSyQrIKaDvQ==} + + web3-bzz@1.10.0: + resolution: {integrity: sha512-o9IR59io3pDUsXTsps5pO5hW1D5zBmg46iNc2t4j2DkaYHNdDLwk2IP9ukoM2wg47QILfPEJYzhTfkS/CcX0KA==} + engines: {node: '>=8.0.0'} + + web3-core-helpers@1.10.0: + resolution: {integrity: sha512-pIxAzFDS5vnbXvfvLSpaA1tfRykAe9adw43YCKsEYQwH0gCLL0kMLkaCX3q+Q8EVmAh+e1jWL/nl9U0de1+++g==} + engines: {node: '>=8.0.0'} + + web3-core-method@1.10.0: + resolution: {integrity: sha512-4R700jTLAMKDMhQ+nsVfIXvH6IGJlJzGisIfMKWAIswH31h5AZz7uDUW2YctI+HrYd+5uOAlS4OJeeT9bIpvkA==} + engines: {node: '>=8.0.0'} + + web3-core-promievent@1.10.0: + resolution: {integrity: sha512-68N7k5LWL5R38xRaKFrTFT2pm2jBNFaM4GioS00YjAKXRQ3KjmhijOMG3TICz6Aa5+6GDWYelDNx21YAeZ4YTg==} + engines: {node: '>=8.0.0'} + + web3-core-requestmanager@1.10.0: + resolution: {integrity: sha512-3z/JKE++Os62APml4dvBM+GAuId4h3L9ckUrj7ebEtS2AR0ixyQPbrBodgL91Sv7j7cQ3Y+hllaluqjguxvSaQ==} + engines: {node: '>=8.0.0'} + + web3-core-subscriptions@1.10.0: + resolution: {integrity: sha512-HGm1PbDqsxejI075gxBc5OSkwymilRWZufIy9zEpnWKNmfbuv5FfHgW1/chtJP6aP3Uq2vHkvTDl3smQBb8l+g==} + engines: {node: '>=8.0.0'} + + web3-core@1.10.0: + resolution: {integrity: sha512-fWySwqy2hn3TL89w5TM8wXF1Z2Q6frQTKHWmP0ppRQorEK8NcHJRfeMiv/mQlSKoTS1F6n/nv2uyZsixFycjYQ==} + engines: {node: '>=8.0.0'} + + web3-eth-abi@1.10.0: + resolution: {integrity: sha512-cwS+qRBWpJ43aI9L3JS88QYPfFcSJJ3XapxOQ4j40v6mk7ATpA8CVK1vGTzpihNlOfMVRBkR95oAj7oL6aiDOg==} + engines: {node: '>=8.0.0'} + + web3-eth-accounts@1.10.0: + resolution: {integrity: sha512-wiq39Uc3mOI8rw24wE2n15hboLE0E9BsQLdlmsL4Zua9diDS6B5abXG0XhFcoNsXIGMWXVZz4TOq3u4EdpXF/Q==} + engines: {node: '>=8.0.0'} + + web3-eth-contract@1.10.0: + resolution: {integrity: sha512-MIC5FOzP/+2evDksQQ/dpcXhSqa/2hFNytdl/x61IeWxhh6vlFeSjq0YVTAyIzdjwnL7nEmZpjfI6y6/Ufhy7w==} + engines: {node: '>=8.0.0'} + + web3-eth-ens@1.10.0: + resolution: {integrity: sha512-3hpGgzX3qjgxNAmqdrC2YUQMTfnZbs4GeLEmy8aCWziVwogbuqQZ+Gzdfrym45eOZodk+lmXyLuAdqkNlvkc1g==} + engines: {node: '>=8.0.0'} + + web3-eth-iban@1.10.0: + resolution: {integrity: sha512-0l+SP3IGhInw7Q20LY3IVafYEuufo4Dn75jAHT7c2aDJsIolvf2Lc6ugHkBajlwUneGfbRQs/ccYPQ9JeMUbrg==} + engines: {node: '>=8.0.0'} + + web3-eth-personal@1.10.0: + resolution: {integrity: sha512-anseKn98w/d703eWq52uNuZi7GhQeVjTC5/svrBWEKob0WZ5kPdo+EZoFN0sp5a5ubbrk/E0xSl1/M5yORMtpg==} + engines: {node: '>=8.0.0'} + + web3-eth@1.10.0: + resolution: {integrity: sha512-Z5vT6slNMLPKuwRyKGbqeGYC87OAy8bOblaqRTgg94CXcn/mmqU7iPIlG4506YdcdK3x6cfEDG7B6w+jRxypKA==} + engines: {node: '>=8.0.0'} + + web3-net@1.10.0: + resolution: {integrity: sha512-NLH/N3IshYWASpxk4/18Ge6n60GEvWBVeM8inx2dmZJVmRI6SJIlUxbL8jySgiTn3MMZlhbdvrGo8fpUW7a1GA==} + engines: {node: '>=8.0.0'} + + web3-providers-http@1.10.0: + resolution: {integrity: sha512-eNr965YB8a9mLiNrkjAWNAPXgmQWfpBfkkn7tpEFlghfww0u3I0tktMZiaToJVcL2+Xq+81cxbkpeWJ5XQDwOA==} + engines: {node: '>=8.0.0'} + + web3-providers-ipc@1.10.0: + resolution: {integrity: sha512-OfXG1aWN8L1OUqppshzq8YISkWrYHaATW9H8eh0p89TlWMc1KZOL9vttBuaBEi96D/n0eYDn2trzt22bqHWfXA==} + engines: {node: '>=8.0.0'} + + web3-providers-ws@1.10.0: + resolution: {integrity: sha512-sK0fNcglW36yD5xjnjtSGBnEtf59cbw4vZzJ+CmOWIKGIR96mP5l684g0WD0Eo+f4NQc2anWWXG74lRc9OVMCQ==} + engines: {node: '>=8.0.0'} + + web3-shh@1.10.0: + resolution: {integrity: sha512-uNUUuNsO2AjX41GJARV9zJibs11eq6HtOe6Wr0FtRUcj8SN6nHeYIzwstAvJ4fXA53gRqFMTxdntHEt9aXVjpg==} + engines: {node: '>=8.0.0'} + + web3-utils@1.10.0: + resolution: {integrity: sha512-kSaCM0uMcZTNUSmn5vMEhlo02RObGNRRCkdX0V9UTAU0+lrvn0HSaudyCo6CQzuXUsnuY2ERJGCGPfeWmv19Rg==} + engines: {node: '>=8.0.0'} + + web3-utils@1.10.4: + resolution: {integrity: sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A==} + engines: {node: '>=8.0.0'} + + web3@1.10.0: + resolution: {integrity: sha512-YfKY9wSkGcM8seO+daR89oVTcbu18NsVfvOngzqMYGUU0pPSQmE57qQDvQzUeoIOHAnXEBNzrhjQJmm8ER0rng==} + engines: {node: '>=8.0.0'} + + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + + websocket@1.0.35: + resolution: {integrity: sha512-/REy6amwPZl44DDzvRCkaI1q1bIiQB0mEFQLUrhz3z2EK91cp3n72rAjUlrTP0zV22HJIUOVHQGPxhFRjxjt+Q==} + engines: {node: '>=4.0.0'} + + whatwg-fetch@2.0.4: + resolution: {integrity: sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==} + + whatwg-mimetype@3.0.0: + resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} + engines: {node: '>=12'} + + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + + which-module@1.0.0: + resolution: {integrity: sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==} + + which-typed-array@1.1.20: + resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==} + engines: {node: '>= 0.4'} + + which@1.3.1: + resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} + hasBin: true + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + widest-line@3.1.0: + resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} + engines: {node: '>=8'} + + window-size@0.2.0: + resolution: {integrity: sha512-UD7d8HFA2+PZsbKyaOCEy8gMh1oDtHgJh1LfgjQ4zVXmYjAT/kvz3PueITKuqDiIXQe7yzpPnxX3lNc+AhQMyw==} + engines: {node: '>= 0.10.0'} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wordwrap@1.0.0: + resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} + + wordwrapjs@4.0.1: + resolution: {integrity: sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==} + engines: {node: '>=8.0.0'} + + workerpool@6.2.1: + resolution: {integrity: sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==} + + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} + + wrap-ansi@2.1.0: + resolution: {integrity: sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==} + engines: {node: '>=0.10.0'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@9.0.2: + resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==} + engines: {node: '>=18'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + write-stream@0.4.3: + resolution: {integrity: sha512-IJrvkhbAnj89W/GAVdVgbnPiVw5Ntg/B4tc/MUCIEwj/g6JIww1DWJyB/yBMT3yw2/TkT6IUZ0+IYef3flEw8A==} + + ws@3.3.3: + resolution: {integrity: sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + ws@5.2.4: + resolution: {integrity: sha512-fFCejsuC8f9kOSu9FYaOw8CdO68O3h5v0lg4p74o8JqWpwTf9tniOD+nOB78aWoVSS6WptVUmDrp/KPsMVBWFQ==} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + ws@7.5.10: + resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==} + engines: {node: '>=8.3.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + ws@8.13.0: + resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + ws@8.17.1: + resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + ws@8.18.0: + resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + xhr-request-promise@0.1.3: + resolution: {integrity: sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==} + + xhr-request@1.1.0: + resolution: {integrity: sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==} + + xhr@2.6.0: + resolution: {integrity: sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==} + + xmlhttprequest@1.8.0: + resolution: {integrity: sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==} + engines: {node: '>=0.4.0'} + + xss@1.0.15: + resolution: {integrity: sha512-FVdlVVC67WOIPvfOwhoMETV72f6GbW7aOabBC3WxN/oUdoEMDyLz4OgRv5/gck2ZeNqEQu+Tb0kloovXOfpYVg==} + engines: {node: '>= 0.10.0'} + hasBin: true + + xtend@2.1.2: + resolution: {integrity: sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==} + engines: {node: '>=0.4'} + + xtend@4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + + y18n@3.2.2: + resolution: {integrity: sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yaeti@0.0.6: + resolution: {integrity: sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==} + engines: {node: '>=0.10.32'} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yallist@4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + + yaml@2.8.2: + resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} + engines: {node: '>= 14.6'} + hasBin: true + + yargs-parser@2.4.1: + resolution: {integrity: sha512-9pIKIJhnI5tonzG6OnCFlz/yln8xHYcGl+pn3xR0Vzff0vzN1PbNRaelgfgRUwZ3s4i3jvxT9WhmUGL4whnasA==} + + yargs-parser@20.2.4: + resolution: {integrity: sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==} + engines: {node: '>=10'} + + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + + yargs-parser@22.0.0: + resolution: {integrity: sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw==} + engines: {node: ^20.19.0 || ^22.12.0 || >=23} + + yargs-unparser@2.0.0: + resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==} + engines: {node: '>=10'} + + yargs@16.2.0: + resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} + engines: {node: '>=10'} + + yargs@18.0.0: + resolution: {integrity: sha512-4UEqdc2RYGHZc7Doyqkrqiln3p9X2DZVxaGbwhn2pi7MrRagKaOcIKe8L3OxYcbhXLgLFUS3zAYuQjKBQgmuNg==} + engines: {node: ^20.19.0 || ^22.12.0 || >=23} + + yargs@4.8.1: + resolution: {integrity: sha512-LqodLrnIDM3IFT+Hf/5sxBnEGECrfdC1uIbgZeJmESCSo4HoCAaKEus8MylXHAkdacGc0ye+Qa+dpkuom8uVYA==} + + yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + '@adraffy/ens-normalize@1.10.1': {} + + '@apollo/protobufjs@1.2.6': + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/base64': 1.1.2 + '@protobufjs/codegen': 2.0.4 + '@protobufjs/eventemitter': 1.1.0 + '@protobufjs/fetch': 1.1.0 + '@protobufjs/float': 1.0.2 + '@protobufjs/inquire': 1.1.0 + '@protobufjs/path': 1.1.2 + '@protobufjs/pool': 1.1.0 + '@protobufjs/utf8': 1.1.0 + '@types/long': 4.0.2 + '@types/node': 10.17.60 + long: 4.0.0 + optional: true + + '@apollo/protobufjs@1.2.7': + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/base64': 1.1.2 + '@protobufjs/codegen': 2.0.4 + '@protobufjs/eventemitter': 1.1.0 + '@protobufjs/fetch': 1.1.0 + '@protobufjs/float': 1.0.2 + '@protobufjs/inquire': 1.1.0 + '@protobufjs/path': 1.1.2 + '@protobufjs/pool': 1.1.0 + '@protobufjs/utf8': 1.1.0 + '@types/long': 4.0.2 + long: 4.0.0 + optional: true + + '@apollo/usage-reporting-protobuf@4.1.1': + dependencies: + '@apollo/protobufjs': 1.2.7 + optional: true + + '@apollo/utils.dropunuseddefinitions@1.1.0(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + optional: true + + '@apollo/utils.keyvaluecache@1.0.2': + dependencies: + '@apollo/utils.logger': 1.0.1 + lru-cache: 7.13.1 + optional: true + + '@apollo/utils.logger@1.0.1': + optional: true + + '@apollo/utils.printwithreducedwhitespace@1.1.0(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + optional: true + + '@apollo/utils.removealiases@1.0.0(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + optional: true + + '@apollo/utils.sortast@1.1.0(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + lodash.sortby: 4.7.0 + optional: true + + '@apollo/utils.stripsensitiveliterals@1.2.0(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + optional: true + + '@apollo/utils.usagereporting@1.0.1(graphql@15.10.1)': + dependencies: + '@apollo/usage-reporting-protobuf': 4.1.1 + '@apollo/utils.dropunuseddefinitions': 1.1.0(graphql@15.10.1) + '@apollo/utils.printwithreducedwhitespace': 1.1.0(graphql@15.10.1) + '@apollo/utils.removealiases': 1.0.0(graphql@15.10.1) + '@apollo/utils.sortast': 1.1.0(graphql@15.10.1) + '@apollo/utils.stripsensitiveliterals': 1.2.0(graphql@15.10.1) + graphql: 15.10.1 + optional: true + + '@apollographql/apollo-tools@0.5.4(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + optional: true + + '@apollographql/graphql-playground-html@1.6.29': + dependencies: + xss: 1.0.15 + optional: true + + '@aws-crypto/sha256-js@1.2.2': + dependencies: + '@aws-crypto/util': 1.2.2 + '@aws-sdk/types': 3.973.3 + tslib: 1.14.1 + + '@aws-crypto/util@1.2.2': + dependencies: + '@aws-sdk/types': 3.973.3 + '@aws-sdk/util-utf8-browser': 3.259.0 + tslib: 1.14.1 + + '@aws-sdk/types@3.973.3': + dependencies: + '@smithy/types': 4.13.0 + tslib: 2.8.1 + + '@aws-sdk/util-utf8-browser@3.259.0': + dependencies: + tslib: 2.8.1 + + '@babel/code-frame@7.29.0': + dependencies: + '@babel/helper-validator-identifier': 7.28.5 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.29.0': {} + + '@babel/core@7.29.0': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/helper-compilation-targets': 7.28.6 + '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0) + '@babel/helpers': 7.28.6 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + '@jridgewell/remapping': 2.3.5 + convert-source-map: 2.0.0 + debug: 4.4.3(supports-color@8.1.1) + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.29.1': + dependencies: + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + jsesc: 3.1.0 + + '@babel/helper-compilation-targets@7.28.6': + dependencies: + '@babel/compat-data': 7.29.0 + '@babel/helper-validator-option': 7.27.1 + browserslist: 4.28.1 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-define-polyfill-provider@0.6.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-compilation-targets': 7.28.6 + '@babel/helper-plugin-utils': 7.28.6 + debug: 4.4.3(supports-color@8.1.1) + lodash.debounce: 4.0.8 + resolve: 1.22.11 + transitivePeerDependencies: + - supports-color + + '@babel/helper-globals@7.28.0': {} + + '@babel/helper-module-imports@7.28.6': + dependencies: + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-validator-identifier': 7.28.5 + '@babel/traverse': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-plugin-utils@7.28.6': {} + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.28.5': {} + + '@babel/helper-validator-option@7.27.1': {} + + '@babel/helpers@7.28.6': + dependencies: + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + + '@babel/parser@7.29.0': + dependencies: + '@babel/types': 7.29.0 + + '@babel/plugin-transform-runtime@7.29.0(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-plugin-utils': 7.28.6 + babel-plugin-polyfill-corejs2: 0.4.15(@babel/core@7.29.0) + babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.29.0) + babel-plugin-polyfill-regenerator: 0.6.6(@babel/core@7.29.0) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/runtime@7.28.6': {} + + '@babel/template@7.28.6': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 + + '@babel/traverse@7.29.0': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/helper-globals': 7.28.0 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + '@babel/types@7.29.0': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + + '@bytecodealliance/preview2-shim@0.17.0': {} + + '@cspotcode/source-map-support@0.8.1': + dependencies: + '@jridgewell/trace-mapping': 0.3.9 + + '@ensdomains/address-encoder@0.1.9': + dependencies: + bech32: 1.1.4 + blakejs: 1.2.1 + bn.js: 4.12.3 + bs58: 4.0.1 + crypto-addr-codec: 0.1.8 + nano-base32: 1.0.1 + ripemd160: 2.0.3 + + '@ensdomains/ens@0.4.5': + dependencies: + bluebird: 3.7.2 + eth-ens-namehash: 2.0.8 + solc: 0.4.26 + testrpc: 0.0.1 + web3-utils: 1.10.4 + + '@ensdomains/ensjs@2.1.0(bufferutil@4.0.7)(utf-8-validate@6.0.3)': + dependencies: + '@babel/runtime': 7.28.6 + '@ensdomains/address-encoder': 0.1.9 + '@ensdomains/ens': 0.4.5 + '@ensdomains/resolver': 0.2.4 + content-hash: 2.5.2 + eth-ens-namehash: 2.0.8 + ethers: 5.8.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) + js-sha3: 0.8.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@ensdomains/ensjs@2.1.0(bufferutil@4.1.0)(utf-8-validate@5.0.10)': + dependencies: + '@babel/runtime': 7.28.6 + '@ensdomains/address-encoder': 0.1.9 + '@ensdomains/ens': 0.4.5 + '@ensdomains/resolver': 0.2.4 + content-hash: 2.5.2 + eth-ens-namehash: 2.0.8 + ethers: 5.8.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + js-sha3: 0.8.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@ensdomains/resolver@0.2.4': {} + + '@ethereumjs/common@2.5.0': + dependencies: + crc-32: 1.2.2 + ethereumjs-util: 7.1.5 + + '@ethereumjs/common@2.6.5': + dependencies: + crc-32: 1.2.2 + ethereumjs-util: 7.1.5 + + '@ethereumjs/rlp@4.0.1': {} + + '@ethereumjs/rlp@5.0.2': {} + + '@ethereumjs/tx@3.3.2': + dependencies: + '@ethereumjs/common': 2.5.0 + ethereumjs-util: 7.1.5 + + '@ethereumjs/tx@3.5.2': + dependencies: + '@ethereumjs/common': 2.6.5 + ethereumjs-util: 7.1.5 + + '@ethereumjs/util@8.1.0': + dependencies: + '@ethereumjs/rlp': 4.0.1 + ethereum-cryptography: 2.2.1 + micro-ftch: 0.3.1 + + '@ethereumjs/util@9.1.0': + dependencies: + '@ethereumjs/rlp': 5.0.2 + ethereum-cryptography: 2.2.1 + + '@ethersproject/abi@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/abstract-provider@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 + + '@ethersproject/abstract-signer@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + + '@ethersproject/address@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/rlp': 5.8.0 + + '@ethersproject/base64@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + + '@ethersproject/basex@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/properties': 5.8.0 + + '@ethersproject/bignumber@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + bn.js: 5.2.3 + + '@ethersproject/bytes@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/constants@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + + '@ethersproject/contracts@5.8.0': + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + + '@ethersproject/hash@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/hdnode@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + + '@ethersproject/json-wallets@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + aes-js: 3.0.0 + scrypt-js: 3.0.1 + + '@ethersproject/keccak256@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + js-sha3: 0.8.0 + + '@ethersproject/logger@5.8.0': {} + + '@ethersproject/networks@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/pbkdf2@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/sha2': 5.8.0 + + '@ethersproject/properties@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/providers@5.8.0(bufferutil@4.0.7)(utf-8-validate@6.0.3)': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 + bech32: 1.1.4 + ws: 8.18.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@ethersproject/providers@5.8.0(bufferutil@4.1.0)(utf-8-validate@5.0.10)': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 + bech32: 1.1.4 + ws: 8.18.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@ethersproject/random@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/rlp@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/sha2@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + hash.js: 1.1.7 + + '@ethersproject/signing-key@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + bn.js: 5.2.3 + elliptic: 6.6.1 + hash.js: 1.1.7 + + '@ethersproject/solidity@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/strings@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/transactions@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + + '@ethersproject/units@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/wallet@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/json-wallets': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + + '@ethersproject/web@5.8.0': + dependencies: + '@ethersproject/base64': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/wordlists@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@fastify/busboy@2.1.1': {} + + '@graphql-tools/batch-execute@8.5.1(graphql@15.10.1)': + dependencies: + '@graphql-tools/utils': 8.9.0(graphql@15.10.1) + dataloader: 2.1.0 + graphql: 15.10.1 + tslib: 2.4.1 + value-or-promise: 1.0.11 + optional: true + + '@graphql-tools/delegate@8.8.1(graphql@15.10.1)': + dependencies: + '@graphql-tools/batch-execute': 8.5.1(graphql@15.10.1) + '@graphql-tools/schema': 8.5.1(graphql@15.10.1) + '@graphql-tools/utils': 8.9.0(graphql@15.10.1) + dataloader: 2.1.0 + graphql: 15.10.1 + tslib: 2.4.1 + value-or-promise: 1.0.11 + optional: true + + '@graphql-tools/merge@8.3.1(graphql@15.10.1)': + dependencies: + '@graphql-tools/utils': 8.9.0(graphql@15.10.1) + graphql: 15.10.1 + tslib: 2.8.1 + optional: true + + '@graphql-tools/merge@8.4.2(graphql@15.10.1)': + dependencies: + '@graphql-tools/utils': 9.2.1(graphql@15.10.1) + graphql: 15.10.1 + tslib: 2.8.1 + optional: true + + '@graphql-tools/mock@8.7.20(graphql@15.10.1)': + dependencies: + '@graphql-tools/schema': 9.0.19(graphql@15.10.1) + '@graphql-tools/utils': 9.2.1(graphql@15.10.1) + fast-json-stable-stringify: 2.1.0 + graphql: 15.10.1 + tslib: 2.8.1 + optional: true + + '@graphql-tools/schema@8.5.1(graphql@15.10.1)': + dependencies: + '@graphql-tools/merge': 8.3.1(graphql@15.10.1) + '@graphql-tools/utils': 8.9.0(graphql@15.10.1) + graphql: 15.10.1 + tslib: 2.8.1 + value-or-promise: 1.0.11 + optional: true + + '@graphql-tools/schema@9.0.19(graphql@15.10.1)': + dependencies: + '@graphql-tools/merge': 8.4.2(graphql@15.10.1) + '@graphql-tools/utils': 9.2.1(graphql@15.10.1) + graphql: 15.10.1 + tslib: 2.8.1 + value-or-promise: 1.0.12 + optional: true + + '@graphql-tools/utils@8.9.0(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + tslib: 2.8.1 + optional: true + + '@graphql-tools/utils@9.2.1(graphql@15.10.1)': + dependencies: + '@graphql-typed-document-node/core': 3.2.0(graphql@15.10.1) + graphql: 15.10.1 + tslib: 2.8.1 + optional: true + + '@graphql-typed-document-node/core@3.2.0(graphql@15.10.1)': + dependencies: + graphql: 15.10.1 + optional: true + + '@josephg/resolvable@1.0.1': + optional: true + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/remapping@2.3.5': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@jridgewell/trace-mapping@0.3.9': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@noble/curves@1.2.0': + dependencies: + '@noble/hashes': 1.3.2 + + '@noble/curves@1.4.2': + dependencies: + '@noble/hashes': 1.4.0 + + '@noble/curves@1.8.2': + dependencies: + '@noble/hashes': 1.7.2 + + '@noble/hashes@1.2.0': {} + + '@noble/hashes@1.3.2': {} + + '@noble/hashes@1.4.0': {} + + '@noble/hashes@1.7.2': {} + + '@noble/hashes@1.8.0': {} + + '@noble/secp256k1@1.7.1': {} + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.20.1 + + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.23': {} + + '@nomicfoundation/edr-darwin-x64@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-arm64-gnu@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-arm64-musl@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-x64-gnu@0.12.0-next.23': {} + + '@nomicfoundation/edr-linux-x64-musl@0.12.0-next.23': {} + + '@nomicfoundation/edr-win32-x64-msvc@0.12.0-next.23': {} + + '@nomicfoundation/edr@0.12.0-next.23': + dependencies: + '@nomicfoundation/edr-darwin-arm64': 0.12.0-next.23 + '@nomicfoundation/edr-darwin-x64': 0.12.0-next.23 + '@nomicfoundation/edr-linux-arm64-gnu': 0.12.0-next.23 + '@nomicfoundation/edr-linux-arm64-musl': 0.12.0-next.23 + '@nomicfoundation/edr-linux-x64-gnu': 0.12.0-next.23 + '@nomicfoundation/edr-linux-x64-musl': 0.12.0-next.23 + '@nomicfoundation/edr-win32-x64-msvc': 0.12.0-next.23 + + '@nomicfoundation/hardhat-chai-matchers@2.1.0(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(chai@4.5.0)(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))': + dependencies: + '@nomicfoundation/hardhat-ethers': 3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@types/chai-as-promised': 7.1.8 + chai: 4.5.0 + chai-as-promised: 7.1.2(chai@4.5.0) + deep-eql: 4.1.4 + ethers: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + ordinal: 1.0.3 + + '@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))': + dependencies: + debug: 4.4.3(supports-color@8.1.1) + ethers: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + lodash.isequal: 4.5.0 + transitivePeerDependencies: + - supports-color + + '@nomicfoundation/hardhat-network-helpers@1.1.2(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))': + dependencies: + ethereumjs-util: 7.1.5 + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + + '@nomicfoundation/hardhat-toolbox@3.0.0(ss63mfmoopokpljgyamawaquwa)': + dependencies: + '@nomicfoundation/hardhat-chai-matchers': 2.1.0(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(chai@4.5.0)(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-ethers': 3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-network-helpers': 1.1.2(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@nomicfoundation/hardhat-verify': 1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@typechain/ethers-v6': 0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3) + '@typechain/hardhat': 8.0.3(@typechain/ethers-v6@0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3))(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3)) + '@types/chai': 4.3.20 + '@types/mocha': 10.0.10 + '@types/node': 25.3.1 + chai: 4.5.0 + ethers: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + hardhat-gas-reporter: 1.0.10(bufferutil@4.1.0)(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + solidity-coverage: 0.8.17(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + ts-node: 10.9.2(@types/node@25.3.1)(typescript@5.9.3) + typechain: 8.3.2(typescript@5.9.3) + typescript: 5.9.3 + + '@nomicfoundation/hardhat-verify@1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))': + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/address': 5.8.0 + cbor: 8.1.0 + chalk: 2.4.2 + debug: 4.4.3(supports-color@8.1.1) + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + lodash.clonedeep: 4.5.0 + semver: 6.3.1 + table: 6.9.0 + undici: 5.29.0 + transitivePeerDependencies: + - supports-color + + '@nomicfoundation/slang@0.18.3': + dependencies: + '@bytecodealliance/preview2-shim': 0.17.0 + + '@nomicfoundation/solidity-analyzer-darwin-arm64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-darwin-x64@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-arm64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-gnu@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-linux-x64-musl@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer-win32-x64-msvc@0.1.2': + optional: true + + '@nomicfoundation/solidity-analyzer@0.1.2': + optionalDependencies: + '@nomicfoundation/solidity-analyzer-darwin-arm64': 0.1.2 + '@nomicfoundation/solidity-analyzer-darwin-x64': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-arm64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-gnu': 0.1.2 + '@nomicfoundation/solidity-analyzer-linux-x64-musl': 0.1.2 + '@nomicfoundation/solidity-analyzer-win32-x64-msvc': 0.1.2 + + '@openzeppelin/contracts@5.4.0': {} + + '@openzeppelin/defender-admin-client@1.54.6(bufferutil@4.1.0)(debug@4.4.3)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@openzeppelin/defender-base-client': 1.54.6(debug@4.4.3)(encoding@0.1.13) + axios: 1.13.5(debug@4.4.3) + ethers: 5.8.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + lodash: 4.17.23 + node-fetch: 2.7.0(encoding@0.1.13) + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - utf-8-validate + + '@openzeppelin/defender-base-client@1.54.6(debug@4.4.3)(encoding@0.1.13)': + dependencies: + amazon-cognito-identity-js: 6.3.16(encoding@0.1.13) + async-retry: 1.3.3 + axios: 1.13.5(debug@4.4.3) + lodash: 4.17.23 + node-fetch: 2.7.0(encoding@0.1.13) + transitivePeerDependencies: + - debug + - encoding + + '@openzeppelin/defender-sdk-base-client@1.15.2(encoding@0.1.13)': + dependencies: + amazon-cognito-identity-js: 6.3.16(encoding@0.1.13) + async-retry: 1.3.3 + transitivePeerDependencies: + - encoding + + '@openzeppelin/defender-sdk-deploy-client@1.15.2(debug@4.4.3)(encoding@0.1.13)': + dependencies: + '@openzeppelin/defender-sdk-base-client': 1.15.2(encoding@0.1.13) + axios: 1.13.5(debug@4.4.3) + lodash: 4.17.23 + transitivePeerDependencies: + - debug + - encoding + + '@openzeppelin/hardhat-upgrades@2.5.1(@nomicfoundation/hardhat-ethers@3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(@nomicfoundation/hardhat-verify@1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)))(bufferutil@4.1.0)(encoding@0.1.13)(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10)': + dependencies: + '@nomicfoundation/hardhat-ethers': 3.1.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + '@openzeppelin/defender-admin-client': 1.54.6(bufferutil@4.1.0)(debug@4.4.3)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@openzeppelin/defender-base-client': 1.54.6(debug@4.4.3)(encoding@0.1.13) + '@openzeppelin/defender-sdk-base-client': 1.15.2(encoding@0.1.13) + '@openzeppelin/defender-sdk-deploy-client': 1.15.2(debug@4.4.3)(encoding@0.1.13) + '@openzeppelin/upgrades-core': 1.44.2 + chalk: 4.1.2 + debug: 4.4.3(supports-color@8.1.1) + ethereumjs-util: 7.1.5 + ethers: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + proper-lockfile: 4.1.2 + undici: 5.29.0 + optionalDependencies: + '@nomicfoundation/hardhat-verify': 1.1.1(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@openzeppelin/upgrades-core@1.44.2': + dependencies: + '@nomicfoundation/slang': 0.18.3 + bignumber.js: 9.3.1 + cbor: 10.0.11 + chalk: 4.1.2 + compare-versions: 6.1.1 + debug: 4.4.3(supports-color@8.1.1) + ethereumjs-util: 7.1.5 + minimatch: 9.0.8 + minimist: 1.2.8 + proper-lockfile: 4.1.2 + solidity-ast: 0.4.61 + transitivePeerDependencies: + - supports-color + + '@protobufjs/aspromise@1.1.2': + optional: true + + '@protobufjs/base64@1.1.2': + optional: true + + '@protobufjs/codegen@2.0.4': + optional: true + + '@protobufjs/eventemitter@1.1.0': + optional: true + + '@protobufjs/fetch@1.1.0': + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/inquire': 1.1.0 + optional: true + + '@protobufjs/float@1.0.2': + optional: true + + '@protobufjs/inquire@1.1.0': + optional: true + + '@protobufjs/path@1.1.2': + optional: true + + '@protobufjs/pool@1.1.0': + optional: true + + '@protobufjs/utf8@1.1.0': + optional: true + + '@redux-saga/core@1.4.2': + dependencies: + '@babel/runtime': 7.28.6 + '@redux-saga/deferred': 1.3.1 + '@redux-saga/delay-p': 1.3.1 + '@redux-saga/is': 1.2.1 + '@redux-saga/symbols': 1.2.1 + '@redux-saga/types': 1.3.1 + typescript-tuple: 2.2.1 + + '@redux-saga/deferred@1.3.1': {} + + '@redux-saga/delay-p@1.3.1': + dependencies: + '@redux-saga/symbols': 1.2.1 + + '@redux-saga/is@1.2.1': + dependencies: + '@redux-saga/symbols': 1.2.1 + '@redux-saga/types': 1.3.1 + + '@redux-saga/symbols@1.2.1': {} + + '@redux-saga/types@1.3.1': {} + + '@scure/base@1.1.9': {} + + '@scure/base@1.2.6': {} + + '@scure/bip32@1.1.5': + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/base': 1.1.9 + + '@scure/bip32@1.4.0': + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.1.1': + dependencies: + '@noble/hashes': 1.2.0 + '@scure/base': 1.1.9 + + '@scure/bip39@1.3.0': + dependencies: + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.9 + + '@sentry/core@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/hub@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/minimal@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/types': 5.30.0 + tslib: 1.14.1 + + '@sentry/node@5.30.0': + dependencies: + '@sentry/core': 5.30.0 + '@sentry/hub': 5.30.0 + '@sentry/tracing': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + cookie: 0.4.2 + https-proxy-agent: 5.0.1 + lru_map: 0.3.3 + tslib: 1.14.1 + transitivePeerDependencies: + - supports-color + + '@sentry/tracing@5.30.0': + dependencies: + '@sentry/hub': 5.30.0 + '@sentry/minimal': 5.30.0 + '@sentry/types': 5.30.0 + '@sentry/utils': 5.30.0 + tslib: 1.14.1 + + '@sentry/types@5.30.0': {} + + '@sentry/utils@5.30.0': + dependencies: + '@sentry/types': 5.30.0 + tslib: 1.14.1 + + '@sindresorhus/is@4.6.0': {} + + '@smithy/types@4.13.0': + dependencies: + tslib: 2.8.1 + + '@solidity-parser/parser@0.14.5': + dependencies: + antlr4ts: 0.5.0-alpha.4 + + '@solidity-parser/parser@0.20.2': {} + + '@szmarczak/http-timer@4.0.6': + dependencies: + defer-to-connect: 2.0.1 + + '@szmarczak/http-timer@5.0.1': + dependencies: + defer-to-connect: 2.0.1 + + '@truffle/abi-utils@1.0.3': + dependencies: + change-case: 3.0.2 + fast-check: 3.1.1 + web3-utils: 1.10.0 + + '@truffle/code-utils@3.0.4': + dependencies: + cbor: 5.2.0 + + '@truffle/codec@0.17.3': + dependencies: + '@truffle/abi-utils': 1.0.3 + '@truffle/compile-common': 0.9.8 + big.js: 6.2.2 + bn.js: 5.2.3 + cbor: 5.2.0 + debug: 4.4.3(supports-color@8.1.1) + lodash: 4.17.23 + semver: 7.7.4 + utf8: 3.0.0 + web3-utils: 1.10.0 + transitivePeerDependencies: + - supports-color + + '@truffle/compile-common@0.9.8': + dependencies: + '@truffle/error': 0.2.2 + colors: 1.4.0 + + '@truffle/config@1.3.61(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3)': + dependencies: + '@truffle/error': 0.2.2 + '@truffle/events': 0.1.25(bufferutil@4.0.7)(utf-8-validate@6.0.3) + '@truffle/provider': 0.3.13(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + conf: 10.2.0 + debug: 4.4.3(supports-color@8.1.1) + find-up: 2.1.0 + lodash: 4.17.23 + original-require: 1.0.1 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/config@1.3.61(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@truffle/error': 0.2.2 + '@truffle/events': 0.1.25(bufferutil@4.1.0)(utf-8-validate@5.0.10) + '@truffle/provider': 0.3.13(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + conf: 10.2.0 + debug: 4.4.3(supports-color@8.1.1) + find-up: 2.1.0 + lodash: 4.17.23 + original-require: 1.0.1 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/dashboard-message-bus-client@0.1.12(bufferutil@4.0.7)(utf-8-validate@6.0.3)': + dependencies: + '@truffle/dashboard-message-bus-common': 0.1.7 + '@truffle/promise-tracker': 0.1.7 + axios: 1.5.0(debug@4.4.3) + debug: 4.4.3(supports-color@8.1.1) + delay: 5.0.0 + isomorphic-ws: 4.0.1(ws@7.5.10(bufferutil@4.0.7)(utf-8-validate@6.0.3)) + node-abort-controller: 3.1.1 + tiny-typed-emitter: 2.1.0 + ws: 7.5.10(bufferutil@4.0.7)(utf-8-validate@6.0.3) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + optional: true + + '@truffle/dashboard-message-bus-client@0.1.12(bufferutil@4.1.0)(utf-8-validate@5.0.10)': + dependencies: + '@truffle/dashboard-message-bus-common': 0.1.7 + '@truffle/promise-tracker': 0.1.7 + axios: 1.5.0(debug@4.4.3) + debug: 4.4.3(supports-color@8.1.1) + delay: 5.0.0 + isomorphic-ws: 4.0.1(ws@7.5.10(bufferutil@4.0.7)(utf-8-validate@6.0.3)) + node-abort-controller: 3.1.1 + tiny-typed-emitter: 2.1.0 + ws: 7.5.10(bufferutil@4.1.0)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + optional: true + + '@truffle/dashboard-message-bus-common@0.1.7': + optional: true + + '@truffle/db-loader@0.2.36(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3)': + optionalDependencies: + '@truffle/db': 2.0.36(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@truffle/db-loader@0.2.36(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + optionalDependencies: + '@truffle/db': 2.0.36(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@truffle/db@2.0.36(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3)': + dependencies: + '@graphql-tools/delegate': 8.8.1(graphql@15.10.1) + '@graphql-tools/schema': 8.5.1(graphql@15.10.1) + '@truffle/abi-utils': 1.0.3 + '@truffle/code-utils': 3.0.4 + '@truffle/config': 1.3.61(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + abstract-leveldown: 7.2.0 + apollo-server: 3.13.0(encoding@0.1.13)(graphql@15.10.1) + debug: 4.4.3(supports-color@8.1.1) + fs-extra: 9.1.0 + graphql: 15.10.1 + graphql-tag: 2.12.6(graphql@15.10.1) + json-stable-stringify: 1.3.0 + pascal-case: 2.0.1 + pluralize: 8.0.0 + pouchdb: 7.3.0(encoding@0.1.13) + pouchdb-adapter-memory: 7.3.1 + pouchdb-debug: 7.2.1 + pouchdb-find: 7.3.1(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/db@2.0.36(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@graphql-tools/delegate': 8.8.1(graphql@15.10.1) + '@graphql-tools/schema': 8.5.1(graphql@15.10.1) + '@truffle/abi-utils': 1.0.3 + '@truffle/code-utils': 3.0.4 + '@truffle/config': 1.3.61(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + abstract-leveldown: 7.2.0 + apollo-server: 3.13.0(encoding@0.1.13)(graphql@15.10.1) + debug: 4.4.3(supports-color@8.1.1) + fs-extra: 9.1.0 + graphql: 15.10.1 + graphql-tag: 2.12.6(graphql@15.10.1) + json-stable-stringify: 1.3.0 + pascal-case: 2.0.1 + pluralize: 8.0.0 + pouchdb: 7.3.0(encoding@0.1.13) + pouchdb-adapter-memory: 7.3.1 + pouchdb-debug: 7.2.1 + pouchdb-find: 7.3.1(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/debugger@12.1.5(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3)': + dependencies: + '@ensdomains/ensjs': 2.1.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) + '@truffle/abi-utils': 1.0.3 + '@truffle/codec': 0.17.3 + '@truffle/source-map-utils': 1.3.119 + bn.js: 5.2.3 + debug: 4.4.3(supports-color@8.1.1) + json-pointer: 0.6.2 + json-stable-stringify: 1.3.0 + lodash: 4.17.23 + redux: 3.7.2 + redux-saga: 1.0.0 + reselect-tree: 1.3.7 + semver: 7.7.4 + web3: 1.10.0(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + web3-eth-abi: 1.10.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@truffle/debugger@12.1.5(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@ensdomains/ensjs': 2.1.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + '@truffle/abi-utils': 1.0.3 + '@truffle/codec': 0.17.3 + '@truffle/source-map-utils': 1.3.119 + bn.js: 5.2.3 + debug: 4.4.3(supports-color@8.1.1) + json-pointer: 0.6.2 + json-stable-stringify: 1.3.0 + lodash: 4.17.23 + redux: 3.7.2 + redux-saga: 1.0.0 + reselect-tree: 1.3.7 + semver: 7.7.4 + web3: 1.10.0(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + web3-eth-abi: 1.10.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@truffle/error@0.2.2': {} + + '@truffle/events@0.1.25(bufferutil@4.0.7)(utf-8-validate@6.0.3)': + dependencies: + '@truffle/dashboard-message-bus-client': 0.1.12(bufferutil@4.0.7)(utf-8-validate@6.0.3) + '@truffle/spinners': 0.2.5 + debug: 4.4.3(supports-color@8.1.1) + emittery: 0.4.1 + web3-utils: 1.10.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + optional: true + + '@truffle/events@0.1.25(bufferutil@4.1.0)(utf-8-validate@5.0.10)': + dependencies: + '@truffle/dashboard-message-bus-client': 0.1.12(bufferutil@4.1.0)(utf-8-validate@5.0.10) + '@truffle/spinners': 0.2.5 + debug: 4.4.3(supports-color@8.1.1) + emittery: 0.4.1 + web3-utils: 1.10.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + optional: true + + '@truffle/hdwallet-provider@1.7.0(@babel/core@7.29.0)(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@ethereumjs/common': 2.6.5 + '@ethereumjs/tx': 3.5.2 + '@trufflesuite/web3-provider-engine': 15.0.14(@babel/core@7.29.0)(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + eth-sig-util: 3.0.1 + ethereum-cryptography: 0.1.3 + ethereum-protocol: 1.0.1 + ethereumjs-util: 6.2.1 + ethereumjs-wallet: 1.0.2 + transitivePeerDependencies: + - '@babel/core' + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@truffle/interface-adapter@0.5.37(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3)': + dependencies: + bn.js: 5.2.3 + ethers: 4.0.49 + web3: 1.10.0(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/interface-adapter@0.5.37(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + bn.js: 5.2.3 + ethers: 4.0.49 + web3: 1.10.0(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/promise-tracker@0.1.7': + optional: true + + '@truffle/provider@0.3.13(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3)': + dependencies: + '@truffle/error': 0.2.2 + '@truffle/interface-adapter': 0.5.37(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + debug: 4.4.3(supports-color@8.1.1) + web3: 1.10.0(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/provider@0.3.13(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@truffle/error': 0.2.2 + '@truffle/interface-adapter': 0.5.37(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + debug: 4.4.3(supports-color@8.1.1) + web3: 1.10.0(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + optional: true + + '@truffle/source-map-utils@1.3.119': + dependencies: + '@truffle/code-utils': 3.0.4 + '@truffle/codec': 0.17.3 + debug: 4.4.3(supports-color@8.1.1) + json-pointer: 0.6.2 + node-interval-tree: 1.3.3 + web3-utils: 1.10.0 + transitivePeerDependencies: + - supports-color + + '@truffle/spinners@0.2.5': + dependencies: + '@trufflesuite/spinnies': 0.1.1 + optional: true + + '@trufflesuite/eth-json-rpc-filters@4.1.2-1': + dependencies: + '@trufflesuite/eth-json-rpc-middleware': 4.4.2-1 + await-semaphore: 0.1.3 + eth-query: 2.1.2 + json-rpc-engine: 5.4.0 + lodash.flatmap: 4.5.0 + safe-event-emitter: 1.0.1 + + '@trufflesuite/eth-json-rpc-infura@4.0.3-0(encoding@0.1.13)': + dependencies: + '@trufflesuite/eth-json-rpc-middleware': 4.4.2-1 + cross-fetch: 2.2.6(encoding@0.1.13) + eth-json-rpc-errors: 1.1.1 + json-rpc-engine: 5.4.0 + transitivePeerDependencies: + - encoding + + '@trufflesuite/eth-json-rpc-middleware@4.4.2-1': + dependencies: + '@trufflesuite/eth-sig-util': 1.4.2 + btoa: 1.2.1 + clone: 2.1.2 + eth-json-rpc-errors: 1.1.1 + eth-query: 2.1.2 + ethereumjs-block: 1.7.1 + ethereumjs-tx: 1.3.7 + ethereumjs-util: 5.2.1 + ethereumjs-vm: 2.6.0 + fetch-ponyfill: 4.1.0 + json-rpc-engine: 5.4.0 + json-stable-stringify: 1.3.0 + pify: 3.0.0 + safe-event-emitter: 1.0.1 + + '@trufflesuite/eth-sig-util@1.4.2': + dependencies: + ethereumjs-abi: 0.6.8 + ethereumjs-util: 5.2.1 + + '@trufflesuite/spinnies@0.1.1': + dependencies: + chalk: 4.1.2 + cli-cursor: 3.1.0 + strip-ansi: 6.0.1 + optional: true + + '@trufflesuite/uws-js-unofficial@20.30.0-unofficial.0': + dependencies: + ws: 8.13.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) + optionalDependencies: + bufferutil: 4.0.7 + utf-8-validate: 6.0.3 + + '@trufflesuite/web3-provider-engine@15.0.14(@babel/core@7.29.0)(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@ethereumjs/tx': 3.5.2 + '@trufflesuite/eth-json-rpc-filters': 4.1.2-1 + '@trufflesuite/eth-json-rpc-infura': 4.0.3-0(encoding@0.1.13) + '@trufflesuite/eth-json-rpc-middleware': 4.4.2-1 + '@trufflesuite/eth-sig-util': 1.4.2 + async: 2.6.4 + backoff: 2.5.0 + clone: 2.1.2 + cross-fetch: 2.2.6(encoding@0.1.13) + eth-block-tracker: 4.4.3(@babel/core@7.29.0) + eth-json-rpc-errors: 2.0.2 + ethereumjs-block: 1.7.1 + ethereumjs-util: 5.2.1 + ethereumjs-vm: 2.6.0 + json-stable-stringify: 1.3.0 + promise-to-callback: 1.0.0 + readable-stream: 2.3.8 + request: 2.88.2 + semaphore: 1.1.0 + ws: 5.2.4(bufferutil@4.1.0)(utf-8-validate@5.0.10) + xhr: 2.6.0 + xtend: 4.0.2 + transitivePeerDependencies: + - '@babel/core' + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@tsconfig/node10@1.0.12': {} + + '@tsconfig/node12@1.0.11': {} + + '@tsconfig/node14@1.0.3': {} + + '@tsconfig/node16@1.0.4': {} + + '@typechain/ethers-v6@0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3)': + dependencies: + ethers: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + lodash: 4.17.23 + ts-essentials: 7.0.3(typescript@5.9.3) + typechain: 8.3.2(typescript@5.9.3) + typescript: 5.9.3 + + '@typechain/hardhat@8.0.3(@typechain/ethers-v6@0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3))(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))': + dependencies: + '@typechain/ethers-v6': 0.4.3(ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10))(typechain@8.3.2(typescript@5.9.3))(typescript@5.9.3) + ethers: 6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + fs-extra: 9.1.0 + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + typechain: 8.3.2(typescript@5.9.3) + + '@types/accepts@1.3.7': + dependencies: + '@types/node': 25.3.1 + optional: true + + '@types/bn.js@4.11.6': + dependencies: + '@types/node': 25.3.1 + + '@types/bn.js@5.2.0': + dependencies: + '@types/node': 25.3.1 + + '@types/body-parser@1.19.2': + dependencies: + '@types/connect': 3.4.38 + '@types/node': 25.3.1 + optional: true + + '@types/body-parser@1.19.6': + dependencies: + '@types/connect': 3.4.38 + '@types/node': 25.3.1 + optional: true + + '@types/cacheable-request@6.0.3': + dependencies: + '@types/http-cache-semantics': 4.2.0 + '@types/keyv': 3.1.4 + '@types/node': 12.20.55 + '@types/responselike': 1.0.3 + + '@types/chai-as-promised@7.1.8': + dependencies: + '@types/chai': 4.3.20 + + '@types/chai@4.3.20': {} + + '@types/concat-stream@1.6.1': + dependencies: + '@types/node': 8.10.66 + + '@types/connect@3.4.38': + dependencies: + '@types/node': 25.3.1 + optional: true + + '@types/cors@2.8.12': + optional: true + + '@types/express-serve-static-core@4.17.31': + dependencies: + '@types/node': 25.3.1 + '@types/qs': 6.14.0 + '@types/range-parser': 1.2.7 + optional: true + + '@types/express-serve-static-core@4.19.8': + dependencies: + '@types/node': 25.3.1 + '@types/qs': 6.14.0 + '@types/range-parser': 1.2.7 + '@types/send': 1.2.1 + optional: true + + '@types/express@4.17.14': + dependencies: + '@types/body-parser': 1.19.6 + '@types/express-serve-static-core': 4.19.8 + '@types/qs': 6.14.0 + '@types/serve-static': 2.2.0 + optional: true + + '@types/form-data@0.0.33': + dependencies: + '@types/node': 8.10.66 + + '@types/glob@7.2.0': + dependencies: + '@types/minimatch': 6.0.0 + '@types/node': 25.3.1 + + '@types/http-cache-semantics@4.2.0': {} + + '@types/http-errors@2.0.5': + optional: true + + '@types/keyv@3.1.4': + dependencies: + '@types/node': 12.20.55 + + '@types/long@4.0.2': + optional: true + + '@types/lru-cache@5.1.1': {} + + '@types/minimatch@6.0.0': + dependencies: + minimatch: 10.2.4 + + '@types/mocha@10.0.10': {} + + '@types/node@10.17.60': {} + + '@types/node@12.20.55': {} + + '@types/node@22.7.5': + dependencies: + undici-types: 6.19.8 + + '@types/node@25.3.1': + dependencies: + undici-types: 7.18.2 + + '@types/node@8.10.66': {} + + '@types/pbkdf2@3.1.2': + dependencies: + '@types/node': 25.3.1 + + '@types/prettier@2.7.3': {} + + '@types/qs@6.14.0': {} + + '@types/range-parser@1.2.7': + optional: true + + '@types/responselike@1.0.3': + dependencies: + '@types/node': 12.20.55 + + '@types/secp256k1@4.0.7': + dependencies: + '@types/node': 25.3.1 + + '@types/seedrandom@3.0.1': {} + + '@types/send@1.2.1': + dependencies: + '@types/node': 25.3.1 + optional: true + + '@types/serve-static@2.2.0': + dependencies: + '@types/http-errors': 2.0.5 + '@types/node': 25.3.1 + optional: true + + '@yarnpkg/lockfile@1.1.0': {} + + abbrev@1.0.9: {} + + abort-controller@3.0.0: + dependencies: + event-target-shim: 5.0.1 + optional: true + + abortcontroller-polyfill@1.7.8: {} + + abstract-level@1.0.3: + dependencies: + buffer: 6.0.3 + catering: 2.1.1 + is-buffer: 2.0.5 + level-supports: 4.0.1 + level-transcoder: 1.0.1 + module-error: 1.0.2 + queue-microtask: 1.2.3 + + abstract-leveldown@2.6.3: + dependencies: + xtend: 4.0.2 + + abstract-leveldown@2.7.2: + dependencies: + xtend: 4.0.2 + + abstract-leveldown@6.2.3: + dependencies: + buffer: 5.7.1 + immediate: 3.3.0 + level-concat-iterator: 2.0.1 + level-supports: 1.0.1 + xtend: 4.0.2 + optional: true + + abstract-leveldown@6.3.0: + dependencies: + buffer: 5.7.1 + immediate: 3.3.0 + level-concat-iterator: 2.0.1 + level-supports: 1.0.1 + xtend: 4.0.2 + optional: true + + abstract-leveldown@7.2.0: + dependencies: + buffer: 6.0.3 + catering: 2.1.1 + is-buffer: 2.0.5 + level-concat-iterator: 3.1.0 + level-supports: 2.1.0 + queue-microtask: 1.2.3 + + accepts@1.3.8: + dependencies: + mime-types: 2.1.35 + negotiator: 0.6.3 + + acorn-walk@8.3.5: + dependencies: + acorn: 8.16.0 + + acorn@8.16.0: {} + + adm-zip@0.4.16: {} + + aes-js@3.0.0: {} + + aes-js@3.1.2: {} + + aes-js@4.0.0-beta.5: {} + + agent-base@6.0.2: + dependencies: + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + aggregate-error@3.1.0: + dependencies: + clean-stack: 2.2.0 + indent-string: 4.0.0 + + ajv-formats@2.1.1(ajv@8.18.0): + optionalDependencies: + ajv: 8.18.0 + optional: true + + ajv@6.14.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ajv@8.18.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.1.0 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + + amazon-cognito-identity-js@6.3.16(encoding@0.1.13): + dependencies: + '@aws-crypto/sha256-js': 1.2.2 + buffer: 4.9.2 + fast-base64-decode: 1.0.0 + isomorphic-unfetch: 3.1.0(encoding@0.1.13) + js-cookie: 2.2.1 + transitivePeerDependencies: + - encoding + + amdefine@1.0.1: + optional: true + + ansi-align@3.0.1: + dependencies: + string-width: 4.2.3 + + ansi-colors@4.1.1: {} + + ansi-colors@4.1.3: {} + + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + + ansi-regex@2.1.1: {} + + ansi-regex@3.0.1: {} + + ansi-regex@5.0.1: {} + + ansi-regex@6.2.2: {} + + ansi-styles@3.2.1: + dependencies: + color-convert: 1.9.3 + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.3: {} + + antlr4ts@0.5.0-alpha.4: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + apollo-datasource@3.3.2(encoding@0.1.13): + dependencies: + '@apollo/utils.keyvaluecache': 1.0.2 + apollo-server-env: 4.2.1(encoding@0.1.13) + transitivePeerDependencies: + - encoding + optional: true + + apollo-reporting-protobuf@3.4.0: + dependencies: + '@apollo/protobufjs': 1.2.6 + optional: true + + apollo-server-core@3.13.0(encoding@0.1.13)(graphql@15.10.1): + dependencies: + '@apollo/utils.keyvaluecache': 1.0.2 + '@apollo/utils.logger': 1.0.1 + '@apollo/utils.usagereporting': 1.0.1(graphql@15.10.1) + '@apollographql/apollo-tools': 0.5.4(graphql@15.10.1) + '@apollographql/graphql-playground-html': 1.6.29 + '@graphql-tools/mock': 8.7.20(graphql@15.10.1) + '@graphql-tools/schema': 8.5.1(graphql@15.10.1) + '@josephg/resolvable': 1.0.1 + apollo-datasource: 3.3.2(encoding@0.1.13) + apollo-reporting-protobuf: 3.4.0 + apollo-server-env: 4.2.1(encoding@0.1.13) + apollo-server-errors: 3.3.1(graphql@15.10.1) + apollo-server-plugin-base: 3.7.2(encoding@0.1.13)(graphql@15.10.1) + apollo-server-types: 3.8.0(encoding@0.1.13)(graphql@15.10.1) + async-retry: 1.3.3 + fast-json-stable-stringify: 2.1.0 + graphql: 15.10.1 + graphql-tag: 2.12.6(graphql@15.10.1) + loglevel: 1.9.2 + lru-cache: 6.0.0 + node-abort-controller: 3.1.1 + sha.js: 2.4.12 + uuid: 9.0.1 + whatwg-mimetype: 3.0.0 + transitivePeerDependencies: + - encoding + optional: true + + apollo-server-env@4.2.1(encoding@0.1.13): + dependencies: + node-fetch: 2.7.0(encoding@0.1.13) + transitivePeerDependencies: + - encoding + optional: true + + apollo-server-errors@3.3.1(graphql@15.10.1): + dependencies: + graphql: 15.10.1 + optional: true + + apollo-server-express@3.13.0(encoding@0.1.13)(express@4.22.1)(graphql@15.10.1): + dependencies: + '@types/accepts': 1.3.7 + '@types/body-parser': 1.19.2 + '@types/cors': 2.8.12 + '@types/express': 4.17.14 + '@types/express-serve-static-core': 4.17.31 + accepts: 1.3.8 + apollo-server-core: 3.13.0(encoding@0.1.13)(graphql@15.10.1) + apollo-server-types: 3.8.0(encoding@0.1.13)(graphql@15.10.1) + body-parser: 1.20.4 + cors: 2.8.6 + express: 4.22.1 + graphql: 15.10.1 + parseurl: 1.3.3 + transitivePeerDependencies: + - encoding + - supports-color + optional: true + + apollo-server-plugin-base@3.7.2(encoding@0.1.13)(graphql@15.10.1): + dependencies: + apollo-server-types: 3.8.0(encoding@0.1.13)(graphql@15.10.1) + graphql: 15.10.1 + transitivePeerDependencies: + - encoding + optional: true + + apollo-server-types@3.8.0(encoding@0.1.13)(graphql@15.10.1): + dependencies: + '@apollo/utils.keyvaluecache': 1.0.2 + '@apollo/utils.logger': 1.0.1 + apollo-reporting-protobuf: 3.4.0 + apollo-server-env: 4.2.1(encoding@0.1.13) + graphql: 15.10.1 + transitivePeerDependencies: + - encoding + optional: true + + apollo-server@3.13.0(encoding@0.1.13)(graphql@15.10.1): + dependencies: + '@types/express': 4.17.14 + apollo-server-core: 3.13.0(encoding@0.1.13)(graphql@15.10.1) + apollo-server-express: 3.13.0(encoding@0.1.13)(express@4.22.1)(graphql@15.10.1) + express: 4.22.1 + graphql: 15.10.1 + transitivePeerDependencies: + - encoding + - supports-color + optional: true + + app-module-path@2.2.0: {} + + arg@4.1.3: {} + + argparse@1.0.10: + dependencies: + sprintf-js: 1.0.3 + + argparse@2.0.1: {} + + argsarray@0.0.1: + optional: true + + array-back@3.1.0: {} + + array-back@4.0.2: {} + + array-flatten@1.1.1: {} + + array-union@2.1.0: {} + + array-uniq@1.0.3: {} + + asap@2.0.6: {} + + asn1@0.2.6: + dependencies: + safer-buffer: 2.1.2 + + assert-plus@1.0.0: {} + + assertion-error@1.1.0: {} + + astral-regex@2.0.0: {} + + async-eventemitter@0.2.4: + dependencies: + async: 2.6.4 + + async-limiter@1.0.1: {} + + async-retry@1.3.3: + dependencies: + retry: 0.13.1 + + async@1.5.2: {} + + async@2.6.4: + dependencies: + lodash: 4.17.23 + + asynckit@0.4.0: {} + + at-least-node@1.0.0: {} + + atomically@1.7.0: + optional: true + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + await-semaphore@0.1.3: {} + + aws-sign2@0.7.0: {} + + aws4@1.13.2: {} + + axios@1.13.5(debug@4.4.3): + dependencies: + follow-redirects: 1.15.11(debug@4.4.3) + form-data: 4.0.5 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + axios@1.5.0(debug@4.4.3): + dependencies: + follow-redirects: 1.15.11(debug@4.4.3) + form-data: 4.0.5 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + optional: true + + babel-plugin-polyfill-corejs2@0.4.15(@babel/core@7.29.0): + dependencies: + '@babel/compat-data': 7.29.0 + '@babel/core': 7.29.0 + '@babel/helper-define-polyfill-provider': 0.6.6(@babel/core@7.29.0) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.29.0): + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-define-polyfill-provider': 0.6.6(@babel/core@7.29.0) + core-js-compat: 3.48.0 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-regenerator@0.6.6(@babel/core@7.29.0): + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-define-polyfill-provider': 0.6.6(@babel/core@7.29.0) + transitivePeerDependencies: + - supports-color + + backoff@2.5.0: + dependencies: + precond: 0.2.3 + + balanced-match@1.0.2: {} + + balanced-match@4.0.4: {} + + base-x@3.0.11: + dependencies: + safe-buffer: 5.2.1 + + base64-js@1.5.1: {} + + baseline-browser-mapping@2.10.0: {} + + bcrypt-pbkdf@1.0.2: + dependencies: + tweetnacl: 0.14.5 + + bech32@1.1.4: {} + + big-integer@1.6.36: {} + + big.js@6.2.2: {} + + bignumber.js@9.3.1: {} + + binary-extensions@2.3.0: {} + + blakejs@1.2.1: {} + + bluebird@3.7.2: {} + + bn.js@4.11.6: {} + + bn.js@4.12.3: {} + + bn.js@5.2.3: {} + + body-parser@1.20.4: + dependencies: + bytes: 3.1.2 + content-type: 1.0.5 + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + http-errors: 2.0.1 + iconv-lite: 0.4.24 + on-finished: 2.4.1 + qs: 6.14.2 + raw-body: 2.5.3 + type-is: 1.6.18 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + + boxen@5.1.2: + dependencies: + ansi-align: 3.0.1 + camelcase: 6.3.0 + chalk: 4.1.2 + cli-boxes: 2.2.1 + string-width: 4.2.3 + type-fest: 0.20.2 + widest-line: 3.1.0 + wrap-ansi: 7.0.0 + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + brace-expansion@5.0.3: + dependencies: + balanced-match: 4.0.4 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + brorand@1.1.0: {} + + browser-stdout@1.3.1: {} + + browserify-aes@1.2.0: + dependencies: + buffer-xor: 1.0.3 + cipher-base: 1.0.7 + create-hash: 1.2.0 + evp_bytestokey: 1.0.3 + inherits: 2.0.4 + safe-buffer: 5.2.1 + + browserslist@4.28.1: + dependencies: + baseline-browser-mapping: 2.10.0 + caniuse-lite: 1.0.30001774 + electron-to-chromium: 1.5.302 + node-releases: 2.0.27 + update-browserslist-db: 1.2.3(browserslist@4.28.1) + + bs58@4.0.1: + dependencies: + base-x: 3.0.11 + + bs58check@2.1.2: + dependencies: + bs58: 4.0.1 + create-hash: 1.2.0 + safe-buffer: 5.2.1 + + btoa@1.2.1: {} + + buffer-from@1.1.2: {} + + buffer-to-arraybuffer@0.0.5: {} + + buffer-xor@1.0.3: {} + + buffer@4.9.2: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + isarray: 1.0.0 + + buffer@5.7.1: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + buffer@6.0.3: + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + + bufferutil@4.0.5: + dependencies: + node-gyp-build: 4.8.4 + optional: true + + bufferutil@4.0.7: + dependencies: + node-gyp-build: 4.8.4 + optional: true + + bufferutil@4.1.0: + dependencies: + node-gyp-build: 4.8.4 + + bytes@3.1.2: {} + + cacheable-lookup@5.0.4: {} + + cacheable-lookup@6.1.0: {} + + cacheable-request@7.0.4: + dependencies: + clone-response: 1.0.3 + get-stream: 5.2.0 + http-cache-semantics: 4.2.0 + keyv: 4.5.4 + lowercase-keys: 2.0.0 + normalize-url: 6.1.0 + responselike: 2.0.1 + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + camel-case@3.0.0: + dependencies: + no-case: 2.3.2 + upper-case: 1.1.3 + + camelcase@3.0.0: {} + + camelcase@6.3.0: {} + + caniuse-lite@1.0.30001774: {} + + caseless@0.12.0: {} + + catering@2.1.1: {} + + cbor@10.0.11: + dependencies: + nofilter: 3.1.0 + + cbor@5.2.0: + dependencies: + bignumber.js: 9.3.1 + nofilter: 1.0.4 + + cbor@8.1.0: + dependencies: + nofilter: 3.1.0 + + chai-as-promised@7.1.2(chai@4.5.0): + dependencies: + chai: 4.5.0 + check-error: 1.0.3 + + chai@4.5.0: + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.4 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.1.0 + + chalk@2.4.2: + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + change-case@3.0.2: + dependencies: + camel-case: 3.0.0 + constant-case: 2.0.0 + dot-case: 2.1.1 + header-case: 1.0.1 + is-lower-case: 1.1.3 + is-upper-case: 1.1.2 + lower-case: 1.1.4 + lower-case-first: 1.0.2 + no-case: 2.3.2 + param-case: 2.1.1 + pascal-case: 2.0.1 + path-case: 2.1.1 + sentence-case: 2.1.1 + snake-case: 2.1.0 + swap-case: 1.1.2 + title-case: 2.1.1 + upper-case: 1.1.3 + upper-case-first: 1.1.2 + + charenc@0.0.2: {} + + check-error@1.0.3: + dependencies: + get-func-name: 2.0.2 + + checkpoint-store@1.1.0: + dependencies: + functional-red-black-tree: 1.0.1 + + chokidar@3.5.3: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + chokidar@4.0.3: + dependencies: + readdirp: 4.1.2 + + chownr@1.1.4: {} + + ci-info@2.0.0: {} + + ci-info@3.9.0: {} + + cids@0.7.5: + dependencies: + buffer: 5.7.1 + class-is: 1.1.0 + multibase: 0.6.1 + multicodec: 1.0.4 + multihashes: 0.4.21 + + cipher-base@1.0.7: + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + class-is@1.1.0: {} + + clean-stack@2.2.0: {} + + cli-boxes@2.2.1: {} + + cli-cursor@3.1.0: + dependencies: + restore-cursor: 3.1.0 + optional: true + + cli-table3@0.5.1: + dependencies: + object-assign: 4.1.1 + string-width: 2.1.1 + optionalDependencies: + colors: 1.4.0 + + cliui@3.2.0: + dependencies: + string-width: 1.0.2 + strip-ansi: 3.0.1 + wrap-ansi: 2.1.0 + + cliui@7.0.4: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + cliui@9.0.1: + dependencies: + string-width: 7.2.0 + strip-ansi: 7.1.2 + wrap-ansi: 9.0.2 + + clone-buffer@1.0.0: + optional: true + + clone-response@1.0.3: + dependencies: + mimic-response: 1.0.1 + + clone@2.1.2: {} + + code-point-at@1.1.0: {} + + color-convert@1.9.3: + dependencies: + color-name: 1.1.3 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.3: {} + + color-name@1.1.4: {} + + colors@1.4.0: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + command-exists@1.2.9: {} + + command-line-args@5.2.1: + dependencies: + array-back: 3.1.0 + find-replace: 3.0.0 + lodash.camelcase: 4.3.0 + typical: 4.0.0 + + command-line-usage@6.1.3: + dependencies: + array-back: 4.0.2 + chalk: 2.4.2 + table-layout: 1.0.2 + typical: 5.2.0 + + commander@2.20.3: + optional: true + + commander@8.3.0: {} + + compare-versions@6.1.1: {} + + concat-map@0.0.1: {} + + concat-stream@1.6.2: + dependencies: + buffer-from: 1.1.2 + inherits: 2.0.4 + readable-stream: 2.3.8 + typedarray: 0.0.6 + + conf@10.2.0: + dependencies: + ajv: 8.18.0 + ajv-formats: 2.1.1(ajv@8.18.0) + atomically: 1.7.0 + debounce-fn: 4.0.0 + dot-prop: 6.0.1 + env-paths: 2.2.1 + json-schema-typed: 7.0.3 + onetime: 5.1.2 + pkg-up: 3.1.0 + semver: 7.7.4 + optional: true + + constant-case@2.0.0: + dependencies: + snake-case: 2.1.0 + upper-case: 1.1.3 + + content-disposition@0.5.4: + dependencies: + safe-buffer: 5.2.1 + + content-hash@2.5.2: + dependencies: + cids: 0.7.5 + multicodec: 0.5.7 + multihashes: 0.4.21 + + content-type@1.0.5: {} + + convert-source-map@2.0.0: {} + + cookie-signature@1.0.7: {} + + cookie@0.4.2: {} + + cookie@0.7.2: {} + + core-js-compat@3.48.0: + dependencies: + browserslist: 4.28.1 + + core-util-is@1.0.2: {} + + core-util-is@1.0.3: {} + + cors@2.8.6: + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + + crc-32@1.2.2: {} + + create-hash@1.2.0: + dependencies: + cipher-base: 1.0.7 + inherits: 2.0.4 + md5.js: 1.3.5 + ripemd160: 2.0.3 + sha.js: 2.4.12 + + create-hmac@1.1.7: + dependencies: + cipher-base: 1.0.7 + create-hash: 1.2.0 + inherits: 2.0.4 + ripemd160: 2.0.3 + safe-buffer: 5.2.1 + sha.js: 2.4.12 + + create-require@1.1.1: {} + + cross-fetch@2.2.6(encoding@0.1.13): + dependencies: + node-fetch: 2.7.0(encoding@0.1.13) + whatwg-fetch: 2.0.4 + transitivePeerDependencies: + - encoding + + cross-fetch@3.2.0(encoding@0.1.13): + dependencies: + node-fetch: 2.7.0(encoding@0.1.13) + transitivePeerDependencies: + - encoding + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + crypt@0.0.2: {} + + crypto-addr-codec@0.1.8: + dependencies: + base-x: 3.0.11 + big-integer: 1.6.36 + blakejs: 1.2.1 + bs58: 4.0.1 + ripemd160-min: 0.0.6 + safe-buffer: 5.2.1 + sha3: 2.1.4 + + cssfilter@0.0.10: + optional: true + + d@1.0.2: + dependencies: + es5-ext: 0.10.64 + type: 2.7.3 + + dashdash@1.14.1: + dependencies: + assert-plus: 1.0.0 + + dataloader@2.1.0: + optional: true + + death@1.1.0: {} + + debounce-fn@4.0.0: + dependencies: + mimic-fn: 3.1.0 + optional: true + + debug@2.6.9: + dependencies: + ms: 2.0.0 + + debug@3.1.0: + dependencies: + ms: 2.0.0 + optional: true + + debug@3.2.7: + dependencies: + ms: 2.1.3 + + debug@4.3.4(supports-color@8.1.1): + dependencies: + ms: 2.1.2 + optionalDependencies: + supports-color: 8.1.1 + + debug@4.4.3(supports-color@8.1.1): + dependencies: + ms: 2.1.3 + optionalDependencies: + supports-color: 8.1.1 + + decamelize@1.2.0: {} + + decamelize@4.0.0: {} + + decode-uri-component@0.2.2: {} + + decompress-response@3.3.0: + dependencies: + mimic-response: 1.0.1 + + decompress-response@6.0.0: + dependencies: + mimic-response: 3.1.0 + + deep-eql@4.1.4: + dependencies: + type-detect: 4.1.0 + + deep-extend@0.6.0: {} + + deep-is@0.1.4: {} + + defer-to-connect@2.0.1: {} + + deferred-leveldown@1.2.2: + dependencies: + abstract-leveldown: 2.6.3 + + deferred-leveldown@5.3.0: + dependencies: + abstract-leveldown: 6.2.3 + inherits: 2.0.4 + optional: true + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + delay@5.0.0: + optional: true + + delayed-stream@1.0.0: {} + + depd@2.0.0: {} + + destroy@1.2.0: {} + + diff@4.0.4: {} + + diff@5.0.0: {} + + diff@5.2.2: {} + + difflib@0.2.4: + dependencies: + heap: 0.2.7 + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + dom-walk@0.1.2: {} + + dot-case@2.1.1: + dependencies: + no-case: 2.3.2 + + dot-prop@6.0.1: + dependencies: + is-obj: 2.0.0 + optional: true + + double-ended-queue@2.1.0-0: + optional: true + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + ecc-jsbn@0.1.2: + dependencies: + jsbn: 0.1.1 + safer-buffer: 2.1.2 + + ee-first@1.1.1: {} + + electron-to-chromium@1.5.302: {} + + elliptic@6.5.4: + dependencies: + bn.js: 4.12.3 + brorand: 1.1.0 + hash.js: 1.1.3 + hmac-drbg: 1.0.1 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + optional: true + + elliptic@6.6.1: + dependencies: + bn.js: 4.12.3 + brorand: 1.1.0 + hash.js: 1.1.7 + hmac-drbg: 1.0.1 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + emittery@0.10.0: {} + + emittery@0.4.1: + optional: true + + emoji-regex@10.6.0: {} + + emoji-regex@8.0.0: {} + + encodeurl@2.0.0: {} + + encoding-down@6.3.0: + dependencies: + abstract-leveldown: 6.3.0 + inherits: 2.0.4 + level-codec: 9.0.2 + level-errors: 2.0.1 + optional: true + + encoding@0.1.13: + dependencies: + iconv-lite: 0.6.3 + + end-of-stream@1.4.5: + dependencies: + once: 1.4.0 + + end-stream@0.1.0: + dependencies: + write-stream: 0.4.3 + optional: true + + enquirer@2.4.1: + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + + env-paths@2.2.1: {} + + errno@0.1.8: + dependencies: + prr: 1.0.1 + + error-ex@1.3.4: + dependencies: + is-arrayish: 0.2.1 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es5-ext@0.10.64: + dependencies: + es6-iterator: 2.0.3 + es6-symbol: 3.1.4 + esniff: 2.0.1 + next-tick: 1.1.0 + + es6-iterator@2.0.3: + dependencies: + d: 1.0.2 + es5-ext: 0.10.64 + es6-symbol: 3.1.4 + + es6-promise@4.2.8: {} + + es6-symbol@3.1.4: + dependencies: + d: 1.0.2 + ext: 1.7.0 + + escalade@3.2.0: {} + + escape-html@1.0.3: {} + + escape-string-regexp@1.0.5: {} + + escape-string-regexp@4.0.0: {} + + escodegen@1.8.1: + dependencies: + esprima: 2.7.3 + estraverse: 1.9.3 + esutils: 2.0.3 + optionator: 0.8.3 + optionalDependencies: + source-map: 0.2.0 + + esniff@2.0.1: + dependencies: + d: 1.0.2 + es5-ext: 0.10.64 + event-emitter: 0.3.5 + type: 2.7.3 + + esprima@2.7.3: {} + + esprima@4.0.1: {} + + estraverse@1.9.3: {} + + esutils@2.0.3: {} + + etag@1.8.1: {} + + eth-block-tracker@4.4.3(@babel/core@7.29.0): + dependencies: + '@babel/plugin-transform-runtime': 7.29.0(@babel/core@7.29.0) + '@babel/runtime': 7.28.6 + eth-query: 2.1.2 + json-rpc-random-id: 1.0.1 + pify: 3.0.0 + safe-event-emitter: 1.0.1 + transitivePeerDependencies: + - '@babel/core' + - supports-color + + eth-ens-namehash@2.0.8: + dependencies: + idna-uts46-hx: 2.3.1 + js-sha3: 0.5.7 + + eth-gas-reporter@0.2.27(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + '@solidity-parser/parser': 0.14.5 + axios: 1.13.5(debug@4.4.3) + cli-table3: 0.5.1 + colors: 1.4.0 + ethereum-cryptography: 1.2.0 + ethers: 5.8.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + fs-readdir-recursive: 1.1.0 + lodash: 4.17.23 + markdown-table: 1.1.3 + mocha: 10.8.2 + req-cwd: 2.0.0 + sha1: 1.1.1 + sync-request: 6.1.0 + transitivePeerDependencies: + - bufferutil + - debug + - utf-8-validate + + eth-json-rpc-errors@1.1.1: + dependencies: + fast-safe-stringify: 2.1.1 + + eth-json-rpc-errors@2.0.2: + dependencies: + fast-safe-stringify: 2.1.1 + + eth-lib@0.1.29(bufferutil@4.0.7)(utf-8-validate@6.0.3): + dependencies: + bn.js: 4.12.3 + elliptic: 6.6.1 + nano-json-stream-parser: 0.1.2 + servify: 0.1.12 + ws: 3.3.3(bufferutil@4.0.7)(utf-8-validate@6.0.3) + xhr-request-promise: 0.1.3 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + eth-lib@0.1.29(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + bn.js: 4.12.3 + elliptic: 6.6.1 + nano-json-stream-parser: 0.1.2 + servify: 0.1.12 + ws: 3.3.3(bufferutil@4.1.0)(utf-8-validate@5.0.10) + xhr-request-promise: 0.1.3 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + eth-lib@0.2.8: + dependencies: + bn.js: 4.12.3 + elliptic: 6.6.1 + xhr-request-promise: 0.1.3 + + eth-query@2.1.2: + dependencies: + json-rpc-random-id: 1.0.1 + xtend: 4.0.2 + + eth-rpc-errors@3.0.0: + dependencies: + fast-safe-stringify: 2.1.1 + + eth-sig-util@3.0.1: + dependencies: + ethereumjs-abi: 0.6.8 + ethereumjs-util: 5.2.1 + tweetnacl: 1.0.3 + tweetnacl-util: 0.15.1 + + ethereum-bloom-filters@1.2.0: + dependencies: + '@noble/hashes': 1.8.0 + + ethereum-common@0.0.18: {} + + ethereum-common@0.2.0: {} + + ethereum-cryptography@0.1.3: + dependencies: + '@types/pbkdf2': 3.1.2 + '@types/secp256k1': 4.0.7 + blakejs: 1.2.1 + browserify-aes: 1.2.0 + bs58check: 2.1.2 + create-hash: 1.2.0 + create-hmac: 1.1.7 + hash.js: 1.1.7 + keccak: 3.0.4 + pbkdf2: 3.1.5 + randombytes: 2.1.0 + safe-buffer: 5.2.1 + scrypt-js: 3.0.1 + secp256k1: 4.0.4 + setimmediate: 1.0.5 + + ethereum-cryptography@1.2.0: + dependencies: + '@noble/hashes': 1.2.0 + '@noble/secp256k1': 1.7.1 + '@scure/bip32': 1.1.5 + '@scure/bip39': 1.1.1 + + ethereum-cryptography@2.2.1: + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/bip32': 1.4.0 + '@scure/bip39': 1.3.0 + + ethereum-protocol@1.0.1: {} + + ethereumjs-abi@0.6.8: + dependencies: + bn.js: 4.12.3 + ethereumjs-util: 6.2.1 + + ethereumjs-account@2.0.5: + dependencies: + ethereumjs-util: 5.2.1 + rlp: 2.2.7 + safe-buffer: 5.2.1 + + ethereumjs-block@1.7.1: + dependencies: + async: 2.6.4 + ethereum-common: 0.2.0 + ethereumjs-tx: 1.3.7 + ethereumjs-util: 5.2.1 + merkle-patricia-tree: 2.3.2 + + ethereumjs-block@2.2.2: + dependencies: + async: 2.6.4 + ethereumjs-common: 1.5.2 + ethereumjs-tx: 2.1.2 + ethereumjs-util: 5.2.1 + merkle-patricia-tree: 2.3.2 + + ethereumjs-common@1.5.2: {} + + ethereumjs-tx@1.3.7: + dependencies: + ethereum-common: 0.0.18 + ethereumjs-util: 5.2.1 + + ethereumjs-tx@2.1.2: + dependencies: + ethereumjs-common: 1.5.2 + ethereumjs-util: 6.2.1 + + ethereumjs-util@5.2.1: + dependencies: + bn.js: 4.12.3 + create-hash: 1.2.0 + elliptic: 6.6.1 + ethereum-cryptography: 0.1.3 + ethjs-util: 0.1.6 + rlp: 2.2.7 + safe-buffer: 5.2.1 + + ethereumjs-util@6.2.1: + dependencies: + '@types/bn.js': 4.11.6 + bn.js: 4.12.3 + create-hash: 1.2.0 + elliptic: 6.6.1 + ethereum-cryptography: 0.1.3 + ethjs-util: 0.1.6 + rlp: 2.2.7 + + ethereumjs-util@7.1.5: + dependencies: + '@types/bn.js': 5.2.0 + bn.js: 5.2.3 + create-hash: 1.2.0 + ethereum-cryptography: 0.1.3 + rlp: 2.2.7 + + ethereumjs-vm@2.6.0: + dependencies: + async: 2.6.4 + async-eventemitter: 0.2.4 + ethereumjs-account: 2.0.5 + ethereumjs-block: 2.2.2 + ethereumjs-common: 1.5.2 + ethereumjs-util: 6.2.1 + fake-merkle-patricia-tree: 1.0.1 + functional-red-black-tree: 1.0.1 + merkle-patricia-tree: 2.3.2 + rustbn.js: 0.2.0 + safe-buffer: 5.2.1 + + ethereumjs-wallet@1.0.2: + dependencies: + aes-js: 3.1.2 + bs58check: 2.1.2 + ethereum-cryptography: 0.1.3 + ethereumjs-util: 7.1.5 + randombytes: 2.1.0 + scrypt-js: 3.0.1 + utf8: 3.0.0 + uuid: 8.3.2 + + ethers@4.0.49: + dependencies: + aes-js: 3.0.0 + bn.js: 4.12.3 + elliptic: 6.5.4 + hash.js: 1.1.3 + js-sha3: 0.5.7 + scrypt-js: 2.0.4 + setimmediate: 1.0.4 + uuid: 2.0.1 + xmlhttprequest: 1.8.0 + optional: true + + ethers@5.8.0(bufferutil@4.0.7)(utf-8-validate@6.0.3): + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/contracts': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/json-wallets': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/providers': 5.8.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/solidity': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/units': 5.8.0 + '@ethersproject/wallet': 5.8.0 + '@ethersproject/web': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + ethers@5.8.0(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/contracts': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/json-wallets': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/providers': 5.8.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/solidity': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/units': 5.8.0 + '@ethersproject/wallet': 5.8.0 + '@ethersproject/web': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + ethers@6.16.0(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + '@adraffy/ens-normalize': 1.10.1 + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@types/node': 22.7.5 + aes-js: 4.0.0-beta.5 + tslib: 2.7.0 + ws: 8.17.1(bufferutil@4.1.0)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + ethjs-unit@0.1.6: + dependencies: + bn.js: 4.11.6 + number-to-bn: 1.7.0 + + ethjs-util@0.1.6: + dependencies: + is-hex-prefixed: 1.0.0 + strip-hex-prefix: 1.0.0 + + event-emitter@0.3.5: + dependencies: + d: 1.0.2 + es5-ext: 0.10.64 + + event-target-shim@5.0.1: + optional: true + + eventemitter3@4.0.4: {} + + events@3.3.0: {} + + evp_bytestokey@1.0.3: + dependencies: + md5.js: 1.3.5 + safe-buffer: 5.2.1 + + express@4.22.1: + dependencies: + accepts: 1.3.8 + array-flatten: 1.1.1 + body-parser: 1.20.4 + content-disposition: 0.5.4 + content-type: 1.0.5 + cookie: 0.7.2 + cookie-signature: 1.0.7 + debug: 2.6.9 + depd: 2.0.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 1.3.2 + fresh: 0.5.2 + http-errors: 2.0.1 + merge-descriptors: 1.0.3 + methods: 1.1.2 + on-finished: 2.4.1 + parseurl: 1.3.3 + path-to-regexp: 0.1.12 + proxy-addr: 2.0.7 + qs: 6.14.2 + range-parser: 1.2.1 + safe-buffer: 5.2.1 + send: 0.19.2 + serve-static: 1.16.3 + setprototypeof: 1.2.0 + statuses: 2.0.2 + type-is: 1.6.18 + utils-merge: 1.0.1 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + + ext@1.7.0: + dependencies: + type: 2.7.3 + + extend@3.0.2: {} + + extsprintf@1.3.0: {} + + fake-merkle-patricia-tree@1.0.1: + dependencies: + checkpoint-store: 1.1.0 + + fast-base64-decode@1.0.0: {} + + fast-check@3.1.1: + dependencies: + pure-rand: 5.0.5 + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fast-safe-stringify@2.1.1: {} + + fast-uri@3.1.0: {} + + fastq@1.20.1: + dependencies: + reusify: 1.1.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + fetch-cookie@0.11.0: + dependencies: + tough-cookie: 4.1.4 + optional: true + + fetch-ponyfill@4.1.0: + dependencies: + node-fetch: 1.7.3 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + finalhandler@1.3.2: + dependencies: + debug: 2.6.9 + encodeurl: 2.0.0 + escape-html: 1.0.3 + on-finished: 2.4.1 + parseurl: 1.3.3 + statuses: 2.0.2 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + + find-replace@3.0.0: + dependencies: + array-back: 3.1.0 + + find-up@1.1.2: + dependencies: + path-exists: 2.1.0 + pinkie-promise: 2.0.1 + + find-up@2.1.0: + dependencies: + locate-path: 2.0.0 + optional: true + + find-up@3.0.0: + dependencies: + locate-path: 3.0.0 + optional: true + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + find-yarn-workspace-root@2.0.0: + dependencies: + micromatch: 4.0.8 + + flat@5.0.2: {} + + follow-redirects@1.15.11(debug@4.4.3): + optionalDependencies: + debug: 4.4.3(supports-color@8.1.1) + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + foreach@2.0.6: {} + + forever-agent@0.6.1: {} + + form-data-encoder@1.7.1: {} + + form-data@2.3.3: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + + form-data@2.5.5: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.2 + mime-types: 2.1.35 + safe-buffer: 5.2.1 + + form-data@4.0.5: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + hasown: 2.0.2 + mime-types: 2.1.35 + + forwarded@0.2.0: {} + + fp-ts@1.19.3: {} + + fresh@0.5.2: {} + + fs-extra@0.30.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 2.4.0 + klaw: 1.3.1 + path-is-absolute: 1.0.1 + rimraf: 2.7.1 + + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.2.0 + universalify: 2.0.1 + + fs-extra@4.0.3: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs-extra@7.0.1: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs-extra@8.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + + fs-extra@9.1.0: + dependencies: + at-least-node: 1.0.0 + graceful-fs: 4.2.11 + jsonfile: 6.2.0 + universalify: 2.0.1 + + fs-minipass@1.2.7: + dependencies: + minipass: 2.9.0 + + fs-readdir-recursive@1.1.0: {} + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + functional-red-black-tree@1.0.1: {} + + ganache@7.9.1: + dependencies: + '@trufflesuite/uws-js-unofficial': 20.30.0-unofficial.0 + '@types/bn.js': 5.2.0 + '@types/lru-cache': 5.1.1 + '@types/seedrandom': 3.0.1 + abstract-level: 1.0.3 + abstract-leveldown: 7.2.0 + async-eventemitter: 0.2.4 + emittery: 0.10.0 + optionalDependencies: + bufferutil: 4.0.5 + utf-8-validate: 5.0.7 + + generator-function@2.0.1: {} + + gensync@1.0.0-beta.2: {} + + get-caller-file@1.0.3: {} + + get-caller-file@2.0.5: {} + + get-east-asian-width@1.5.0: {} + + get-func-name@2.0.2: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-port@3.2.0: {} + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-stream@5.2.0: + dependencies: + pump: 3.0.3 + + get-stream@6.0.1: {} + + getpass@0.1.7: + dependencies: + assert-plus: 1.0.0 + + ghost-testrpc@0.0.2: + dependencies: + chalk: 2.4.2 + node-emoji: 1.11.0 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob@5.0.15: + dependencies: + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@7.1.7: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@7.2.0: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.5 + once: 1.4.0 + path-is-absolute: 1.0.1 + + glob@8.1.0: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 5.1.9 + once: 1.4.0 + + global-modules@2.0.0: + dependencies: + global-prefix: 3.0.0 + + global-prefix@3.0.0: + dependencies: + ini: 1.3.8 + kind-of: 6.0.3 + which: 1.3.1 + + global@4.4.0: + dependencies: + min-document: 2.19.2 + process: 0.11.10 + + globby@10.0.2: + dependencies: + '@types/glob': 7.2.0 + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + glob: 7.2.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + gopd@1.2.0: {} + + got@11.8.6: + dependencies: + '@sindresorhus/is': 4.6.0 + '@szmarczak/http-timer': 4.0.6 + '@types/cacheable-request': 6.0.3 + '@types/responselike': 1.0.3 + cacheable-lookup: 5.0.4 + cacheable-request: 7.0.4 + decompress-response: 6.0.0 + http2-wrapper: 1.0.3 + lowercase-keys: 2.0.0 + p-cancelable: 2.1.1 + responselike: 2.0.1 + + got@12.1.0: + dependencies: + '@sindresorhus/is': 4.6.0 + '@szmarczak/http-timer': 5.0.1 + '@types/cacheable-request': 6.0.3 + '@types/responselike': 1.0.3 + cacheable-lookup: 6.1.0 + cacheable-request: 7.0.4 + decompress-response: 6.0.0 + form-data-encoder: 1.7.1 + get-stream: 6.0.1 + http2-wrapper: 2.2.1 + lowercase-keys: 3.0.0 + p-cancelable: 3.0.0 + responselike: 2.0.1 + + graceful-fs@4.2.11: {} + + graphql-tag@2.12.6(graphql@15.10.1): + dependencies: + graphql: 15.10.1 + tslib: 2.8.1 + optional: true + + graphql@15.10.1: + optional: true + + handlebars@4.7.8: + dependencies: + minimist: 1.2.8 + neo-async: 2.6.2 + source-map: 0.6.1 + wordwrap: 1.0.0 + optionalDependencies: + uglify-js: 3.19.3 + + har-schema@2.0.0: {} + + har-validator@5.1.5: + dependencies: + ajv: 6.14.0 + har-schema: 2.0.0 + + hardhat-gas-reporter@1.0.10(bufferutil@4.1.0)(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10): + dependencies: + array-uniq: 1.0.3 + eth-gas-reporter: 0.2.27(bufferutil@4.1.0)(utf-8-validate@5.0.10) + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + sha1: 1.1.1 + transitivePeerDependencies: + - '@codechecks/client' + - bufferutil + - debug + - utf-8-validate + + hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10): + dependencies: + '@ethereumjs/util': 9.1.0 + '@ethersproject/abi': 5.8.0 + '@nomicfoundation/edr': 0.12.0-next.23 + '@nomicfoundation/solidity-analyzer': 0.1.2 + '@sentry/node': 5.30.0 + adm-zip: 0.4.16 + aggregate-error: 3.1.0 + ansi-escapes: 4.3.2 + boxen: 5.1.2 + chokidar: 4.0.3 + ci-info: 2.0.0 + debug: 4.4.3(supports-color@8.1.1) + enquirer: 2.4.1 + env-paths: 2.2.1 + ethereum-cryptography: 1.2.0 + find-up: 5.0.0 + fp-ts: 1.19.3 + fs-extra: 7.0.1 + immutable: 4.3.7 + io-ts: 1.10.4 + json-stream-stringify: 3.1.6 + keccak: 3.0.4 + lodash: 4.17.23 + micro-eth-signer: 0.14.0 + mnemonist: 0.38.5 + mocha: 10.8.2 + p-map: 4.0.0 + picocolors: 1.1.1 + raw-body: 2.5.3 + resolve: 1.17.0 + semver: 6.3.1 + solc: 0.8.26(debug@4.4.3) + source-map-support: 0.5.21 + stacktrace-parser: 0.1.11 + tinyglobby: 0.2.15 + tsort: 0.0.1 + undici: 5.29.0 + uuid: 8.3.2 + ws: 7.5.10(bufferutil@4.1.0)(utf-8-validate@5.0.10) + optionalDependencies: + ts-node: 10.9.2(@types/node@25.3.1)(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + has-flag@1.0.0: {} + + has-flag@3.0.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hash-base@3.1.2: + dependencies: + inherits: 2.0.4 + readable-stream: 2.3.8 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + hash.js@1.1.3: + dependencies: + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + optional: true + + hash.js@1.1.7: + dependencies: + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + he@1.2.0: {} + + header-case@1.0.1: + dependencies: + no-case: 2.3.2 + upper-case: 1.1.3 + + heap@0.2.7: {} + + hmac-drbg@1.0.1: + dependencies: + hash.js: 1.1.7 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + + hosted-git-info@2.8.9: {} + + http-basic@8.1.3: + dependencies: + caseless: 0.12.0 + concat-stream: 1.6.2 + http-response-object: 3.0.2 + parse-cache-control: 1.0.1 + + http-cache-semantics@4.2.0: {} + + http-errors@2.0.1: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.2 + toidentifier: 1.0.1 + + http-https@1.0.0: {} + + http-response-object@3.0.2: + dependencies: + '@types/node': 10.17.60 + + http-signature@1.2.0: + dependencies: + assert-plus: 1.0.0 + jsprim: 1.4.2 + sshpk: 1.18.0 + + http2-wrapper@1.0.3: + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + + http2-wrapper@2.2.1: + dependencies: + quick-lru: 5.1.1 + resolve-alpn: 1.2.1 + + https-proxy-agent@5.0.1: + dependencies: + agent-base: 6.0.2 + debug: 4.4.3(supports-color@8.1.1) + transitivePeerDependencies: + - supports-color + + iconv-lite@0.4.24: + dependencies: + safer-buffer: 2.1.2 + + iconv-lite@0.6.3: + dependencies: + safer-buffer: 2.1.2 + + idna-uts46-hx@2.3.1: + dependencies: + punycode: 2.1.0 + + ieee754@1.2.1: {} + + ignore@5.3.2: {} + + immediate@3.3.0: {} + + immutable@4.3.7: {} + + indent-string@4.0.0: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + ini@1.3.8: {} + + interpret@1.4.0: {} + + invert-kv@1.0.0: {} + + io-ts@1.10.4: + dependencies: + fp-ts: 1.19.3 + + ipaddr.js@1.9.1: {} + + is-arguments@1.2.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-arrayish@0.2.1: {} + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-buffer@2.0.5: {} + + is-callable@1.2.7: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-docker@2.2.1: {} + + is-extglob@2.1.1: {} + + is-fn@1.0.0: {} + + is-fullwidth-code-point@1.0.0: + dependencies: + number-is-nan: 1.0.1 + + is-fullwidth-code-point@2.0.0: {} + + is-fullwidth-code-point@3.0.0: {} + + is-function@1.0.2: {} + + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-hex-prefixed@1.0.0: {} + + is-lower-case@1.1.3: + dependencies: + lower-case: 1.1.4 + + is-number@7.0.0: {} + + is-obj@2.0.0: + optional: true + + is-plain-obj@2.1.0: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-stream@1.1.0: {} + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.20 + + is-typedarray@1.0.0: {} + + is-unicode-supported@0.1.0: {} + + is-upper-case@1.1.2: + dependencies: + upper-case: 1.1.3 + + is-utf8@0.2.1: {} + + is-wsl@2.2.0: + dependencies: + is-docker: 2.2.1 + + isarray@0.0.1: {} + + isarray@1.0.0: {} + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + isomorphic-unfetch@3.1.0(encoding@0.1.13): + dependencies: + node-fetch: 2.7.0(encoding@0.1.13) + unfetch: 4.2.0 + transitivePeerDependencies: + - encoding + + isomorphic-ws@4.0.1(ws@7.5.10(bufferutil@4.0.7)(utf-8-validate@6.0.3)): + dependencies: + ws: 7.5.10(bufferutil@4.0.7)(utf-8-validate@6.0.3) + optional: true + + isstream@0.1.2: {} + + js-cookie@2.2.1: {} + + js-sha3@0.5.7: {} + + js-sha3@0.8.0: {} + + js-tokens@4.0.0: {} + + js-yaml@3.14.2: + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + jsbn@0.1.1: {} + + jsesc@3.1.0: {} + + json-buffer@3.0.1: {} + + json-pointer@0.6.2: + dependencies: + foreach: 2.0.6 + + json-rpc-engine@5.4.0: + dependencies: + eth-rpc-errors: 3.0.0 + safe-event-emitter: 1.0.1 + + json-rpc-random-id@1.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-schema-traverse@1.0.0: {} + + json-schema-typed@7.0.3: + optional: true + + json-schema@0.4.0: {} + + json-stable-stringify@1.3.0: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + isarray: 2.0.5 + jsonify: 0.0.1 + object-keys: 1.1.1 + + json-stream-stringify@3.1.6: {} + + json-stringify-safe@5.0.1: {} + + json5@2.2.3: {} + + jsonfile@2.4.0: + optionalDependencies: + graceful-fs: 4.2.11 + + jsonfile@4.0.0: + optionalDependencies: + graceful-fs: 4.2.11 + + jsonfile@6.2.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + jsonify@0.0.1: {} + + jsonschema@1.5.0: {} + + jsprim@1.4.2: + dependencies: + assert-plus: 1.0.0 + extsprintf: 1.3.0 + json-schema: 0.4.0 + verror: 1.10.0 + + keccak@3.0.4: + dependencies: + node-addon-api: 2.0.2 + node-gyp-build: 4.8.4 + readable-stream: 3.6.2 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + kind-of@6.0.3: {} + + klaw-sync@6.0.0: + dependencies: + graceful-fs: 4.2.11 + + klaw@1.3.1: + optionalDependencies: + graceful-fs: 4.2.11 + + lcid@1.0.0: + dependencies: + invert-kv: 1.0.0 + + level-codec@7.0.1: {} + + level-codec@9.0.2: + dependencies: + buffer: 5.7.1 + optional: true + + level-concat-iterator@2.0.1: + optional: true + + level-concat-iterator@3.1.0: + dependencies: + catering: 2.1.1 + + level-errors@1.0.5: + dependencies: + errno: 0.1.8 + + level-errors@2.0.1: + dependencies: + errno: 0.1.8 + optional: true + + level-iterator-stream@1.3.1: + dependencies: + inherits: 2.0.4 + level-errors: 1.0.5 + readable-stream: 1.1.14 + xtend: 4.0.2 + + level-iterator-stream@4.0.2: + dependencies: + inherits: 2.0.4 + readable-stream: 3.6.2 + xtend: 4.0.2 + optional: true + + level-js@5.0.2: + dependencies: + abstract-leveldown: 6.2.3 + buffer: 5.7.1 + inherits: 2.0.4 + ltgt: 2.2.1 + optional: true + + level-packager@5.1.1: + dependencies: + encoding-down: 6.3.0 + levelup: 4.4.0 + optional: true + + level-supports@1.0.1: + dependencies: + xtend: 4.0.2 + optional: true + + level-supports@2.1.0: {} + + level-supports@4.0.1: {} + + level-transcoder@1.0.1: + dependencies: + buffer: 6.0.3 + module-error: 1.0.2 + + level-write-stream@1.0.0: + dependencies: + end-stream: 0.1.0 + optional: true + + level-ws@0.0.0: + dependencies: + readable-stream: 1.0.34 + xtend: 2.1.2 + + level@6.0.1: + dependencies: + level-js: 5.0.2 + level-packager: 5.1.1 + leveldown: 5.6.0 + optional: true + + leveldown@5.6.0: + dependencies: + abstract-leveldown: 6.2.3 + napi-macros: 2.0.0 + node-gyp-build: 4.1.1 + optional: true + + levelup@1.3.9: + dependencies: + deferred-leveldown: 1.2.2 + level-codec: 7.0.1 + level-errors: 1.0.5 + level-iterator-stream: 1.3.1 + prr: 1.0.1 + semver: 5.4.1 + xtend: 4.0.2 + + levelup@4.4.0: + dependencies: + deferred-leveldown: 5.3.0 + level-errors: 2.0.1 + level-iterator-stream: 4.0.2 + level-supports: 1.0.1 + xtend: 4.0.2 + optional: true + + levn@0.3.0: + dependencies: + prelude-ls: 1.1.2 + type-check: 0.3.2 + + load-json-file@1.1.0: + dependencies: + graceful-fs: 4.2.11 + parse-json: 2.2.0 + pify: 2.3.0 + pinkie-promise: 2.0.1 + strip-bom: 2.0.0 + + locate-path@2.0.0: + dependencies: + p-locate: 2.0.0 + path-exists: 3.0.0 + optional: true + + locate-path@3.0.0: + dependencies: + p-locate: 3.0.0 + path-exists: 3.0.0 + optional: true + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash-es@4.17.23: {} + + lodash.assign@4.2.0: {} + + lodash.camelcase@4.3.0: {} + + lodash.clonedeep@4.5.0: {} + + lodash.debounce@4.0.8: {} + + lodash.flatmap@4.5.0: {} + + lodash.isequal@4.5.0: {} + + lodash.sortby@4.7.0: + optional: true + + lodash.truncate@4.4.2: {} + + lodash@4.17.23: {} + + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + + loglevel@1.9.2: + optional: true + + long@4.0.0: + optional: true + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + loupe@2.3.7: + dependencies: + get-func-name: 2.0.2 + + lower-case-first@1.0.2: + dependencies: + lower-case: 1.1.4 + + lower-case@1.1.4: {} + + lowercase-keys@2.0.0: {} + + lowercase-keys@3.0.0: {} + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + lru-cache@6.0.0: + dependencies: + yallist: 4.0.0 + optional: true + + lru-cache@7.13.1: + optional: true + + lru_map@0.3.3: {} + + ltgt@2.2.1: {} + + make-error@1.3.6: {} + + markdown-table@1.1.3: {} + + math-intrinsics@1.1.0: {} + + md5.js@1.3.5: + dependencies: + hash-base: 3.1.2 + inherits: 2.0.4 + safe-buffer: 5.2.1 + + media-typer@0.3.0: {} + + memdown@1.4.1: + dependencies: + abstract-leveldown: 2.7.2 + functional-red-black-tree: 1.0.1 + immediate: 3.3.0 + inherits: 2.0.4 + ltgt: 2.2.1 + safe-buffer: 5.1.2 + + memorystream@0.3.1: {} + + merge-descriptors@1.0.3: {} + + merge2@1.4.1: {} + + merkle-patricia-tree@2.3.2: + dependencies: + async: 1.5.2 + ethereumjs-util: 5.2.1 + level-ws: 0.0.0 + levelup: 1.3.9 + memdown: 1.4.1 + readable-stream: 2.3.8 + rlp: 2.2.7 + semaphore: 1.1.0 + + methods@1.1.2: {} + + micro-eth-signer@0.14.0: + dependencies: + '@noble/curves': 1.8.2 + '@noble/hashes': 1.7.2 + micro-packed: 0.7.3 + + micro-ftch@0.3.1: {} + + micro-packed@0.7.3: + dependencies: + '@scure/base': 1.2.6 + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + mime@1.6.0: {} + + mimic-fn@2.1.0: + optional: true + + mimic-fn@3.1.0: + optional: true + + mimic-response@1.0.1: {} + + mimic-response@3.1.0: {} + + min-document@2.19.2: + dependencies: + dom-walk: 0.1.2 + + minimalistic-assert@1.0.1: {} + + minimalistic-crypto-utils@1.0.1: {} + + minimatch@10.2.4: + dependencies: + brace-expansion: 5.0.3 + + minimatch@3.1.5: + dependencies: + brace-expansion: 1.1.12 + + minimatch@5.0.1: + dependencies: + brace-expansion: 2.0.2 + + minimatch@5.1.9: + dependencies: + brace-expansion: 2.0.2 + + minimatch@9.0.8: + dependencies: + brace-expansion: 5.0.3 + + minimist@1.2.8: {} + + minipass@2.9.0: + dependencies: + safe-buffer: 5.2.1 + yallist: 3.1.1 + + minizlib@1.3.3: + dependencies: + minipass: 2.9.0 + + mkdirp-promise@5.0.1: + dependencies: + mkdirp: 3.0.1 + + mkdirp@0.5.6: + dependencies: + minimist: 1.2.8 + + mkdirp@1.0.4: {} + + mkdirp@3.0.1: {} + + mnemonist@0.38.5: + dependencies: + obliterator: 2.0.5 + + mocha@10.1.0: + dependencies: + ansi-colors: 4.1.1 + browser-stdout: 1.3.1 + chokidar: 3.5.3 + debug: 4.3.4(supports-color@8.1.1) + diff: 5.0.0 + escape-string-regexp: 4.0.0 + find-up: 5.0.0 + glob: 7.2.0 + he: 1.2.0 + js-yaml: 4.1.0 + log-symbols: 4.1.0 + minimatch: 5.0.1 + ms: 2.1.3 + nanoid: 3.3.3 + serialize-javascript: 6.0.0 + strip-json-comments: 3.1.1 + supports-color: 8.1.1 + workerpool: 6.2.1 + yargs: 16.2.0 + yargs-parser: 20.2.4 + yargs-unparser: 2.0.0 + + mocha@10.8.2: + dependencies: + ansi-colors: 4.1.3 + browser-stdout: 1.3.1 + chokidar: 3.6.0 + debug: 4.4.3(supports-color@8.1.1) + diff: 5.2.2 + escape-string-regexp: 4.0.0 + find-up: 5.0.0 + glob: 8.1.0 + he: 1.2.0 + js-yaml: 4.1.1 + log-symbols: 4.1.0 + minimatch: 5.1.9 + ms: 2.1.3 + serialize-javascript: 6.0.2 + strip-json-comments: 3.1.1 + supports-color: 8.1.1 + workerpool: 6.5.1 + yargs: 16.2.0 + yargs-parser: 20.2.9 + yargs-unparser: 2.0.0 + + mock-fs@4.14.0: {} + + module-error@1.0.2: {} + + ms@2.0.0: {} + + ms@2.1.2: {} + + ms@2.1.3: {} + + multibase@0.6.1: + dependencies: + base-x: 3.0.11 + buffer: 5.7.1 + + multibase@0.7.0: + dependencies: + base-x: 3.0.11 + buffer: 5.7.1 + + multicodec@0.5.7: + dependencies: + varint: 5.0.2 + + multicodec@1.0.4: + dependencies: + buffer: 5.7.1 + varint: 5.0.2 + + multihashes@0.4.21: + dependencies: + buffer: 5.7.1 + multibase: 0.7.0 + varint: 5.0.2 + + nano-base32@1.0.1: {} + + nano-json-stream-parser@0.1.2: {} + + nanoid@3.3.3: {} + + napi-macros@2.0.0: + optional: true + + negotiator@0.6.3: {} + + neo-async@2.6.2: {} + + next-tick@1.1.0: {} + + no-case@2.3.2: + dependencies: + lower-case: 1.1.4 + + node-abort-controller@3.1.1: + optional: true + + node-addon-api@2.0.2: {} + + node-addon-api@5.1.0: {} + + node-emoji@1.11.0: + dependencies: + lodash: 4.17.23 + + node-fetch@1.7.3: + dependencies: + encoding: 0.1.13 + is-stream: 1.1.0 + + node-fetch@2.6.7(encoding@0.1.13): + dependencies: + whatwg-url: 5.0.0 + optionalDependencies: + encoding: 0.1.13 + optional: true + + node-fetch@2.7.0(encoding@0.1.13): + dependencies: + whatwg-url: 5.0.0 + optionalDependencies: + encoding: 0.1.13 + + node-gyp-build@4.1.1: + optional: true + + node-gyp-build@4.8.4: {} + + node-interval-tree@1.3.3: + dependencies: + shallowequal: 1.1.0 + + node-releases@2.0.27: {} + + nofilter@1.0.4: {} + + nofilter@3.1.0: {} + + nopt@3.0.6: + dependencies: + abbrev: 1.0.9 + + normalize-package-data@2.5.0: + dependencies: + hosted-git-info: 2.8.9 + resolve: 1.22.11 + semver: 5.7.2 + validate-npm-package-license: 3.0.4 + + normalize-path@3.0.0: {} + + normalize-url@6.1.0: {} + + number-is-nan@1.0.1: {} + + number-to-bn@1.7.0: + dependencies: + bn.js: 4.11.6 + strip-hex-prefix: 1.0.0 + + oauth-sign@0.9.0: {} + + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + object-keys@0.4.0: {} + + object-keys@1.1.1: {} + + obliterator@2.0.5: {} + + oboe@2.1.5: + dependencies: + http-https: 1.0.0 + + on-finished@2.4.1: + dependencies: + ee-first: 1.1.1 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + optional: true + + open@7.4.2: + dependencies: + is-docker: 2.2.1 + is-wsl: 2.2.0 + + optionator@0.8.3: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.3.0 + prelude-ls: 1.1.2 + type-check: 0.3.2 + word-wrap: 1.2.5 + + ordinal@1.0.3: {} + + original-require@1.0.1: {} + + os-locale@1.4.0: + dependencies: + lcid: 1.0.0 + + os-tmpdir@1.0.2: {} + + p-cancelable@2.1.1: {} + + p-cancelable@3.0.0: {} + + p-limit@1.3.0: + dependencies: + p-try: 1.0.0 + optional: true + + p-limit@2.3.0: + dependencies: + p-try: 2.2.0 + optional: true + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@2.0.0: + dependencies: + p-limit: 1.3.0 + optional: true + + p-locate@3.0.0: + dependencies: + p-limit: 2.3.0 + optional: true + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-map@4.0.0: + dependencies: + aggregate-error: 3.1.0 + + p-try@1.0.0: + optional: true + + p-try@2.2.0: + optional: true + + param-case@2.1.1: + dependencies: + no-case: 2.3.2 + + parse-cache-control@1.0.1: {} + + parse-headers@2.0.6: {} + + parse-json@2.2.0: + dependencies: + error-ex: 1.3.4 + + parseurl@1.3.3: {} + + pascal-case@2.0.1: + dependencies: + camel-case: 3.0.0 + upper-case-first: 1.1.2 + + patch-package@8.0.1: + dependencies: + '@yarnpkg/lockfile': 1.1.0 + chalk: 4.1.2 + ci-info: 3.9.0 + cross-spawn: 7.0.6 + find-yarn-workspace-root: 2.0.0 + fs-extra: 10.1.0 + json-stable-stringify: 1.3.0 + klaw-sync: 6.0.0 + minimist: 1.2.8 + open: 7.4.2 + semver: 7.7.4 + slash: 2.0.0 + tmp: 0.2.5 + yaml: 2.8.2 + + path-case@2.1.1: + dependencies: + no-case: 2.3.2 + + path-exists@2.1.0: + dependencies: + pinkie-promise: 2.0.1 + + path-exists@3.0.0: + optional: true + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + path-to-regexp@0.1.12: {} + + path-type@1.1.0: + dependencies: + graceful-fs: 4.2.11 + pify: 2.3.0 + pinkie-promise: 2.0.1 + + path-type@4.0.0: {} + + pathval@1.1.1: {} + + pbkdf2@3.1.5: + dependencies: + create-hash: 1.2.0 + create-hmac: 1.1.7 + ripemd160: 2.0.3 + safe-buffer: 5.2.1 + sha.js: 2.4.12 + to-buffer: 1.2.2 + + performance-now@2.1.0: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + pify@2.3.0: {} + + pify@3.0.0: {} + + pify@4.0.1: {} + + pinkie-promise@2.0.1: + dependencies: + pinkie: 2.0.4 + + pinkie@2.0.4: {} + + pkg-up@3.1.0: + dependencies: + find-up: 3.0.0 + optional: true + + pluralize@8.0.0: + optional: true + + possible-typed-array-names@1.1.0: {} + + pouchdb-abstract-mapreduce@7.3.1(encoding@0.1.13): + dependencies: + pouchdb-binary-utils: 7.3.1 + pouchdb-collate: 7.3.1 + pouchdb-collections: 7.3.1 + pouchdb-errors: 7.3.1 + pouchdb-fetch: 7.3.1(encoding@0.1.13) + pouchdb-mapreduce-utils: 7.3.1 + pouchdb-md5: 7.3.1 + pouchdb-utils: 7.3.1 + transitivePeerDependencies: + - encoding + optional: true + + pouchdb-adapter-leveldb-core@7.3.1: + dependencies: + argsarray: 0.0.1 + buffer-from: 1.1.2 + double-ended-queue: 2.1.0-0 + levelup: 4.4.0 + pouchdb-adapter-utils: 7.3.1 + pouchdb-binary-utils: 7.3.1 + pouchdb-collections: 7.3.1 + pouchdb-errors: 7.3.1 + pouchdb-json: 7.3.1 + pouchdb-md5: 7.3.1 + pouchdb-merge: 7.3.1 + pouchdb-utils: 7.3.1 + sublevel-pouchdb: 7.3.1 + through2: 3.0.2 + optional: true + + pouchdb-adapter-memory@7.3.1: + dependencies: + memdown: 1.4.1 + pouchdb-adapter-leveldb-core: 7.3.1 + pouchdb-utils: 7.3.1 + optional: true + + pouchdb-adapter-utils@7.3.1: + dependencies: + pouchdb-binary-utils: 7.3.1 + pouchdb-collections: 7.3.1 + pouchdb-errors: 7.3.1 + pouchdb-md5: 7.3.1 + pouchdb-merge: 7.3.1 + pouchdb-utils: 7.3.1 + optional: true + + pouchdb-binary-utils@7.3.1: + dependencies: + buffer-from: 1.1.2 + optional: true + + pouchdb-collate@7.3.1: + optional: true + + pouchdb-collections@7.3.1: + optional: true + + pouchdb-debug@7.2.1: + dependencies: + debug: 3.1.0 + transitivePeerDependencies: + - supports-color + optional: true + + pouchdb-errors@7.3.1: + dependencies: + inherits: 2.0.4 + optional: true + + pouchdb-fetch@7.3.1(encoding@0.1.13): + dependencies: + abort-controller: 3.0.0 + fetch-cookie: 0.11.0 + node-fetch: 2.6.7(encoding@0.1.13) + transitivePeerDependencies: + - encoding + optional: true + + pouchdb-find@7.3.1(encoding@0.1.13): + dependencies: + pouchdb-abstract-mapreduce: 7.3.1(encoding@0.1.13) + pouchdb-collate: 7.3.1 + pouchdb-errors: 7.3.1 + pouchdb-fetch: 7.3.1(encoding@0.1.13) + pouchdb-md5: 7.3.1 + pouchdb-selector-core: 7.3.1 + pouchdb-utils: 7.3.1 + transitivePeerDependencies: + - encoding + optional: true + + pouchdb-json@7.3.1: + dependencies: + vuvuzela: 1.0.3 + optional: true + + pouchdb-mapreduce-utils@7.3.1: + dependencies: + argsarray: 0.0.1 + inherits: 2.0.4 + pouchdb-collections: 7.3.1 + pouchdb-utils: 7.3.1 + optional: true + + pouchdb-md5@7.3.1: + dependencies: + pouchdb-binary-utils: 7.3.1 + spark-md5: 3.0.2 + optional: true + + pouchdb-merge@7.3.1: + optional: true + + pouchdb-selector-core@7.3.1: + dependencies: + pouchdb-collate: 7.3.1 + pouchdb-utils: 7.3.1 + optional: true + + pouchdb-utils@7.3.1: + dependencies: + argsarray: 0.0.1 + clone-buffer: 1.0.0 + immediate: 3.3.0 + inherits: 2.0.4 + pouchdb-collections: 7.3.1 + pouchdb-errors: 7.3.1 + pouchdb-md5: 7.3.1 + uuid: 8.3.2 + optional: true + + pouchdb@7.3.0(encoding@0.1.13): + dependencies: + abort-controller: 3.0.0 + argsarray: 0.0.1 + buffer-from: 1.1.2 + clone-buffer: 1.0.0 + double-ended-queue: 2.1.0-0 + fetch-cookie: 0.11.0 + immediate: 3.3.0 + inherits: 2.0.4 + level: 6.0.1 + level-codec: 9.0.2 + level-write-stream: 1.0.0 + leveldown: 5.6.0 + levelup: 4.4.0 + ltgt: 2.2.1 + node-fetch: 2.6.7(encoding@0.1.13) + readable-stream: 1.1.14 + spark-md5: 3.0.2 + through2: 3.0.2 + uuid: 8.3.2 + vuvuzela: 1.0.3 + transitivePeerDependencies: + - encoding + optional: true + + precond@0.2.3: {} + + prelude-ls@1.1.2: {} + + prettier@2.8.8: {} + + process-nextick-args@2.0.1: {} + + process@0.11.10: {} + + promise-to-callback@1.0.0: + dependencies: + is-fn: 1.0.0 + set-immediate-shim: 1.0.1 + + promise@8.3.0: + dependencies: + asap: 2.0.6 + + proper-lockfile@4.1.2: + dependencies: + graceful-fs: 4.2.11 + retry: 0.12.0 + signal-exit: 3.0.7 + + proxy-addr@2.0.7: + dependencies: + forwarded: 0.2.0 + ipaddr.js: 1.9.1 + + proxy-from-env@1.1.0: {} + + prr@1.0.1: {} + + psl@1.15.0: + dependencies: + punycode: 2.3.1 + + pump@3.0.3: + dependencies: + end-of-stream: 1.4.5 + once: 1.4.0 + + punycode@2.1.0: {} + + punycode@2.3.1: {} + + pure-rand@5.0.5: {} + + qs@6.14.2: + dependencies: + side-channel: 1.1.0 + + qs@6.15.0: + dependencies: + side-channel: 1.1.0 + + qs@6.5.5: {} + + query-string@5.1.1: + dependencies: + decode-uri-component: 0.2.2 + object-assign: 4.1.1 + strict-uri-encode: 1.1.0 + + querystringify@2.2.0: + optional: true + + queue-microtask@1.2.3: {} + + quick-lru@5.1.1: {} + + randombytes@2.1.0: + dependencies: + safe-buffer: 5.2.1 + + range-parser@1.2.1: {} + + raw-body@2.5.3: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.1 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + + read-pkg-up@1.0.1: + dependencies: + find-up: 1.1.2 + read-pkg: 1.1.0 + + read-pkg@1.1.0: + dependencies: + load-json-file: 1.1.0 + normalize-package-data: 2.5.0 + path-type: 1.1.0 + + readable-stream@0.0.4: + optional: true + + readable-stream@1.0.34: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 0.0.1 + string_decoder: 0.10.31 + + readable-stream@1.1.14: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 0.0.1 + string_decoder: 0.10.31 + + readable-stream@2.3.8: + dependencies: + core-util-is: 1.0.3 + inherits: 2.0.4 + isarray: 1.0.0 + process-nextick-args: 2.0.1 + safe-buffer: 5.1.2 + string_decoder: 1.1.1 + util-deprecate: 1.0.2 + + readable-stream@3.6.2: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + readdirp@4.1.2: {} + + rechoir@0.6.2: + dependencies: + resolve: 1.22.11 + + recursive-readdir@2.2.3: + dependencies: + minimatch: 3.1.5 + + reduce-flatten@2.0.0: {} + + redux-saga@1.0.0: + dependencies: + '@redux-saga/core': 1.4.2 + + redux@3.7.2: + dependencies: + lodash: 4.17.23 + lodash-es: 4.17.23 + loose-envify: 1.4.0 + symbol-observable: 1.2.0 + + req-cwd@2.0.0: + dependencies: + req-from: 2.0.0 + + req-from@2.0.0: + dependencies: + resolve-from: 3.0.0 + + request@2.88.2: + dependencies: + aws-sign2: 0.7.0 + aws4: 1.13.2 + caseless: 0.12.0 + combined-stream: 1.0.8 + extend: 3.0.2 + forever-agent: 0.6.1 + form-data: 2.3.3 + har-validator: 5.1.5 + http-signature: 1.2.0 + is-typedarray: 1.0.0 + isstream: 0.1.2 + json-stringify-safe: 5.0.1 + mime-types: 2.1.35 + oauth-sign: 0.9.0 + performance-now: 2.1.0 + qs: 6.5.5 + safe-buffer: 5.2.1 + tough-cookie: 2.5.0 + tunnel-agent: 0.6.0 + uuid: 3.4.0 + + require-directory@2.1.1: {} + + require-from-string@1.2.1: {} + + require-from-string@2.0.2: {} + + require-main-filename@1.0.1: {} + + requires-port@1.0.0: + optional: true + + reselect-tree@1.3.7: + dependencies: + debug: 3.2.7 + json-pointer: 0.6.2 + reselect: 4.1.8 + transitivePeerDependencies: + - supports-color + + reselect@4.1.8: {} + + resolve-alpn@1.2.1: {} + + resolve-from@3.0.0: {} + + resolve@1.1.7: {} + + resolve@1.17.0: + dependencies: + path-parse: 1.0.7 + + resolve@1.22.11: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + responselike@2.0.1: + dependencies: + lowercase-keys: 2.0.0 + + restore-cursor@3.1.0: + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + optional: true + + retry@0.12.0: {} + + retry@0.13.1: {} + + reusify@1.1.0: {} + + rimraf@2.7.1: + dependencies: + glob: 7.2.3 + + ripemd160-min@0.0.6: {} + + ripemd160@2.0.3: + dependencies: + hash-base: 3.1.2 + inherits: 2.0.4 + + rlp@2.2.7: + dependencies: + bn.js: 5.2.3 + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + rustbn.js@0.2.0: {} + + safe-buffer@5.1.2: {} + + safe-buffer@5.2.1: {} + + safe-event-emitter@1.0.1: + dependencies: + events: 3.3.0 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + + safer-buffer@2.1.2: {} + + sc-istanbul@0.4.6: + dependencies: + abbrev: 1.0.9 + async: 1.5.2 + escodegen: 1.8.1 + esprima: 2.7.3 + glob: 5.0.15 + handlebars: 4.7.8 + js-yaml: 3.14.2 + mkdirp: 0.5.6 + nopt: 3.0.6 + once: 1.4.0 + resolve: 1.1.7 + supports-color: 3.2.3 + which: 1.3.1 + wordwrap: 1.0.0 + + scrypt-js@2.0.4: + optional: true + + scrypt-js@3.0.1: {} + + secp256k1@4.0.4: + dependencies: + elliptic: 6.6.1 + node-addon-api: 5.1.0 + node-gyp-build: 4.8.4 + + semaphore@1.1.0: {} + + semver@5.4.1: {} + + semver@5.7.2: {} + + semver@6.3.1: {} + + semver@7.7.4: {} + + send@0.19.2: + dependencies: + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 0.5.2 + http-errors: 2.0.1 + mime: 1.6.0 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.2 + transitivePeerDependencies: + - supports-color + + sentence-case@2.1.1: + dependencies: + no-case: 2.3.2 + upper-case-first: 1.1.2 + + serialize-javascript@6.0.0: + dependencies: + randombytes: 2.1.0 + + serialize-javascript@6.0.2: + dependencies: + randombytes: 2.1.0 + + serve-static@1.16.3: + dependencies: + encodeurl: 2.0.0 + escape-html: 1.0.3 + parseurl: 1.3.3 + send: 0.19.2 + transitivePeerDependencies: + - supports-color + + servify@0.1.12: + dependencies: + body-parser: 1.20.4 + cors: 2.8.6 + express: 4.22.1 + request: 2.88.2 + xhr: 2.6.0 + transitivePeerDependencies: + - supports-color + + set-blocking@2.0.0: {} + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-immediate-shim@1.0.1: {} + + setimmediate@1.0.4: + optional: true + + setimmediate@1.0.5: {} + + setprototypeof@1.2.0: {} + + sha.js@2.4.12: + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + to-buffer: 1.2.2 + + sha1@1.1.1: + dependencies: + charenc: 0.0.2 + crypt: 0.0.2 + + sha3@2.1.4: + dependencies: + buffer: 6.0.3 + + shallowequal@1.1.0: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + shelljs@0.8.5: + dependencies: + glob: 7.2.3 + interpret: 1.4.0 + rechoir: 0.6.2 + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + signal-exit@3.0.7: {} + + simple-concat@1.0.1: {} + + simple-get@2.8.2: + dependencies: + decompress-response: 3.3.0 + once: 1.4.0 + simple-concat: 1.0.1 + + slash@2.0.0: {} + + slash@3.0.0: {} + + slice-ansi@4.0.0: + dependencies: + ansi-styles: 4.3.0 + astral-regex: 2.0.0 + is-fullwidth-code-point: 3.0.0 + + snake-case@2.1.0: + dependencies: + no-case: 2.3.2 + + solc@0.4.26: + dependencies: + fs-extra: 0.30.0 + memorystream: 0.3.1 + require-from-string: 1.2.1 + semver: 5.7.2 + yargs: 4.8.1 + + solc@0.8.26(debug@4.4.3): + dependencies: + command-exists: 1.2.9 + commander: 8.3.0 + follow-redirects: 1.15.11(debug@4.4.3) + js-sha3: 0.8.0 + memorystream: 0.3.1 + semver: 5.7.2 + tmp: 0.0.33 + transitivePeerDependencies: + - debug + + solidity-ast@0.4.61: {} + + solidity-coverage@0.8.17(hardhat@2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10)): + dependencies: + '@ethersproject/abi': 5.8.0 + '@solidity-parser/parser': 0.20.2 + chalk: 2.4.2 + death: 1.1.0 + difflib: 0.2.4 + fs-extra: 8.1.0 + ghost-testrpc: 0.0.2 + global-modules: 2.0.0 + globby: 10.0.2 + hardhat: 2.28.6(bufferutil@4.1.0)(ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3))(typescript@5.9.3)(utf-8-validate@5.0.10) + jsonschema: 1.5.0 + lodash: 4.17.23 + mocha: 10.8.2 + node-emoji: 1.11.0 + pify: 4.0.1 + recursive-readdir: 2.2.3 + sc-istanbul: 0.4.6 + semver: 7.7.4 + shelljs: 0.8.5 + web3-utils: 1.10.4 + + source-map-support@0.5.21: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + + source-map@0.2.0: + dependencies: + amdefine: 1.0.1 + optional: true + + source-map@0.6.1: {} + + spark-md5@3.0.2: + optional: true + + spdx-correct@3.2.0: + dependencies: + spdx-expression-parse: 3.0.1 + spdx-license-ids: 3.0.23 + + spdx-exceptions@2.5.0: {} + + spdx-expression-parse@3.0.1: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.23 + + spdx-license-ids@3.0.23: {} + + sprintf-js@1.0.3: {} + + sshpk@1.18.0: + dependencies: + asn1: 0.2.6 + assert-plus: 1.0.0 + bcrypt-pbkdf: 1.0.2 + dashdash: 1.14.1 + ecc-jsbn: 0.1.2 + getpass: 0.1.7 + jsbn: 0.1.1 + safer-buffer: 2.1.2 + tweetnacl: 0.14.5 + + stacktrace-parser@0.1.11: + dependencies: + type-fest: 0.7.1 + + statuses@2.0.2: {} + + strict-uri-encode@1.1.0: {} + + string-format@2.0.0: {} + + string-width@1.0.2: + dependencies: + code-point-at: 1.1.0 + is-fullwidth-code-point: 1.0.0 + strip-ansi: 3.0.1 + + string-width@2.1.1: + dependencies: + is-fullwidth-code-point: 2.0.0 + strip-ansi: 4.0.0 + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@7.2.0: + dependencies: + emoji-regex: 10.6.0 + get-east-asian-width: 1.5.0 + strip-ansi: 7.1.2 + + string_decoder@0.10.31: {} + + string_decoder@1.1.1: + dependencies: + safe-buffer: 5.1.2 + + string_decoder@1.3.0: + dependencies: + safe-buffer: 5.2.1 + + strip-ansi@3.0.1: + dependencies: + ansi-regex: 2.1.1 + + strip-ansi@4.0.0: + dependencies: + ansi-regex: 3.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.2: + dependencies: + ansi-regex: 6.2.2 + + strip-bom@2.0.0: + dependencies: + is-utf8: 0.2.1 + + strip-hex-prefix@1.0.0: + dependencies: + is-hex-prefixed: 1.0.0 + + strip-json-comments@3.1.1: {} + + sublevel-pouchdb@7.3.1: + dependencies: + inherits: 2.0.4 + level-codec: 9.0.2 + ltgt: 2.2.1 + readable-stream: 1.1.14 + optional: true + + supports-color@3.2.3: + dependencies: + has-flag: 1.0.0 + + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-color@8.1.1: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + swap-case@1.1.2: + dependencies: + lower-case: 1.1.4 + upper-case: 1.1.3 + + swarm-js@0.1.42(bufferutil@4.0.7)(utf-8-validate@6.0.3): + dependencies: + bluebird: 3.7.2 + buffer: 5.7.1 + eth-lib: 0.1.29(bufferutil@4.0.7)(utf-8-validate@6.0.3) + fs-extra: 4.0.3 + got: 11.8.6 + mime-types: 2.1.35 + mkdirp-promise: 5.0.1 + mock-fs: 4.14.0 + setimmediate: 1.0.5 + tar: 4.4.19 + xhr-request: 1.1.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + swarm-js@0.1.42(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + bluebird: 3.7.2 + buffer: 5.7.1 + eth-lib: 0.1.29(bufferutil@4.1.0)(utf-8-validate@5.0.10) + fs-extra: 4.0.3 + got: 11.8.6 + mime-types: 2.1.35 + mkdirp-promise: 5.0.1 + mock-fs: 4.14.0 + setimmediate: 1.0.5 + tar: 4.4.19 + xhr-request: 1.1.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + symbol-observable@1.2.0: {} + + sync-request@6.1.0: + dependencies: + http-response-object: 3.0.2 + sync-rpc: 1.3.6 + then-request: 6.0.2 + + sync-rpc@1.3.6: + dependencies: + get-port: 3.2.0 + + table-layout@1.0.2: + dependencies: + array-back: 4.0.2 + deep-extend: 0.6.0 + typical: 5.2.0 + wordwrapjs: 4.0.1 + + table@6.9.0: + dependencies: + ajv: 8.18.0 + lodash.truncate: 4.4.2 + slice-ansi: 4.0.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + tar@4.4.19: + dependencies: + chownr: 1.1.4 + fs-minipass: 1.2.7 + minipass: 2.9.0 + minizlib: 1.3.3 + mkdirp: 0.5.6 + safe-buffer: 5.2.1 + yallist: 3.1.1 + + testrpc@0.0.1: {} + + then-request@6.0.2: + dependencies: + '@types/concat-stream': 1.6.1 + '@types/form-data': 0.0.33 + '@types/node': 8.10.66 + '@types/qs': 6.14.0 + caseless: 0.12.0 + concat-stream: 1.6.2 + form-data: 2.5.5 + http-basic: 8.1.3 + http-response-object: 3.0.2 + promise: 8.3.0 + qs: 6.15.0 + + through2@3.0.2: + dependencies: + inherits: 2.0.4 + readable-stream: 3.6.2 + optional: true + + timed-out@4.0.1: {} + + tiny-typed-emitter@2.1.0: + optional: true + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + title-case@2.1.1: + dependencies: + no-case: 2.3.2 + upper-case: 1.1.3 + + tmp@0.0.33: + dependencies: + os-tmpdir: 1.0.2 + + tmp@0.2.5: {} + + to-buffer@1.2.2: + dependencies: + isarray: 2.0.5 + safe-buffer: 5.2.1 + typed-array-buffer: 1.0.3 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + toidentifier@1.0.1: {} + + tough-cookie@2.5.0: + dependencies: + psl: 1.15.0 + punycode: 2.3.1 + + tough-cookie@4.1.4: + dependencies: + psl: 1.15.0 + punycode: 2.3.1 + universalify: 0.2.0 + url-parse: 1.5.10 + optional: true + + tr46@0.0.3: {} + + truffle-assertions@0.9.2: + dependencies: + assertion-error: 1.1.0 + lodash.isequal: 4.5.0 + + truffle@5.11.5(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3): + dependencies: + '@truffle/db-loader': 0.2.36(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + '@truffle/debugger': 12.1.5(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + app-module-path: 2.2.0 + ganache: 7.9.1 + mocha: 10.1.0 + original-require: 1.0.1 + optionalDependencies: + '@truffle/db': 2.0.36(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + truffle@5.11.5(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10): + dependencies: + '@truffle/db-loader': 0.2.36(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@truffle/debugger': 12.1.5(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + app-module-path: 2.2.0 + ganache: 7.9.1 + mocha: 10.1.0 + original-require: 1.0.1 + optionalDependencies: + '@truffle/db': 2.0.36(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + ts-command-line-args@2.5.1: + dependencies: + chalk: 4.1.2 + command-line-args: 5.2.1 + command-line-usage: 6.1.3 + string-format: 2.0.0 + + ts-essentials@7.0.3(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + ts-node@10.9.2(@types/node@25.3.1)(typescript@5.9.3): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.12 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 25.3.1 + acorn: 8.16.0 + acorn-walk: 8.3.5 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.4 + make-error: 1.3.6 + typescript: 5.9.3 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + + tslib@1.14.1: {} + + tslib@2.4.1: + optional: true + + tslib@2.7.0: {} + + tslib@2.8.1: {} + + tsort@0.0.1: {} + + tunnel-agent@0.6.0: + dependencies: + safe-buffer: 5.2.1 + + tweetnacl-util@0.15.1: {} + + tweetnacl@0.14.5: {} + + tweetnacl@1.0.3: {} + + type-check@0.3.2: + dependencies: + prelude-ls: 1.1.2 + + type-detect@4.1.0: {} + + type-fest@0.20.2: {} + + type-fest@0.21.3: {} + + type-fest@0.7.1: {} + + type-is@1.6.18: + dependencies: + media-typer: 0.3.0 + mime-types: 2.1.35 + + type@2.7.3: {} + + typechain@8.3.2(typescript@5.9.3): + dependencies: + '@types/prettier': 2.7.3 + debug: 4.4.3(supports-color@8.1.1) + fs-extra: 7.0.1 + glob: 7.1.7 + js-sha3: 0.8.0 + lodash: 4.17.23 + mkdirp: 1.0.4 + prettier: 2.8.8 + ts-command-line-args: 2.5.1 + ts-essentials: 7.0.3(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typedarray-to-buffer@3.1.5: + dependencies: + is-typedarray: 1.0.0 + + typedarray@0.0.6: {} + + typescript-compare@0.0.2: + dependencies: + typescript-logic: 0.0.0 + + typescript-logic@0.0.0: {} + + typescript-tuple@2.2.1: + dependencies: + typescript-compare: 0.0.2 + + typescript@5.9.3: {} + + typical@4.0.0: {} + + typical@5.2.0: {} + + uglify-js@3.19.3: + optional: true + + ultron@1.1.1: {} + + undici-types@6.19.8: {} + + undici-types@7.18.2: {} + + undici@5.29.0: + dependencies: + '@fastify/busboy': 2.1.1 + + unfetch@4.2.0: {} + + universalify@0.1.2: {} + + universalify@0.2.0: + optional: true + + universalify@2.0.1: {} + + unpipe@1.0.0: {} + + update-browserslist-db@1.2.3(browserslist@4.28.1): + dependencies: + browserslist: 4.28.1 + escalade: 3.2.0 + picocolors: 1.1.1 + + upper-case-first@1.1.2: + dependencies: + upper-case: 1.1.3 + + upper-case@1.1.3: {} + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + url-parse@1.5.10: + dependencies: + querystringify: 2.2.0 + requires-port: 1.0.0 + optional: true + + url-set-query@1.0.0: {} + + utf-8-validate@5.0.10: + dependencies: + node-gyp-build: 4.8.4 + + utf-8-validate@5.0.7: + dependencies: + node-gyp-build: 4.8.4 + optional: true + + utf-8-validate@6.0.3: + dependencies: + node-gyp-build: 4.8.4 + optional: true + + utf8@3.0.0: {} + + util-deprecate@1.0.2: {} + + util@0.12.5: + dependencies: + inherits: 2.0.4 + is-arguments: 1.2.0 + is-generator-function: 1.1.2 + is-typed-array: 1.1.15 + which-typed-array: 1.1.20 + + utils-merge@1.0.1: {} + + uuid@2.0.1: + optional: true + + uuid@3.4.0: {} + + uuid@8.3.2: {} + + uuid@9.0.1: {} + + v8-compile-cache-lib@3.0.1: {} + + validate-npm-package-license@3.0.4: + dependencies: + spdx-correct: 3.2.0 + spdx-expression-parse: 3.0.1 + + value-or-promise@1.0.11: + optional: true + + value-or-promise@1.0.12: + optional: true + + varint@5.0.2: {} + + vary@1.1.2: {} + + verror@1.10.0: + dependencies: + assert-plus: 1.0.0 + core-util-is: 1.0.2 + extsprintf: 1.3.0 + + vuvuzela@1.0.3: + optional: true + + web3-bzz@1.10.0(bufferutil@4.0.7)(utf-8-validate@6.0.3): + dependencies: + '@types/node': 12.20.55 + got: 12.1.0 + swarm-js: 0.1.42(bufferutil@4.0.7)(utf-8-validate@6.0.3) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + web3-bzz@1.10.0(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + '@types/node': 12.20.55 + got: 12.1.0 + swarm-js: 0.1.42(bufferutil@4.1.0)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + web3-core-helpers@1.10.0: + dependencies: + web3-eth-iban: 1.10.0 + web3-utils: 1.10.0 + + web3-core-method@1.10.0: + dependencies: + '@ethersproject/transactions': 5.8.0 + web3-core-helpers: 1.10.0 + web3-core-promievent: 1.10.0 + web3-core-subscriptions: 1.10.0 + web3-utils: 1.10.0 + + web3-core-promievent@1.10.0: + dependencies: + eventemitter3: 4.0.4 + + web3-core-requestmanager@1.10.0(encoding@0.1.13): + dependencies: + util: 0.12.5 + web3-core-helpers: 1.10.0 + web3-providers-http: 1.10.0(encoding@0.1.13) + web3-providers-ipc: 1.10.0 + web3-providers-ws: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-core-subscriptions@1.10.0: + dependencies: + eventemitter3: 4.0.4 + web3-core-helpers: 1.10.0 + + web3-core@1.10.0(encoding@0.1.13): + dependencies: + '@types/bn.js': 5.2.0 + '@types/node': 12.20.55 + bignumber.js: 9.3.1 + web3-core-helpers: 1.10.0 + web3-core-method: 1.10.0 + web3-core-requestmanager: 1.10.0(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-abi@1.10.0: + dependencies: + '@ethersproject/abi': 5.8.0 + web3-utils: 1.10.0 + + web3-eth-accounts@1.10.0(encoding@0.1.13): + dependencies: + '@ethereumjs/common': 2.5.0 + '@ethereumjs/tx': 3.3.2 + eth-lib: 0.2.8 + ethereumjs-util: 7.1.5 + scrypt-js: 3.0.1 + uuid: 9.0.1 + web3-core: 1.10.0(encoding@0.1.13) + web3-core-helpers: 1.10.0 + web3-core-method: 1.10.0 + web3-utils: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-contract@1.10.0(encoding@0.1.13): + dependencies: + '@types/bn.js': 5.2.0 + web3-core: 1.10.0(encoding@0.1.13) + web3-core-helpers: 1.10.0 + web3-core-method: 1.10.0 + web3-core-promievent: 1.10.0 + web3-core-subscriptions: 1.10.0 + web3-eth-abi: 1.10.0 + web3-utils: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-ens@1.10.0(encoding@0.1.13): + dependencies: + content-hash: 2.5.2 + eth-ens-namehash: 2.0.8 + web3-core: 1.10.0(encoding@0.1.13) + web3-core-helpers: 1.10.0 + web3-core-promievent: 1.10.0 + web3-eth-abi: 1.10.0 + web3-eth-contract: 1.10.0(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth-iban@1.10.0: + dependencies: + bn.js: 5.2.3 + web3-utils: 1.10.0 + + web3-eth-personal@1.10.0(encoding@0.1.13): + dependencies: + '@types/node': 12.20.55 + web3-core: 1.10.0(encoding@0.1.13) + web3-core-helpers: 1.10.0 + web3-core-method: 1.10.0 + web3-net: 1.10.0(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-eth@1.10.0(encoding@0.1.13): + dependencies: + web3-core: 1.10.0(encoding@0.1.13) + web3-core-helpers: 1.10.0 + web3-core-method: 1.10.0 + web3-core-subscriptions: 1.10.0 + web3-eth-abi: 1.10.0 + web3-eth-accounts: 1.10.0(encoding@0.1.13) + web3-eth-contract: 1.10.0(encoding@0.1.13) + web3-eth-ens: 1.10.0(encoding@0.1.13) + web3-eth-iban: 1.10.0 + web3-eth-personal: 1.10.0(encoding@0.1.13) + web3-net: 1.10.0(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-net@1.10.0(encoding@0.1.13): + dependencies: + web3-core: 1.10.0(encoding@0.1.13) + web3-core-method: 1.10.0 + web3-utils: 1.10.0 + transitivePeerDependencies: + - encoding + - supports-color + + web3-providers-http@1.10.0(encoding@0.1.13): + dependencies: + abortcontroller-polyfill: 1.7.8 + cross-fetch: 3.2.0(encoding@0.1.13) + es6-promise: 4.2.8 + web3-core-helpers: 1.10.0 + transitivePeerDependencies: + - encoding + + web3-providers-ipc@1.10.0: + dependencies: + oboe: 2.1.5 + web3-core-helpers: 1.10.0 + + web3-providers-ws@1.10.0: + dependencies: + eventemitter3: 4.0.4 + web3-core-helpers: 1.10.0 + websocket: 1.0.35 + transitivePeerDependencies: + - supports-color + + web3-shh@1.10.0(encoding@0.1.13): + dependencies: + web3-core: 1.10.0(encoding@0.1.13) + web3-core-method: 1.10.0 + web3-core-subscriptions: 1.10.0 + web3-net: 1.10.0(encoding@0.1.13) + transitivePeerDependencies: + - encoding + - supports-color + + web3-utils@1.10.0: + dependencies: + bn.js: 5.2.3 + ethereum-bloom-filters: 1.2.0 + ethereumjs-util: 7.1.5 + ethjs-unit: 0.1.6 + number-to-bn: 1.7.0 + randombytes: 2.1.0 + utf8: 3.0.0 + + web3-utils@1.10.4: + dependencies: + '@ethereumjs/util': 8.1.0 + bn.js: 5.2.3 + ethereum-bloom-filters: 1.2.0 + ethereum-cryptography: 2.2.1 + ethjs-unit: 0.1.6 + number-to-bn: 1.7.0 + randombytes: 2.1.0 + utf8: 3.0.0 + + web3@1.10.0(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3): + dependencies: + web3-bzz: 1.10.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) + web3-core: 1.10.0(encoding@0.1.13) + web3-eth: 1.10.0(encoding@0.1.13) + web3-eth-personal: 1.10.0(encoding@0.1.13) + web3-net: 1.10.0(encoding@0.1.13) + web3-shh: 1.10.0(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + web3@1.10.0(bufferutil@4.1.0)(encoding@0.1.13)(utf-8-validate@5.0.10): + dependencies: + web3-bzz: 1.10.0(bufferutil@4.1.0)(utf-8-validate@5.0.10) + web3-core: 1.10.0(encoding@0.1.13) + web3-eth: 1.10.0(encoding@0.1.13) + web3-eth-personal: 1.10.0(encoding@0.1.13) + web3-net: 1.10.0(encoding@0.1.13) + web3-shh: 1.10.0(encoding@0.1.13) + web3-utils: 1.10.0 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + webidl-conversions@3.0.1: {} + + websocket@1.0.35: + dependencies: + bufferutil: 4.1.0 + debug: 2.6.9 + es5-ext: 0.10.64 + typedarray-to-buffer: 3.1.5 + utf-8-validate: 5.0.10 + yaeti: 0.0.6 + transitivePeerDependencies: + - supports-color + + whatwg-fetch@2.0.4: {} + + whatwg-mimetype@3.0.0: + optional: true + + whatwg-url@5.0.0: + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + + which-module@1.0.0: {} + + which-typed-array@1.1.20: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + which@1.3.1: + dependencies: + isexe: 2.0.0 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + widest-line@3.1.0: + dependencies: + string-width: 4.2.3 + + window-size@0.2.0: {} + + word-wrap@1.2.5: {} + + wordwrap@1.0.0: {} + + wordwrapjs@4.0.1: + dependencies: + reduce-flatten: 2.0.0 + typical: 5.2.0 + + workerpool@6.2.1: {} + + workerpool@6.5.1: {} + + wrap-ansi@2.1.0: + dependencies: + string-width: 1.0.2 + strip-ansi: 3.0.1 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@9.0.2: + dependencies: + ansi-styles: 6.2.3 + string-width: 7.2.0 + strip-ansi: 7.1.2 + + wrappy@1.0.2: {} + + write-stream@0.4.3: + dependencies: + readable-stream: 0.0.4 + optional: true + + ws@3.3.3(bufferutil@4.0.7)(utf-8-validate@6.0.3): + dependencies: + async-limiter: 1.0.1 + safe-buffer: 5.1.2 + ultron: 1.1.1 + optionalDependencies: + bufferutil: 4.0.7 + utf-8-validate: 6.0.3 + + ws@3.3.3(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + async-limiter: 1.0.1 + safe-buffer: 5.1.2 + ultron: 1.1.1 + optionalDependencies: + bufferutil: 4.1.0 + utf-8-validate: 5.0.10 + + ws@5.2.4(bufferutil@4.1.0)(utf-8-validate@5.0.10): + dependencies: + async-limiter: 1.0.1 + optionalDependencies: + bufferutil: 4.1.0 + utf-8-validate: 5.0.10 + + ws@7.5.10(bufferutil@4.0.7)(utf-8-validate@6.0.3): + optionalDependencies: + bufferutil: 4.0.7 + utf-8-validate: 6.0.3 + optional: true + + ws@7.5.10(bufferutil@4.1.0)(utf-8-validate@5.0.10): + optionalDependencies: + bufferutil: 4.1.0 + utf-8-validate: 5.0.10 + + ws@8.13.0(bufferutil@4.0.7)(utf-8-validate@6.0.3): + optionalDependencies: + bufferutil: 4.0.7 + utf-8-validate: 6.0.3 + + ws@8.17.1(bufferutil@4.1.0)(utf-8-validate@5.0.10): + optionalDependencies: + bufferutil: 4.1.0 + utf-8-validate: 5.0.10 + + ws@8.18.0(bufferutil@4.0.7)(utf-8-validate@6.0.3): + optionalDependencies: + bufferutil: 4.0.7 + utf-8-validate: 6.0.3 + + ws@8.18.0(bufferutil@4.1.0)(utf-8-validate@5.0.10): + optionalDependencies: + bufferutil: 4.1.0 + utf-8-validate: 5.0.10 + + xhr-request-promise@0.1.3: + dependencies: + xhr-request: 1.1.0 + + xhr-request@1.1.0: + dependencies: + buffer-to-arraybuffer: 0.0.5 + object-assign: 4.1.1 + query-string: 5.1.1 + simple-get: 2.8.2 + timed-out: 4.0.1 + url-set-query: 1.0.0 + xhr: 2.6.0 + + xhr@2.6.0: + dependencies: + global: 4.4.0 + is-function: 1.0.2 + parse-headers: 2.0.6 + xtend: 4.0.2 + + xmlhttprequest@1.8.0: + optional: true + + xss@1.0.15: + dependencies: + commander: 2.20.3 + cssfilter: 0.0.10 + optional: true + + xtend@2.1.2: + dependencies: + object-keys: 0.4.0 + + xtend@4.0.2: {} + + y18n@3.2.2: {} + + y18n@5.0.8: {} + + yaeti@0.0.6: {} + + yallist@3.1.1: {} + + yallist@4.0.0: + optional: true + + yaml@2.8.2: {} + + yargs-parser@2.4.1: + dependencies: + camelcase: 3.0.0 + lodash.assign: 4.2.0 + + yargs-parser@20.2.4: {} + + yargs-parser@20.2.9: {} + + yargs-parser@22.0.0: {} + + yargs-unparser@2.0.0: + dependencies: + camelcase: 6.3.0 + decamelize: 4.0.0 + flat: 5.0.2 + is-plain-obj: 2.1.0 + + yargs@16.2.0: + dependencies: + cliui: 7.0.4 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 20.2.4 + + yargs@18.0.0: + dependencies: + cliui: 9.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + string-width: 7.2.0 + y18n: 5.0.8 + yargs-parser: 22.0.0 + + yargs@4.8.1: + dependencies: + cliui: 3.2.0 + decamelize: 1.2.0 + get-caller-file: 1.0.3 + lodash.assign: 4.2.0 + os-locale: 1.4.0 + read-pkg-up: 1.0.1 + require-directory: 2.1.1 + require-main-filename: 1.0.1 + set-blocking: 2.0.0 + string-width: 1.0.2 + which-module: 1.0.0 + window-size: 0.2.0 + y18n: 3.2.2 + yargs-parser: 2.4.1 + + yn@3.1.1: {} + + yocto-queue@0.1.0: {} diff --git a/tests/solidity/pnpm-workspace.yaml b/tests/solidity/pnpm-workspace.yaml new file mode 100644 index 000000000..18b7317a3 --- /dev/null +++ b/tests/solidity/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +packages: + - 'suites/*' diff --git a/tests/solidity/suites/basic/package.json b/tests/solidity/suites/basic/package.json index 01341241c..3ea70f7b0 100644 --- a/tests/solidity/suites/basic/package.json +++ b/tests/solidity/suites/basic/package.json @@ -4,8 +4,8 @@ "author": "Aragon Association ", "license": "GPL-3.0-or-later", "scripts": { - "test-ganache": "yarn truffle test", - "test-cosmos": "yarn truffle test --network cosmos" + "test-ganache": "pnpm exec truffle test", + "test-cosmos": "pnpm exec truffle test --network cosmos" }, "devDependencies": { "truffle-assertions": "^0.9.2" diff --git a/tests/solidity/suites/eip1559/package.json b/tests/solidity/suites/eip1559/package.json index 1da5bc1a5..981d07be5 100644 --- a/tests/solidity/suites/eip1559/package.json +++ b/tests/solidity/suites/eip1559/package.json @@ -3,8 +3,8 @@ "version": "1.0.0", "license": "GPL-3.0-or-later", "scripts": { - "test-ganache": "yarn truffle test", - "test-cosmos": "yarn truffle test --network cosmos" + "test-ganache": "pnpm exec truffle test", + "test-cosmos": "pnpm exec truffle test --network cosmos" }, "devDependencies": { "truffle": "^5.4.14", diff --git a/tests/solidity/suites/exception/package.json b/tests/solidity/suites/exception/package.json index 3bbe41bb8..54562d3e5 100644 --- a/tests/solidity/suites/exception/package.json +++ b/tests/solidity/suites/exception/package.json @@ -4,8 +4,8 @@ "author": "huangyi ", "license": "GPL-3.0-or-later", "scripts": { - "test-ganache": "yarn truffle test", - "test-cosmos": "yarn truffle test --network cosmos" + "test-ganache": "pnpm exec truffle test", + "test-cosmos": "pnpm exec truffle test --network cosmos" }, "devDependencies": { "truffle-assertions": "^0.9.2" diff --git a/tests/solidity/suites/opcode/package.json b/tests/solidity/suites/opcode/package.json index 037d53068..2dade7d52 100644 --- a/tests/solidity/suites/opcode/package.json +++ b/tests/solidity/suites/opcode/package.json @@ -4,8 +4,8 @@ "author": "Go Ethereum", "license": "GPL-3.0-or-later", "scripts": { - "test-ganache": "yarn truffle test", - "test-cosmos": "yarn truffle test --network cosmos" + "test-ganache": "pnpm exec truffle test", + "test-cosmos": "pnpm exec truffle test --network cosmos" }, "devDependencies": { "truffle-assertions": "^0.9.2" diff --git a/tests/solidity/suites/precompiles/package.json b/tests/solidity/suites/precompiles/package.json index ab7990b32..aaf323aee 100644 --- a/tests/solidity/suites/precompiles/package.json +++ b/tests/solidity/suites/precompiles/package.json @@ -6,8 +6,8 @@ "scripts": { "get-contracts": "mkdir -p ./contracts/cosmos && rsync -avm --include='*/' --exclude='**/ERC20Minter_OpenZeppelinV5.sol' --exclude='**/WEVMOS.sol' --exclude='**/ERC20NoMetadata.sol' --include='*.sol' --exclude='*' ../../../../precompiles/ ./contracts/cosmos/", "clean-contracts": "rm -rf ./contracts/cosmos/*", - "test-ganache": "yarn hardhat test", - "test-cosmos": "yarn get-contracts && yarn hardhat test --network cosmos && yarn clean-contracts" + "test-ganache": "pnpm exec hardhat test", + "test-cosmos": "pnpm run get-contracts && pnpm exec hardhat test --network cosmos && pnpm run clean-contracts" }, "devDependencies": { "@nomicfoundation/hardhat-chai-matchers": "^2.0.2", diff --git a/tests/solidity/suites/revert_cases/package.json b/tests/solidity/suites/revert_cases/package.json index 94aa54983..34f8fdb5c 100644 --- a/tests/solidity/suites/revert_cases/package.json +++ b/tests/solidity/suites/revert_cases/package.json @@ -6,8 +6,8 @@ "scripts": { "get-contracts": "mkdir -p ./contracts/cosmos && rsync -avm --include='*/' --exclude='**/ERC20Minter_OpenZeppelinV5.sol' --exclude='**/WEVMOS.sol' --exclude='**/ERC20NoMetadata.sol' --include='*.sol' --exclude='*' ../../../../precompiles/ ./contracts/cosmos/", "clean-contracts": "rm -rf ./contracts/cosmos/*", - "test-ganache": "yarn hardhat test", - "test-cosmos": "yarn get-contracts && yarn hardhat test --network cosmos && yarn clean-contracts" + "test-ganache": "pnpm exec hardhat test", + "test-cosmos": "pnpm run get-contracts && pnpm exec hardhat test --network cosmos && pnpm run clean-contracts" }, "devDependencies": { "@nomicfoundation/hardhat-chai-matchers": "^2.0.2", diff --git a/tests/solidity/test-helper.js b/tests/solidity/test-helper.js index 01c129177..a2e38a667 100644 --- a/tests/solidity/test-helper.js +++ b/tests/solidity/test-helper.js @@ -151,7 +151,7 @@ function checkTestEnv () { if (!fs.existsSync(path.join(__dirname, './node_modules'))) { panic( - 'node_modules not existed. Please run `yarn install` before running tests.' + 'node_modules not existed. Please run `pnpm install` before running tests.' ) } const runConfig = {} @@ -267,7 +267,7 @@ function loadTests (runConfig) { function performTestSuite ({ testName, network }) { const cmd = network === 'ganache' ? 'test-ganache' : 'test-cosmos' return new Promise((resolve, reject) => { - const testProc = spawn('yarn', [cmd], { + const testProc = spawn('pnpm', ['run', cmd], { cwd: path.join(__dirname, 'suites', testName) }) From e81579d77319572ea9a9d7e64ea00b24108ee2dd Mon Sep 17 00:00:00 2001 From: nowooj Date: Thu, 26 Feb 2026 18:01:34 +0900 Subject: [PATCH 6/8] feat: add build script for precompiles and update package structure --- contracts/.gitignore | 3 + contracts/README.md | 65 ++++++++++++++ contracts/package.json | 11 ++- contracts/scripts/build-precompiles.js | 115 +++++++++++++++++++++++++ 4 files changed, 193 insertions(+), 1 deletion(-) create mode 100644 contracts/README.md create mode 100644 contracts/scripts/build-precompiles.js diff --git a/contracts/.gitignore b/contracts/.gitignore index 6f2ad389c..5af36776f 100644 --- a/contracts/.gitignore +++ b/contracts/.gitignore @@ -1,6 +1,9 @@ # Compiled contracts artifacts/ +# Precompiles build output (OpenZeppelin-style dist) +dist/ + # Cached files cache/ diff --git a/contracts/README.md b/contracts/README.md new file mode 100644 index 000000000..6b68470ee --- /dev/null +++ b/contracts/README.md @@ -0,0 +1,65 @@ +# cosmos-evm-contracts + +A collection of smart contracts for the Cosmos EVM blockchain. +The published package includes precompile interface sources (`.sol`) and ABIs (`.json`). + +## Installation + +```bash +# pnpm +pnpm add cosmos-evm-contracts + +# npm +npm install cosmos-evm-contracts + +# yarn +yarn add cosmos-evm-contracts +``` + +## Package structure + +After installation, use the following paths: + +| Path | Description | +|------|-------------| +| `cosmos-evm-contracts/precompiles/` | Solidity sources (`.sol`) | +| `cosmos-evm-contracts/abi/precompiles/` | ABI-only JSON (`.json`) | + +Included precompiles: `bank`, `bech32`, `callbacks`, `common`, `distribution`, `erc20`, `gov`, `ics02`, `ics20`, `slashing`, `staking`, `werc20` (testdata and testutil excluded). + +## Usage + +### Loading ABI (ethers / viem / web3, etc.) + +```javascript +import IBankAbi from "cosmos-evm-contracts/abi/precompiles/bank/IBank.json" assert { type: "json" }; + +// or Node +const IBankAbi = require("cosmos-evm-contracts/abi/precompiles/bank/IBank.json"); +``` + +### Using interfaces in Hardhat + +Import by package path in your contract: + +```solidity +import "cosmos-evm-contracts/precompiles/bank/IBank.sol"; +``` + +### Using interfaces in Foundry + +Add the following to `remappings.txt` for shorter import paths: + +``` +cosmos-evm-contracts/=node_modules/cosmos-evm-contracts/precompiles/ +``` + +```solidity +import "cosmos-evm-contracts/bank/IBank.sol"; +``` + +### Path reference + +- Interface ABI: `cosmos-evm-contracts/abi/precompiles/{module}/{Interface}.json` + e.g. `abi/precompiles/staking/StakingI.json` +- Common types: `cosmos-evm-contracts/precompiles/common/Types.sol` (structs only, no ABI) diff --git a/contracts/package.json b/contracts/package.json index 3e5414405..bc371c5f0 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -9,7 +9,16 @@ "hardhat": "^3.1.10" }, "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "build:precompiles": "node scripts/build-precompiles.js", + "compile": "hardhat compile", + "prepublishOnly": "pnpm run build:precompiles" + }, + "files": [ + "dist", + "README.md" + ], + "exports": { + "./*": "./dist/*" }, "repository": { "type": "git", diff --git a/contracts/scripts/build-precompiles.js b/contracts/scripts/build-precompiles.js new file mode 100644 index 000000000..d806b29fb --- /dev/null +++ b/contracts/scripts/build-precompiles.js @@ -0,0 +1,115 @@ +#!/usr/bin/env node +/** + * Build precompile contracts (excluding testdata, testutil) in OpenZeppelin style: + * - dist/precompiles/ : .sol sources + * - dist/abi/ : ABI-only JSON per contract + * + * Run from contracts directory: pnpm run build:precompiles + */ + +import { readFileSync, writeFileSync, mkdirSync, cpSync, existsSync, readdirSync, statSync } from "fs"; +import { join, dirname } from "path"; +import { fileURLToPath } from "url"; +import { execSync } from "child_process"; + +const __dirname = fileURLToPath(new URL(".", import.meta.url)); +const ROOT = join(__dirname, ".."); +const ARTIFACTS = join(ROOT, "artifacts", "solidity", "precompiles"); +const SOLIDITY_SOURCE = join(ROOT, "solidity"); +const DIST = join(ROOT, "dist"); +const DIST_ABI = join(DIST, "abi"); + +const EXCLUDED_DIRS = ["testdata", "testutil"]; + +function ensureDir(p) { + if (!existsSync(p)) mkdirSync(p, { recursive: true }); +} + +function* walkArtifactJsons(dir) { + if (!existsSync(dir)) return; + for (const name of readdirSync(dir)) { + const full = join(dir, name); + if (statSync(full).isDirectory()) { + if (name.endsWith(".sol")) { + const contractName = name.replace(".sol", ""); + const jsonPath = join(full, contractName + ".json"); + if (existsSync(jsonPath)) yield jsonPath; + } + yield* walkArtifactJsons(full); + } + } +} + +function* walkSolSources(dir, prefix = "") { + if (!existsSync(dir)) return; + for (const name of readdirSync(dir)) { + const full = join(dir, name); + if (statSync(full).isDirectory()) { + if (EXCLUDED_DIRS.includes(name)) continue; + yield* walkSolSources(full, join(prefix, name)); + } else if (name.endsWith(".sol")) { + yield join(prefix, name); + } + } +} + +function buildPrecompiles() { + if (!existsSync(ARTIFACTS)) { + console.log("Compiling with Hardhat..."); + execSync("pnpm exec hardhat compile", { + cwd: ROOT, + stdio: "inherit", + }); + } + if (!existsSync(ARTIFACTS)) { + console.error("No artifacts at", ARTIFACTS, "- run: pnpm exec hardhat compile"); + process.exit(1); + } + + ensureDir(DIST_ABI); + + const copiedSol = new Set(); + let count = 0; + + for (const jsonPath of walkArtifactJsons(ARTIFACTS)) { + const rel = jsonPath.slice(ARTIFACTS.length + 1); + if (EXCLUDED_DIRS.some((d) => rel.includes(d))) continue; + + const artifact = JSON.parse(readFileSync(jsonPath, "utf8")); + const sourceName = artifact.sourceName; // e.g. "solidity/precompiles/bank/IBank.sol" + if (!sourceName || !sourceName.startsWith("solidity/precompiles/")) continue; + + const relFromSolidity = sourceName.replace(/^solidity\//, ""); // precompiles/bank/IBank.sol + const solPath = join(SOLIDITY_SOURCE, relFromSolidity); + const abiOutPath = join(DIST_ABI, relFromSolidity.replace(".sol", ".json")); + const solOutPath = join(DIST, relFromSolidity); + + ensureDir(dirname(abiOutPath)); + ensureDir(dirname(solOutPath)); + + writeFileSync(abiOutPath, JSON.stringify(artifact.abi ?? [], null, 2), "utf8"); + if (existsSync(solPath)) { + cpSync(solPath, solOutPath); + copiedSol.add(relFromSolidity); + } + count++; + console.log(" ", relFromSolidity); + } + + // Copy .sol sources that have no artifact (e.g. common/Types.sol with only structs) + const precompilesSource = join(SOLIDITY_SOURCE, "precompiles"); + for (const rel of walkSolSources(precompilesSource)) { + const relFromSolidity = join("precompiles", rel); + if (copiedSol.has(relFromSolidity)) continue; + const solPath = join(SOLIDITY_SOURCE, relFromSolidity); + const solOutPath = join(DIST, relFromSolidity); + ensureDir(dirname(solOutPath)); + cpSync(solPath, solOutPath); + count++; + console.log(" ", relFromSolidity, "(no ABI)"); + } + + console.log("\nDone. Built", count, "precompile file(s) to dist/ (OpenZeppelin style)."); +} + +buildPrecompiles(); From 4a6519277e4d174beb5c1b91baee42e87246afdb Mon Sep 17 00:00:00 2001 From: nowooj Date: Thu, 26 Feb 2026 18:19:08 +0900 Subject: [PATCH 7/8] chore: remove unused package-lock.json --- contracts/package-lock.json | 1393 --- package-lock.json | 6 - tests/contracts/package-lock.json | 29 - .../hardhat/package-lock.json | 8804 ----------------- .../viem/package-lock.json | 1536 --- 5 files changed, 11768 deletions(-) delete mode 100644 contracts/package-lock.json delete mode 100644 package-lock.json delete mode 100644 tests/contracts/package-lock.json delete mode 100644 tests/evm-tools-compatibility/hardhat/package-lock.json delete mode 100644 tests/evm-tools-compatibility/viem/package-lock.json diff --git a/contracts/package-lock.json b/contracts/package-lock.json deleted file mode 100644 index 866fee971..000000000 --- a/contracts/package-lock.json +++ /dev/null @@ -1,1393 +0,0 @@ -{ - "name": "cosmos-evm-contracts", - "version": "0.0.1", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "cosmos-evm-contracts", - "version": "0.0.1", - "license": "ISC", - "devDependencies": { - "@account-abstraction/contracts": "^0.8.0", - "@openzeppelin/contracts": "^5.4.0", - "hardhat": "^3.1.10" - } - }, - "node_modules/@account-abstraction/contracts": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@account-abstraction/contracts/-/contracts-0.8.0.tgz", - "integrity": "sha512-8krPx/gpnoT+5xAroagVCbeA7FbUigMZWXFKKPm+oghyr29Dksssdx5sI7xGv9212i4JPaDDUGFk58dpuwVgHA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@openzeppelin/contracts": "^5.1.0", - "@uniswap/v3-periphery": "^1.4.3" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", - "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", - "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", - "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", - "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", - "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", - "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", - "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", - "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", - "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", - "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", - "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", - "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", - "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", - "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", - "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", - "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", - "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", - "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", - "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", - "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", - "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openharmony-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", - "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", - "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", - "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", - "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", - "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@noble/curves": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", - "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@nomicfoundation/edr": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.12.0-next.24.tgz", - "integrity": "sha512-/NwB9yX7uBs/FIJKHBZo2hVhP7g3v6LbE21JvTLvshgb+XscyaRRUmzB//ankxLGJ1TehtXAf/Qh/a19vgpiig==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nomicfoundation/edr-darwin-arm64": "0.12.0-next.24", - "@nomicfoundation/edr-darwin-x64": "0.12.0-next.24", - "@nomicfoundation/edr-linux-arm64-gnu": "0.12.0-next.24", - "@nomicfoundation/edr-linux-arm64-musl": "0.12.0-next.24", - "@nomicfoundation/edr-linux-x64-gnu": "0.12.0-next.24", - "@nomicfoundation/edr-linux-x64-musl": "0.12.0-next.24", - "@nomicfoundation/edr-win32-x64-msvc": "0.12.0-next.24" - }, - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/edr-darwin-arm64": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.12.0-next.24.tgz", - "integrity": "sha512-lYcD9IM52G0hk/3Sso2Rpdpyfafy3aHH0GsSy/FVog9UrEkmmU14AmccE18/zTL+UyV0yzYMDOmh6y83SD/lbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/edr-darwin-x64": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.12.0-next.24.tgz", - "integrity": "sha512-cHDJZlPDpDXJXxQDVM0TGzEuNvV3wW94gipEdjNxZHeC9T2/NU/5GUoQajMJgvCZ6PWDlRMwIBRtM1jC/ny5DA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/edr-linux-arm64-gnu": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.12.0-next.24.tgz", - "integrity": "sha512-G/iln4W79CR9f68+crBZM1kBdmmK3IbQCD4b5u+iqby+H5BOLSPQmjeW9UREK5WSecnv7Oxr/ZTHHRq/w9pUPA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/edr-linux-arm64-musl": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.12.0-next.24.tgz", - "integrity": "sha512-wt6UuOutufL3UTSyMiwPOyfRly3uQEFHASXqLsNjgp4qBrm0s+kkyaYpAe8h53lGzZmXIDOAbO0P/fwxnLCnWw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/edr-linux-x64-gnu": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.12.0-next.24.tgz", - "integrity": "sha512-mHgkUSynINTnnIvZuZymJ4dMqjemGjdrzQ87rP5/SQQGRQVV82uDomSEglp9btSmbBWfPj4r4tWsV+a3844W0w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/edr-linux-x64-musl": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.12.0-next.24.tgz", - "integrity": "sha512-E0XNSlPc8Hx5Nhowe5VIvAqVeT+1VUWSRqG0cZtYcpUgJZxTp8p03ojPtbyfjL4T+78GfnpmzkkLhB6S2jZ1FQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/edr-win32-x64-msvc": { - "version": "0.12.0-next.24", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.12.0-next.24.tgz", - "integrity": "sha512-PbtY2zWc4k8HK4gVnVbPohJnfrICboo6J91vxTlhnPKCWGvfGbsqLfDUAp91ExHHY+80qRfQnwaLbhJiIqLFGw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - } - }, - "node_modules/@nomicfoundation/hardhat-errors": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-errors/-/hardhat-errors-3.0.7.tgz", - "integrity": "sha512-l4RrzTfJ/WO0B9Te6i9161+pRbCSFXILanmHmgRfS4Bb4pDOjs+0eQf2I2cQrnqcJ6O/bxLvChPTQuad97dmQw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nomicfoundation/hardhat-utils": "^4.0.0" - } - }, - "node_modules/@nomicfoundation/hardhat-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-utils/-/hardhat-utils-4.0.0.tgz", - "integrity": "sha512-Deu4od7flcM89K+SEAxmOyn7FFWGiEILrGjoxYl/Gus0tctgpLNaK3M4LIjrJ25ci8LBjGVe3i28XZA4+QGQHQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@streamparser/json-node": "^0.0.22", - "debug": "^4.3.2", - "env-paths": "^2.2.0", - "ethereum-cryptography": "^2.2.1", - "fast-equals": "^5.4.0", - "json-stream-stringify": "^3.1.6", - "rfdc": "^1.3.1", - "undici": "^6.16.1" - } - }, - "node_modules/@nomicfoundation/hardhat-vendored": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-vendored/-/hardhat-vendored-3.0.1.tgz", - "integrity": "sha512-jBOAqmEAMJ8zdfiQmTLV+c0IaSyySqkDSJ9spTy8Ts/m/mO8w364TClyfn+p4ZpxBjyX4LMa3NfC402hoDtwCg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@nomicfoundation/hardhat-zod-utils": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-zod-utils/-/hardhat-zod-utils-3.0.2.tgz", - "integrity": "sha512-EtMIhi7jtpeQYd+pRQBNlxthi8OPVr/t32yn+VHHp6nwS5wgXLh6/KpvFZfJj5mBAUbOtogB7YQ4n5fpOeuggA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nomicfoundation/hardhat-errors": "^3.0.7", - "@nomicfoundation/hardhat-utils": "^4.0.0" - }, - "peerDependencies": { - "zod": "^3.23.8" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.1.tgz", - "integrity": "sha512-1LMtXj1puAxyFusBgUIy5pZk3073cNXYnXUpuNKFghHbIit/xZgbk0AokpUADbNm3gyD6bFWl3LRFh3dhVdREg==", - "dev": true, - "engines": { - "node": ">= 12" - }, - "optionalDependencies": { - "@nomicfoundation/solidity-analyzer-darwin-arm64": "0.1.1", - "@nomicfoundation/solidity-analyzer-darwin-x64": "0.1.1", - "@nomicfoundation/solidity-analyzer-freebsd-x64": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "0.1.1", - "@nomicfoundation/solidity-analyzer-linux-x64-musl": "0.1.1", - "@nomicfoundation/solidity-analyzer-win32-arm64-msvc": "0.1.1", - "@nomicfoundation/solidity-analyzer-win32-ia32-msvc": "0.1.1", - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "0.1.1" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-darwin-arm64": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.1.tgz", - "integrity": "sha512-KcTodaQw8ivDZyF+D76FokN/HdpgGpfjc/gFCImdLUyqB6eSWVaZPazMbeAjmfhx3R0zm/NYVzxwAokFKgrc0w==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-darwin-x64": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.1.tgz", - "integrity": "sha512-XhQG4BaJE6cIbjAVtzGOGbK3sn1BO9W29uhk9J8y8fZF1DYz0Doj8QDMfpMu+A6TjPDs61lbsmeYodIDnfveSA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-freebsd-x64": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-freebsd-x64/-/solidity-analyzer-freebsd-x64-0.1.1.tgz", - "integrity": "sha512-GHF1VKRdHW3G8CndkwdaeLkVBi5A9u2jwtlS7SLhBc8b5U/GcoL39Q+1CSO3hYqePNP+eV5YI7Zgm0ea6kMHoA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-gnu": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.1.tgz", - "integrity": "sha512-g4Cv2fO37ZsUENQ2vwPnZc2zRenHyAxHcyBjKcjaSmmkKrFr64yvzeNO8S3GBFCo90rfochLs99wFVGT/0owpg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-musl": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.1.tgz", - "integrity": "sha512-WJ3CE5Oek25OGE3WwzK7oaopY8xMw9Lhb0mlYuJl/maZVo+WtP36XoQTb7bW/i8aAdHW5Z+BqrHMux23pvxG3w==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-gnu": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.1.tgz", - "integrity": "sha512-5WN7leSr5fkUBBjE4f3wKENUy9HQStu7HmWqbtknfXkkil+eNWiBV275IOlpXku7v3uLsXTOKpnnGHJYI2qsdA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-musl": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.1.tgz", - "integrity": "sha512-KdYMkJOq0SYPQMmErv/63CwGwMm5XHenEna9X9aB8mQmhDBrYrlAOSsIPgFCUSL0hjxE3xHP65/EPXR/InD2+w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-arm64-msvc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-arm64-msvc/-/solidity-analyzer-win32-arm64-msvc-0.1.1.tgz", - "integrity": "sha512-VFZASBfl4qiBYwW5xeY20exWhmv6ww9sWu/krWSesv3q5hA0o1JuzmPHR4LPN6SUZj5vcqci0O6JOL8BPw+APg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-ia32-msvc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-ia32-msvc/-/solidity-analyzer-win32-ia32-msvc-0.1.1.tgz", - "integrity": "sha512-JnFkYuyCSA70j6Si6cS1A9Gh1aHTEb8kOTBApp/c7NRTFGNMH8eaInKlyuuiIbvYFhlXW4LicqyYuWNNq9hkpQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-x64-msvc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.1.tgz", - "integrity": "sha512-HrVJr6+WjIXGnw3Q9u6KQcbZCtk0caVWhCdFADySvRyUxJ8PnzlaP+MhwNE8oyT8OZ6ejHBRrrgjSqDCFXGirw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@openzeppelin/contracts": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.6.1.tgz", - "integrity": "sha512-Ly6SlsVJ3mj+b18W3R8gNufB7dTICT105fJhodGAGgyC2oqnBAhqSiNDJ8V8DLY05cCz81GLI0CU5vNYA1EC/w==", - "dev": true, - "license": "MIT" - }, - "node_modules/@scure/base": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", - "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip32": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", - "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "~1.4.0", - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip39": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", - "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@sentry/core": { - "version": "9.47.1", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-9.47.1.tgz", - "integrity": "sha512-KX62+qIt4xgy8eHKHiikfhz2p5fOciXd0Cl+dNzhgPFq8klq4MGMNaf148GB3M/vBqP4nw/eFvRMAayFCgdRQw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/@streamparser/json": { - "version": "0.0.22", - "resolved": "https://registry.npmjs.org/@streamparser/json/-/json-0.0.22.tgz", - "integrity": "sha512-b6gTSBjJ8G8SuO3Gbbj+zXbVx8NSs1EbpbMKpzGLWMdkR+98McH9bEjSz3+0mPJf68c5nxa3CrJHp5EQNXM6zQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@streamparser/json-node": { - "version": "0.0.22", - "resolved": "https://registry.npmjs.org/@streamparser/json-node/-/json-node-0.0.22.tgz", - "integrity": "sha512-sJT2ptNRwqB1lIsQrQlCoWk5rF4tif9wDh+7yluAGijJamAhrHGYpFB/Zg3hJeceoZypi74ftXk8DHzwYpbZSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@streamparser/json": "^0.0.22" - } - }, - "node_modules/@uniswap/lib": { - "version": "4.0.1-alpha", - "resolved": "https://registry.npmjs.org/@uniswap/lib/-/lib-4.0.1-alpha.tgz", - "integrity": "sha512-f6UIliwBbRsgVLxIaBANF6w09tYqc6Y/qXdsrbEmXHyFA7ILiKrIwRFXe1yOg8M3cksgVsO9N7yuL2DdCGQKBA==", - "dev": true, - "license": "GPL-3.0-or-later", - "engines": { - "node": ">=10" - } - }, - "node_modules/@uniswap/v2-core": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@uniswap/v2-core/-/v2-core-1.0.1.tgz", - "integrity": "sha512-MtybtkUPSyysqLY2U210NBDeCHX+ltHt3oADGdjqoThZaFRDKwM6k1Nb3F0A3hk5hwuQvytFWhrWHOEq6nVJ8Q==", - "dev": true, - "license": "GPL-3.0-or-later", - "engines": { - "node": ">=10" - } - }, - "node_modules/@uniswap/v3-core": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@uniswap/v3-core/-/v3-core-1.0.1.tgz", - "integrity": "sha512-7pVk4hEm00j9tc71Y9+ssYpO6ytkeI0y7WE9P6UcmNzhxPePwyAxImuhVsTqWK9YFvzgtvzJHi64pBl4jUzKMQ==", - "dev": true, - "license": "BUSL-1.1", - "engines": { - "node": ">=10" - } - }, - "node_modules/@uniswap/v3-periphery": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/@uniswap/v3-periphery/-/v3-periphery-1.4.4.tgz", - "integrity": "sha512-S4+m+wh8HbWSO3DKk4LwUCPZJTpCugIsHrWR86m/OrUyvSqGDTXKFfc2sMuGXCZrD1ZqO3rhQsKgdWg3Hbb2Kw==", - "dev": true, - "license": "GPL-2.0-or-later", - "dependencies": { - "@openzeppelin/contracts": "3.4.2-solc-0.7", - "@uniswap/lib": "^4.0.1-alpha", - "@uniswap/v2-core": "^1.0.1", - "@uniswap/v3-core": "^1.0.0", - "base64-sol": "1.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@uniswap/v3-periphery/node_modules/@openzeppelin/contracts": { - "version": "3.4.2-solc-0.7", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-3.4.2-solc-0.7.tgz", - "integrity": "sha512-W6QmqgkADuFcTLzHL8vVoNBtkwjvQRpYIAom7KiUNoLKghyx3FgH0GBjt8NRvigV1ZmMOBllvE1By1C+bi8WpA==", - "dev": true, - "license": "MIT" - }, - "node_modules/adm-zip": { - "version": "0.4.16", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", - "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", - "dev": true, - "engines": { - "node": ">=0.3.0" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/base64-sol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/base64-sol/-/base64-sol-1.0.1.tgz", - "integrity": "sha512-ld3cCNMeXt4uJXmLZBHFGMvVpK9KsLVEhPpFRXnvSVAqABKbuNZg/+dsq3NuM+wxFLb/UrVkz7m1ciWmkMfTbg==", - "dev": true, - "license": "MIT" - }, - "node_modules/chalk": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", - "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/chokidar": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", - "dev": true, - "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/esbuild": { - "version": "0.25.12", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", - "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.12", - "@esbuild/android-arm": "0.25.12", - "@esbuild/android-arm64": "0.25.12", - "@esbuild/android-x64": "0.25.12", - "@esbuild/darwin-arm64": "0.25.12", - "@esbuild/darwin-x64": "0.25.12", - "@esbuild/freebsd-arm64": "0.25.12", - "@esbuild/freebsd-x64": "0.25.12", - "@esbuild/linux-arm": "0.25.12", - "@esbuild/linux-arm64": "0.25.12", - "@esbuild/linux-ia32": "0.25.12", - "@esbuild/linux-loong64": "0.25.12", - "@esbuild/linux-mips64el": "0.25.12", - "@esbuild/linux-ppc64": "0.25.12", - "@esbuild/linux-riscv64": "0.25.12", - "@esbuild/linux-s390x": "0.25.12", - "@esbuild/linux-x64": "0.25.12", - "@esbuild/netbsd-arm64": "0.25.12", - "@esbuild/netbsd-x64": "0.25.12", - "@esbuild/openbsd-arm64": "0.25.12", - "@esbuild/openbsd-x64": "0.25.12", - "@esbuild/openharmony-arm64": "0.25.12", - "@esbuild/sunos-x64": "0.25.12", - "@esbuild/win32-arm64": "0.25.12", - "@esbuild/win32-ia32": "0.25.12", - "@esbuild/win32-x64": "0.25.12" - } - }, - "node_modules/ethereum-cryptography": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", - "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "1.4.2", - "@noble/hashes": "1.4.0", - "@scure/bip32": "1.4.0", - "@scure/bip39": "1.3.0" - } - }, - "node_modules/fast-equals": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.4.0.tgz", - "integrity": "sha512-jt2DW/aNFNwke7AUd+Z+e6pz39KO5rzdbbFCg2sGafS4mk13MI7Z8O5z9cADNn5lhGODIgLwug6TZO2ctf7kcw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/get-tsconfig": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.0.tgz", - "integrity": "sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "node_modules/hardhat": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-3.1.10.tgz", - "integrity": "sha512-+J3LmO5j3r8bYRIiImaTT6WtT0EKcR0nfFxWq/bokAKZq7GKYf6ErKSrOuH+gFIqo+CfnrkxcgbPY20P5vuuSQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nomicfoundation/edr": "0.12.0-next.24", - "@nomicfoundation/hardhat-errors": "^3.0.7", - "@nomicfoundation/hardhat-utils": "^4.0.0", - "@nomicfoundation/hardhat-vendored": "^3.0.1", - "@nomicfoundation/hardhat-zod-utils": "^3.0.2", - "@nomicfoundation/solidity-analyzer": "^0.1.1", - "@sentry/core": "^9.4.0", - "adm-zip": "^0.4.16", - "chalk": "^5.3.0", - "chokidar": "^4.0.3", - "debug": "^4.3.2", - "enquirer": "^2.3.0", - "ethereum-cryptography": "^2.2.1", - "micro-eth-signer": "^0.14.0", - "p-map": "^7.0.2", - "resolve.exports": "^2.0.3", - "semver": "^7.6.3", - "tsx": "^4.19.3", - "ws": "^8.18.0", - "zod": "^3.23.8" - }, - "bin": { - "hardhat": "dist/src/cli.js" - } - }, - "node_modules/json-stream-stringify": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", - "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=7.10.1" - } - }, - "node_modules/micro-eth-signer": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/micro-eth-signer/-/micro-eth-signer-0.14.0.tgz", - "integrity": "sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "~1.8.1", - "@noble/hashes": "~1.7.1", - "micro-packed": "~0.7.2" - } - }, - "node_modules/micro-eth-signer/node_modules/@noble/curves": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", - "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.7.2" - }, - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/micro-eth-signer/node_modules/@noble/hashes": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", - "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/micro-packed": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/micro-packed/-/micro-packed-0.7.3.tgz", - "integrity": "sha512-2Milxs+WNC00TRlem41oRswvw31146GiSaoCT7s3Xi2gMUglW5QBeqlQaZeHr5tJx9nm3i57LNXPqxOOaWtTYg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@scure/base": "~1.2.5" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/micro-packed/node_modules/@scure/base": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.6.tgz", - "integrity": "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" - }, - "node_modules/p-map": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.4.tgz", - "integrity": "sha512-tkAQEw8ysMzmkhgw8k+1U/iPhWNhykKnSk4Rd5zLoPJCuJaGRPo6YposrZgaxHKzDHdDWWZvE/Sk7hsL2X/CpQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/readdirp": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", - "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14.18.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, - "node_modules/resolve.exports": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", - "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/rfdc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", - "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", - "dev": true, - "license": "MIT" - }, - "node_modules/semver": { - "version": "7.7.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/tsx": { - "version": "4.20.6", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.20.6.tgz", - "integrity": "sha512-ytQKuwgmrrkDTFP4LjR0ToE2nqgy886GpvRSpU0JAnrdBYppuY5rLkRUYPU1yCryb24SsKBTL/hlDQAEFVwtZg==", - "dev": true, - "license": "MIT", - "dependencies": { - "esbuild": "~0.25.0", - "get-tsconfig": "^4.7.5" - }, - "bin": { - "tsx": "dist/cli.mjs" - }, - "engines": { - "node": ">=18.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - } - }, - "node_modules/undici": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.23.0.tgz", - "integrity": "sha512-VfQPToRA5FZs/qJxLIinmU59u0r7LXqoJkCzinq3ckNJp3vKEh7jTWN589YQ5+aoAC/TGRLyJLCPKcLQbM8r9g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.17" - } - }, - "node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/zod": { - "version": "3.25.76", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", - "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/colinhacks" - } - } - } -} diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 819063d72..000000000 --- a/package-lock.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "evm", - "lockfileVersion": 3, - "requires": true, - "packages": {} -} diff --git a/tests/contracts/package-lock.json b/tests/contracts/package-lock.json deleted file mode 100644 index c6febb1a4..000000000 --- a/tests/contracts/package-lock.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "name": "test-contracts", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "test-contracts", - "version": "1.0.0", - "license": "ISC", - "dependencies": { - "@account-abstraction/contracts": "^0.6.0", - "@openzeppelin/contracts": "^4.9.6" - } - }, - "node_modules/@account-abstraction/contracts": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@account-abstraction/contracts/-/contracts-0.6.0.tgz", - "integrity": "sha512-8ooRJuR7XzohMDM4MV34I12Ci2bmxfE9+cixakRL7lA4BAwJKQ3ahvd8FbJa9kiwkUPCUNtj+/zxDQWYYalLMQ==", - "license": "MIT" - }, - "node_modules/@openzeppelin/contracts": { - "version": "4.9.6", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-4.9.6.tgz", - "integrity": "sha512-xSmezSupL+y9VkHZJGDoCBpmnB2ogM13ccaYDWqJTfS3dbuHkgjuwDFUmaFauBCboQMGB/S5UqUl2y54X99BmA==", - "license": "MIT" - } - } -} diff --git a/tests/evm-tools-compatibility/hardhat/package-lock.json b/tests/evm-tools-compatibility/hardhat/package-lock.json deleted file mode 100644 index 6ccb1f52c..000000000 --- a/tests/evm-tools-compatibility/hardhat/package-lock.json +++ /dev/null @@ -1,8804 +0,0 @@ -{ - "name": "hardhat-project", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "hardhat-project", - "dependencies": { - "@openzeppelin/contracts": "^5.4.0" - }, - "devDependencies": { - "@nomicfoundation/hardhat-chai-matchers": "^2.0.9", - "@nomicfoundation/hardhat-ethers": "^3.0.9", - "@nomicfoundation/hardhat-ignition-ethers": "^0.15.13", - "@nomicfoundation/hardhat-network-helpers": "^1.0.13", - "@nomicfoundation/hardhat-toolbox": "^5.0.0", - "@nomicfoundation/hardhat-verify": "^2.0.14", - "@typechain/ethers-v6": "^0.5.1", - "@typechain/hardhat": "^9.1.0", - "@types/chai": "^4.3.20", - "@types/mocha": "^10.0.10", - "chai": "^4.5.0", - "hardhat": "^2.23.0", - "hardhat-deploy": "^1.0.2", - "hardhat-gas-reporter": "^1.0.10", - "solidity-coverage": "^0.8.16", - "ts-node": "^10.9.2", - "typechain": "^8.3.2", - "typescript": "^5.8.3" - } - }, - "node_modules/@adraffy/ens-normalize": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz", - "integrity": "sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@ethereumjs/rlp": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-5.0.2.tgz", - "integrity": "sha512-DziebCdg4JpGlEqEdGgXmjqcFoJi+JGulUXwEjsZGAscAQ7MyD/7LE/GVCP29vEQxKc7AAwjT3A2ywHp2xfoCA==", - "dev": true, - "license": "MPL-2.0", - "bin": { - "rlp": "bin/rlp.cjs" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@ethereumjs/util": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-9.1.0.tgz", - "integrity": "sha512-XBEKsYqLGXLah9PNJbgdkigthkG7TAGvlD/sH12beMXEyHDyigfcbdvHhmLyDWgDyOJn4QwiQUaF7yeuhnjdog==", - "dev": true, - "license": "MPL-2.0", - "dependencies": { - "@ethereumjs/rlp": "^5.0.2", - "ethereum-cryptography": "^2.2.1" - }, - "engines": { - "node": ">=18" - } - }, - "node_modules/@ethereumjs/util/node_modules/@noble/curves": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", - "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@ethereumjs/util/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@ethereumjs/util/node_modules/ethereum-cryptography": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", - "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "1.4.2", - "@noble/hashes": "1.4.0", - "@scure/bip32": "1.4.0", - "@scure/bip39": "1.3.0" - } - }, - "node_modules/@ethersproject/abi": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.8.0.tgz", - "integrity": "sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/address": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/constants": "^5.8.0", - "@ethersproject/hash": "^5.8.0", - "@ethersproject/keccak256": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/strings": "^5.8.0" - } - }, - "node_modules/@ethersproject/abstract-provider": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.8.0.tgz", - "integrity": "sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/networks": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/transactions": "^5.8.0", - "@ethersproject/web": "^5.8.0" - } - }, - "node_modules/@ethersproject/abstract-signer": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.8.0.tgz", - "integrity": "sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-provider": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0" - } - }, - "node_modules/@ethersproject/address": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.8.0.tgz", - "integrity": "sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/keccak256": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/rlp": "^5.8.0" - } - }, - "node_modules/@ethersproject/base64": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.8.0.tgz", - "integrity": "sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0" - } - }, - "node_modules/@ethersproject/basex": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.8.0.tgz", - "integrity": "sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/properties": "^5.8.0" - } - }, - "node_modules/@ethersproject/bignumber": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.8.0.tgz", - "integrity": "sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "bn.js": "^5.2.1" - } - }, - "node_modules/@ethersproject/bytes": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.8.0.tgz", - "integrity": "sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/logger": "^5.8.0" - } - }, - "node_modules/@ethersproject/constants": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.8.0.tgz", - "integrity": "sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.8.0" - } - }, - "node_modules/@ethersproject/contracts": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.8.0.tgz", - "integrity": "sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abi": "^5.8.0", - "@ethersproject/abstract-provider": "^5.8.0", - "@ethersproject/abstract-signer": "^5.8.0", - "@ethersproject/address": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/constants": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/transactions": "^5.8.0" - } - }, - "node_modules/@ethersproject/hash": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.8.0.tgz", - "integrity": "sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-signer": "^5.8.0", - "@ethersproject/address": "^5.8.0", - "@ethersproject/base64": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/keccak256": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/strings": "^5.8.0" - } - }, - "node_modules/@ethersproject/hdnode": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.8.0.tgz", - "integrity": "sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-signer": "^5.8.0", - "@ethersproject/basex": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/pbkdf2": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/sha2": "^5.8.0", - "@ethersproject/signing-key": "^5.8.0", - "@ethersproject/strings": "^5.8.0", - "@ethersproject/transactions": "^5.8.0", - "@ethersproject/wordlists": "^5.8.0" - } - }, - "node_modules/@ethersproject/json-wallets": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.8.0.tgz", - "integrity": "sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-signer": "^5.8.0", - "@ethersproject/address": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/hdnode": "^5.8.0", - "@ethersproject/keccak256": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/pbkdf2": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/random": "^5.8.0", - "@ethersproject/strings": "^5.8.0", - "@ethersproject/transactions": "^5.8.0", - "aes-js": "3.0.0", - "scrypt-js": "3.0.1" - } - }, - "node_modules/@ethersproject/json-wallets/node_modules/aes-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", - "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@ethersproject/keccak256": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.8.0.tgz", - "integrity": "sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "js-sha3": "0.8.0" - } - }, - "node_modules/@ethersproject/logger": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.8.0.tgz", - "integrity": "sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT" - }, - "node_modules/@ethersproject/networks": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.8.0.tgz", - "integrity": "sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/logger": "^5.8.0" - } - }, - "node_modules/@ethersproject/pbkdf2": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.8.0.tgz", - "integrity": "sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/sha2": "^5.8.0" - } - }, - "node_modules/@ethersproject/properties": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.8.0.tgz", - "integrity": "sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/logger": "^5.8.0" - } - }, - "node_modules/@ethersproject/providers": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.8.0.tgz", - "integrity": "sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-provider": "^5.8.0", - "@ethersproject/abstract-signer": "^5.8.0", - "@ethersproject/address": "^5.8.0", - "@ethersproject/base64": "^5.8.0", - "@ethersproject/basex": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/constants": "^5.8.0", - "@ethersproject/hash": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/networks": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/random": "^5.8.0", - "@ethersproject/rlp": "^5.8.0", - "@ethersproject/sha2": "^5.8.0", - "@ethersproject/strings": "^5.8.0", - "@ethersproject/transactions": "^5.8.0", - "@ethersproject/web": "^5.8.0", - "bech32": "1.1.4", - "ws": "8.18.0" - } - }, - "node_modules/@ethersproject/providers/node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/@ethersproject/random": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.8.0.tgz", - "integrity": "sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0" - } - }, - "node_modules/@ethersproject/rlp": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.8.0.tgz", - "integrity": "sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0" - } - }, - "node_modules/@ethersproject/sha2": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.8.0.tgz", - "integrity": "sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "hash.js": "1.1.7" - } - }, - "node_modules/@ethersproject/signing-key": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.8.0.tgz", - "integrity": "sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "bn.js": "^5.2.1", - "elliptic": "6.6.1", - "hash.js": "1.1.7" - } - }, - "node_modules/@ethersproject/solidity": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.8.0.tgz", - "integrity": "sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/keccak256": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/sha2": "^5.8.0", - "@ethersproject/strings": "^5.8.0" - } - }, - "node_modules/@ethersproject/strings": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.8.0.tgz", - "integrity": "sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/constants": "^5.8.0", - "@ethersproject/logger": "^5.8.0" - } - }, - "node_modules/@ethersproject/transactions": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.8.0.tgz", - "integrity": "sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/address": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/constants": "^5.8.0", - "@ethersproject/keccak256": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/rlp": "^5.8.0", - "@ethersproject/signing-key": "^5.8.0" - } - }, - "node_modules/@ethersproject/units": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.8.0.tgz", - "integrity": "sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/constants": "^5.8.0", - "@ethersproject/logger": "^5.8.0" - } - }, - "node_modules/@ethersproject/wallet": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.8.0.tgz", - "integrity": "sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-provider": "^5.8.0", - "@ethersproject/abstract-signer": "^5.8.0", - "@ethersproject/address": "^5.8.0", - "@ethersproject/bignumber": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/hash": "^5.8.0", - "@ethersproject/hdnode": "^5.8.0", - "@ethersproject/json-wallets": "^5.8.0", - "@ethersproject/keccak256": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/random": "^5.8.0", - "@ethersproject/signing-key": "^5.8.0", - "@ethersproject/transactions": "^5.8.0", - "@ethersproject/wordlists": "^5.8.0" - } - }, - "node_modules/@ethersproject/web": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.8.0.tgz", - "integrity": "sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/base64": "^5.8.0", - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/strings": "^5.8.0" - } - }, - "node_modules/@ethersproject/wordlists": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.8.0.tgz", - "integrity": "sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.8.0", - "@ethersproject/hash": "^5.8.0", - "@ethersproject/logger": "^5.8.0", - "@ethersproject/properties": "^5.8.0", - "@ethersproject/strings": "^5.8.0" - } - }, - "node_modules/@fastify/busboy": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz", - "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@noble/curves": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", - "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@noble/hashes": "1.3.2" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@noble/hashes": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz", - "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@noble/secp256k1": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", - "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT" - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nomicfoundation/edr": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr/-/edr-0.11.3.tgz", - "integrity": "sha512-kqILRkAd455Sd6v8mfP3C1/0tCOynJWY+Ir+k/9Boocu2kObCrsFgG+ZWB7fSBVdd9cPVSNrnhWS+V+PEo637g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nomicfoundation/edr-darwin-arm64": "0.11.3", - "@nomicfoundation/edr-darwin-x64": "0.11.3", - "@nomicfoundation/edr-linux-arm64-gnu": "0.11.3", - "@nomicfoundation/edr-linux-arm64-musl": "0.11.3", - "@nomicfoundation/edr-linux-x64-gnu": "0.11.3", - "@nomicfoundation/edr-linux-x64-musl": "0.11.3", - "@nomicfoundation/edr-win32-x64-msvc": "0.11.3" - }, - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/edr-darwin-arm64": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.11.3.tgz", - "integrity": "sha512-w0tksbdtSxz9nuzHKsfx4c2mwaD0+l5qKL2R290QdnN9gi9AV62p9DHkOgfBdyg6/a6ZlnQqnISi7C9avk/6VA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/edr-darwin-x64": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-darwin-x64/-/edr-darwin-x64-0.11.3.tgz", - "integrity": "sha512-QR4jAFrPbOcrO7O2z2ESg+eUeIZPe2bPIlQYgiJ04ltbSGW27FblOzdd5+S3RoOD/dsZGKAvvy6dadBEl0NgoA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/edr-linux-arm64-gnu": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-gnu/-/edr-linux-arm64-gnu-0.11.3.tgz", - "integrity": "sha512-Ktjv89RZZiUmOFPspuSBVJ61mBZQ2+HuLmV67InNlh9TSUec/iDjGIwAn59dx0bF/LOSrM7qg5od3KKac4LJDQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/edr-linux-arm64-musl": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-arm64-musl/-/edr-linux-arm64-musl-0.11.3.tgz", - "integrity": "sha512-B3sLJx1rL2E9pfdD4mApiwOZSrX0a/KQSBWdlq1uAhFKqkl00yZaY4LejgZndsJAa4iKGQJlGnw4HCGeVt0+jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/edr-linux-x64-gnu": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-gnu/-/edr-linux-x64-gnu-0.11.3.tgz", - "integrity": "sha512-D/4cFKDXH6UYyKPu6J3Y8TzW11UzeQI0+wS9QcJzjlrrfKj0ENW7g9VihD1O2FvXkdkTjcCZYb6ai8MMTCsaVw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/edr-linux-x64-musl": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-linux-x64-musl/-/edr-linux-x64-musl-0.11.3.tgz", - "integrity": "sha512-ergXuIb4nIvmf+TqyiDX5tsE49311DrBky6+jNLgsGDTBaN1GS3OFwFS8I6Ri/GGn6xOaT8sKu3q7/m+WdlFzg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/edr-win32-x64-msvc": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@nomicfoundation/edr-win32-x64-msvc/-/edr-win32-x64-msvc-0.11.3.tgz", - "integrity": "sha512-snvEf+WB3OV0wj2A7kQ+ZQqBquMcrozSLXcdnMdEl7Tmn+KDCbmFKBt3Tk0X3qOU4RKQpLPnTxdM07TJNVtung==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 18" - } - }, - "node_modules/@nomicfoundation/hardhat-chai-matchers": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-chai-matchers/-/hardhat-chai-matchers-2.0.9.tgz", - "integrity": "sha512-AbCoBuTKMlwlf1lesSmi/4VvJHNG9EP13EmkCJ+MJS1SBdtVtU4YrBbdYmnYPEvRFcAIMFB/cwcQGmuBYeCoVg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/chai-as-promised": "^7.1.3", - "chai-as-promised": "^7.1.1", - "deep-eql": "^4.0.1", - "ordinal": "^1.0.3" - }, - "peerDependencies": { - "@nomicfoundation/hardhat-ethers": "^3.0.9", - "chai": "^4.2.0", - "ethers": "^6.14.0", - "hardhat": "^2.9.4" - } - }, - "node_modules/@nomicfoundation/hardhat-ethers": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ethers/-/hardhat-ethers-3.0.9.tgz", - "integrity": "sha512-xBJdRUiCwKpr0OYrOzPwAyNGtsVzoBx32HFPJVv6S+sFA9TmBIBDaqNlFPmBH58ZjgNnGhEr/4oBZvGr4q4TjQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.1.1", - "lodash.isequal": "^4.5.0" - }, - "peerDependencies": { - "ethers": "^6.14.0", - "hardhat": "^2.0.0" - } - }, - "node_modules/@nomicfoundation/hardhat-ignition": { - "version": "0.15.12", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition/-/hardhat-ignition-0.15.12.tgz", - "integrity": "sha512-T03bSjFy8vWeKGvFsR42vzl4PgmW06i1e/84m2oowZzdO3i9ax3XJhRiH4kC08QXzkdAdUPinx68hQea8Wh6Jw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@nomicfoundation/ignition-core": "^0.15.12", - "@nomicfoundation/ignition-ui": "^0.15.11", - "chalk": "^4.0.0", - "debug": "^4.3.2", - "fs-extra": "^10.0.0", - "json5": "^2.2.3", - "prompts": "^2.4.2" - }, - "peerDependencies": { - "@nomicfoundation/hardhat-verify": "^2.0.1", - "hardhat": "^2.18.0" - } - }, - "node_modules/@nomicfoundation/hardhat-ignition-ethers": { - "version": "0.15.13", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-ignition-ethers/-/hardhat-ignition-ethers-0.15.13.tgz", - "integrity": "sha512-fJuImb0KBbsylTL5M1DdlChIO/GZoms2NUVJhU+AvfhlgB0jzRH+9jSXE9izYPktd8//tdVSC4kJloJPrR+BlA==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@nomicfoundation/hardhat-ethers": "^3.0.9", - "@nomicfoundation/hardhat-ignition": "^0.15.12", - "@nomicfoundation/ignition-core": "^0.15.12", - "ethers": "^6.14.0", - "hardhat": "^2.18.0" - } - }, - "node_modules/@nomicfoundation/hardhat-network-helpers": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-network-helpers/-/hardhat-network-helpers-1.0.13.tgz", - "integrity": "sha512-ptg0+SH8jnfoYHlR3dKWTNTB43HZSxkuy3OeDk+AufEKQvQ7Ru9LQEbJtLuDTQ4HGRBkhl4oJ9RABsEIbn7Taw==", - "dev": true, - "license": "MIT", - "dependencies": { - "ethereumjs-util": "^7.1.4" - }, - "peerDependencies": { - "hardhat": "^2.9.5" - } - }, - "node_modules/@nomicfoundation/hardhat-toolbox": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-toolbox/-/hardhat-toolbox-5.0.0.tgz", - "integrity": "sha512-FnUtUC5PsakCbwiVNsqlXVIWG5JIb5CEZoSXbJUsEBun22Bivx2jhF1/q9iQbzuaGpJKFQyOhemPB2+XlEE6pQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@nomicfoundation/hardhat-chai-matchers": "^2.0.0", - "@nomicfoundation/hardhat-ethers": "^3.0.0", - "@nomicfoundation/hardhat-ignition-ethers": "^0.15.0", - "@nomicfoundation/hardhat-network-helpers": "^1.0.0", - "@nomicfoundation/hardhat-verify": "^2.0.0", - "@typechain/ethers-v6": "^0.5.0", - "@typechain/hardhat": "^9.0.0", - "@types/chai": "^4.2.0", - "@types/mocha": ">=9.1.0", - "@types/node": ">=18.0.0", - "chai": "^4.2.0", - "ethers": "^6.4.0", - "hardhat": "^2.11.0", - "hardhat-gas-reporter": "^1.0.8", - "solidity-coverage": "^0.8.1", - "ts-node": ">=8.0.0", - "typechain": "^8.3.0", - "typescript": ">=4.5.0" - } - }, - "node_modules/@nomicfoundation/hardhat-verify": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/@nomicfoundation/hardhat-verify/-/hardhat-verify-2.0.14.tgz", - "integrity": "sha512-z3iVF1WYZHzcdMMUuureFpSAfcnlfJbJx3faOnGrOYg6PRTki1Ut9JAuRccnFzMHf1AmTEoSUpWcyvBCoxL5Rg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ethersproject/abi": "^5.1.2", - "@ethersproject/address": "^5.0.2", - "cbor": "^8.1.0", - "debug": "^4.1.1", - "lodash.clonedeep": "^4.5.0", - "picocolors": "^1.1.0", - "semver": "^6.3.0", - "table": "^6.8.0", - "undici": "^5.14.0" - }, - "peerDependencies": { - "hardhat": "^2.24.1" - } - }, - "node_modules/@nomicfoundation/ignition-core": { - "version": "0.15.12", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-core/-/ignition-core-0.15.12.tgz", - "integrity": "sha512-JJdyoyfM5RXaUqv4c2V/8xpuui4uqJbMCvVnEhgo6FMOK6bqj8wGP6hM4gNE5TLug6ZUCdjIB8kFpofl21RycQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@ethersproject/address": "5.6.1", - "@nomicfoundation/solidity-analyzer": "^0.1.1", - "cbor": "^9.0.0", - "debug": "^4.3.2", - "ethers": "^6.14.0", - "fs-extra": "^10.0.0", - "immer": "10.0.2", - "lodash": "4.17.21", - "ndjson": "2.0.0" - } - }, - "node_modules/@nomicfoundation/ignition-core/node_modules/@ethersproject/address": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.1.tgz", - "integrity": "sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "@ethersproject/bignumber": "^5.6.2", - "@ethersproject/bytes": "^5.6.1", - "@ethersproject/keccak256": "^5.6.1", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/rlp": "^5.6.1" - } - }, - "node_modules/@nomicfoundation/ignition-core/node_modules/cbor": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-9.0.2.tgz", - "integrity": "sha512-JPypkxsB10s9QOWwa6zwPzqE1Md3vqpPc+cai4sAecuCsRyAtAl/pMyhPlMbT/xtPnm2dznJZYRLui57qiRhaQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "nofilter": "^3.1.0" - }, - "engines": { - "node": ">=16" - } - }, - "node_modules/@nomicfoundation/ignition-ui": { - "version": "0.15.11", - "resolved": "https://registry.npmjs.org/@nomicfoundation/ignition-ui/-/ignition-ui-0.15.11.tgz", - "integrity": "sha512-VPOVl5xqCKhYCyPOQlposx+stjCwqXQ+BCs5lnw/f2YUfgII+G5Ye0JfHiJOfCJGmqyS03WertBslcj9zQg50A==", - "dev": true, - "peer": true - }, - "node_modules/@nomicfoundation/solidity-analyzer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer/-/solidity-analyzer-0.1.2.tgz", - "integrity": "sha512-q4n32/FNKIhQ3zQGGw5CvPF6GTvDCpYwIf7bEY/dZTZbgfDsHyjJwURxUJf3VQuuJj+fDIFl4+KkBVbw4Ef6jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 12" - }, - "optionalDependencies": { - "@nomicfoundation/solidity-analyzer-darwin-arm64": "0.1.2", - "@nomicfoundation/solidity-analyzer-darwin-x64": "0.1.2", - "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "0.1.2", - "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "0.1.2", - "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "0.1.2", - "@nomicfoundation/solidity-analyzer-linux-x64-musl": "0.1.2", - "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "0.1.2" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-darwin-arm64": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-arm64/-/solidity-analyzer-darwin-arm64-0.1.2.tgz", - "integrity": "sha512-JaqcWPDZENCvm++lFFGjrDd8mxtf+CtLd2MiXvMNTBD33dContTZ9TWETwNFwg7JTJT5Q9HEecH7FA+HTSsIUw==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-darwin-x64": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-darwin-x64/-/solidity-analyzer-darwin-x64-0.1.2.tgz", - "integrity": "sha512-fZNmVztrSXC03e9RONBT+CiksSeYcxI1wlzqyr0L7hsQlK1fzV+f04g2JtQ1c/Fe74ZwdV6aQBdd6Uwl1052sw==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-gnu": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-gnu/-/solidity-analyzer-linux-arm64-gnu-0.1.2.tgz", - "integrity": "sha512-3d54oc+9ZVBuB6nbp8wHylk4xh0N0Gc+bk+/uJae+rUgbOBwQSfuGIbAZt1wBXs5REkSmynEGcqx6DutoK0tPA==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-arm64-musl": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-arm64-musl/-/solidity-analyzer-linux-arm64-musl-0.1.2.tgz", - "integrity": "sha512-iDJfR2qf55vgsg7BtJa7iPiFAsYf2d0Tv/0B+vhtnI16+wfQeTbP7teookbGvAo0eJo7aLLm0xfS/GTkvHIucA==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-gnu": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-gnu/-/solidity-analyzer-linux-x64-gnu-0.1.2.tgz", - "integrity": "sha512-9dlHMAt5/2cpWyuJ9fQNOUXFB/vgSFORg1jpjX1Mh9hJ/MfZXlDdHQ+DpFCs32Zk5pxRBb07yGvSHk9/fezL+g==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-linux-x64-musl": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-linux-x64-musl/-/solidity-analyzer-linux-x64-musl-0.1.2.tgz", - "integrity": "sha512-GzzVeeJob3lfrSlDKQw2bRJ8rBf6mEYaWY+gW0JnTDHINA0s2gPR4km5RLIj1xeZZOYz4zRw+AEeYgLRqB2NXg==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@nomicfoundation/solidity-analyzer-win32-x64-msvc": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@nomicfoundation/solidity-analyzer-win32-x64-msvc/-/solidity-analyzer-win32-x64-msvc-0.1.2.tgz", - "integrity": "sha512-Fdjli4DCcFHb4Zgsz0uEJXZ2K7VEO+w5KVv7HmT7WO10iODdU9csC2az4jrhEsRtiR9Gfd74FlG0NYlw1BMdyA==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">= 12" - } - }, - "node_modules/@openzeppelin/contracts": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.4.0.tgz", - "integrity": "sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==", - "license": "MIT" - }, - "node_modules/@scure/base": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.4.tgz", - "integrity": "sha512-5Yy9czTO47mqz+/J8GM6GIId4umdCk1wc1q8rKERQulIoc8VP9pzDcghv10Tl2E7R96ZUx/PhND3ESYUQX8NuQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip32": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", - "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "~1.4.0", - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip32/node_modules/@noble/curves": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", - "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip32/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip32/node_modules/@scure/base": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", - "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip39": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", - "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.4.0", - "@scure/base": "~1.1.6" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip39/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip39/node_modules/@scure/base": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", - "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@sentry/core": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-5.30.0.tgz", - "integrity": "sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@sentry/hub": "5.30.0", - "@sentry/minimal": "5.30.0", - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/core/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/@sentry/hub": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-5.30.0.tgz", - "integrity": "sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/hub/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/@sentry/minimal": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-5.30.0.tgz", - "integrity": "sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@sentry/hub": "5.30.0", - "@sentry/types": "5.30.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/minimal/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/@sentry/node": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/node/-/node-5.30.0.tgz", - "integrity": "sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@sentry/core": "5.30.0", - "@sentry/hub": "5.30.0", - "@sentry/tracing": "5.30.0", - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "cookie": "^0.4.1", - "https-proxy-agent": "^5.0.0", - "lru_map": "^0.3.3", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/node/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/@sentry/tracing": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/tracing/-/tracing-5.30.0.tgz", - "integrity": "sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@sentry/hub": "5.30.0", - "@sentry/minimal": "5.30.0", - "@sentry/types": "5.30.0", - "@sentry/utils": "5.30.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/tracing/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/@sentry/types": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-5.30.0.tgz", - "integrity": "sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/utils": { - "version": "5.30.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-5.30.0.tgz", - "integrity": "sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@sentry/types": "5.30.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@sentry/utils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true, - "license": "0BSD" - }, - "node_modules/@solidity-parser/parser": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.14.5.tgz", - "integrity": "sha512-6dKnHZn7fg/iQATVEzqyUOyEidbn05q7YA2mQ9hC0MMXhhV3/JrsxmFSYZAcr7j1yUP700LLhTruvJ3MiQmjJg==", - "dev": true, - "license": "MIT", - "dependencies": { - "antlr4ts": "^0.5.0-alpha.4" - } - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", - "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true, - "license": "MIT" - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true, - "license": "MIT" - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@typechain/ethers-v6": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/@typechain/ethers-v6/-/ethers-v6-0.5.1.tgz", - "integrity": "sha512-F+GklO8jBWlsaVV+9oHaPh5NJdd6rAKN4tklGfInX1Q7h0xPgVLP39Jl3eCulPB5qexI71ZFHwbljx4ZXNfouA==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.17.15", - "ts-essentials": "^7.0.1" - }, - "peerDependencies": { - "ethers": "6.x", - "typechain": "^8.3.2", - "typescript": ">=4.7.0" - } - }, - "node_modules/@typechain/hardhat": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/@typechain/hardhat/-/hardhat-9.1.0.tgz", - "integrity": "sha512-mtaUlzLlkqTlfPwB3FORdejqBskSnh+Jl8AIJGjXNAQfRQ4ofHADPl1+oU7Z3pAJzmZbUXII8MhOLQltcHgKnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "fs-extra": "^9.1.0" - }, - "peerDependencies": { - "@typechain/ethers-v6": "^0.5.1", - "ethers": "^6.1.0", - "hardhat": "^2.9.9", - "typechain": "^8.3.2" - } - }, - "node_modules/@typechain/hardhat/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@types/bn.js": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.6.tgz", - "integrity": "sha512-Xh8vSwUeMKeYYrj3cX4lGQgFSF/N03r+tv4AiLl1SucqV+uTQpxRcnM8AkXKHwYP9ZPXOYXRr2KPXpVlIvqh9w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/chai": { - "version": "4.3.20", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", - "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/chai-as-promised": { - "version": "7.1.8", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", - "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/chai": "*" - } - }, - "node_modules/@types/concat-stream": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@types/concat-stream/-/concat-stream-1.6.1.tgz", - "integrity": "sha512-eHE4cQPoj6ngxBZMvVf6Hw7Mh4jMW4U9lpGmS5GBPB9RYxlFg+CHaVN7ErNY4W9XfLIEn20b4VDYaIrbq0q4uA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/form-data": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/@types/form-data/-/form-data-0.0.33.tgz", - "integrity": "sha512-8BSvG1kGm83cyJITQMZSulnl6QV8jqAGreJsc5tPu1Jq0vTSOiY/k24Wx82JRpWwZSqrala6sd5rWi6aNXvqcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "node_modules/@types/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/mocha": { - "version": "10.0.10", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.10.tgz", - "integrity": "sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "22.14.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz", - "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.21.0" - } - }, - "node_modules/@types/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-uRwJqmiXmh9++aSu1VNEn3iIxWOhd8AHXNSdlaLfdAAdSTY9jYVeGWnzejM3dvrkbqE3/hyQkQQ29IFATEGlew==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/prettier": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", - "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/qs": { - "version": "6.9.18", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", - "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/secp256k1": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.6.tgz", - "integrity": "sha512-hHxJU6PAEUn0TP4S/ZOzuTUvJWuZ6eIKeNKb5RBpODvSl6hp1Wrw4s7ATY50rklRCScUDpHzVA/DQdSjJ3UoYQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha512-LEyx4aLEC3x6T0UguF6YILf+ntvmOaWsVfENmIW0E9H09vKlLDGelMjjSm0jkDHALj8A8quZ/HapKNigzwge+Q==", - "dev": true, - "license": "ISC" - }, - "node_modules/acorn": { - "version": "8.14.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", - "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", - "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/adm-zip": { - "version": "0.4.16", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", - "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.3.0" - } - }, - "node_modules/aes-js": { - "version": "4.0.0-beta.5", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", - "integrity": "sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==", - "dev": true, - "license": "BSD-3-Clause OR MIT", - "optional": true, - "engines": { - "node": ">=0.4.2" - } - }, - "node_modules/ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.1.0" - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/antlr4ts": { - "version": "0.5.0-alpha.4", - "resolved": "https://registry.npmjs.org/antlr4ts/-/antlr4ts-0.5.0-alpha.4.tgz", - "integrity": "sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true, - "license": "MIT" - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/array-back": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", - "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "dev": true, - "license": "MIT" - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==", - "dev": true, - "license": "MIT" - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axios": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", - "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", - "dev": true, - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/base-x": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.11.tgz", - "integrity": "sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "^5.0.1" - } - }, - "node_modules/bech32": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/blakejs": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/blakejs/-/blakejs-1.2.1.tgz", - "integrity": "sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/boxen": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", - "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^6.2.0", - "chalk": "^4.1.0", - "cli-boxes": "^2.2.1", - "string-width": "^4.2.2", - "type-fest": "^0.20.2", - "widest-line": "^3.1.0", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/boxen/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", - "dev": true, - "license": "MIT" - }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true, - "license": "ISC" - }, - "node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "base-x": "^3.0.2" - } - }, - "node_modules/bs58check": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/bs58check/-/bs58check-2.1.2.tgz", - "integrity": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==", - "dev": true, - "license": "MIT", - "dependencies": { - "bs58": "^4.0.0", - "create-hash": "^1.1.0", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-bind-apply-helpers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/call-bound": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "get-intrinsic": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/cbor": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/cbor/-/cbor-8.1.0.tgz", - "integrity": "sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==", - "dev": true, - "license": "MIT", - "dependencies": { - "nofilter": "^3.1.0" - }, - "engines": { - "node": ">=12.19" - } - }, - "node_modules/chai": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", - "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", - "dev": true, - "license": "MIT", - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chai-as-promised": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", - "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", - "dev": true, - "license": "WTFPL", - "dependencies": { - "check-error": "^1.0.2" - }, - "peerDependencies": { - "chai": ">= 2.1.2 < 6" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": "*" - } - }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-func-name": "^2.0.2" - }, - "engines": { - "node": "*" - } - }, - "node_modules/chokidar": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", - "dev": true, - "license": "MIT", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/cipher-base": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.7.tgz", - "integrity": "sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.2" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-table3": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz", - "integrity": "sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "object-assign": "^4.1.0", - "string-width": "^2.1.1" - }, - "engines": { - "node": ">=6" - }, - "optionalDependencies": { - "colors": "^1.1.2" - } - }, - "node_modules/cli-table3/node_modules/ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/cli-table3/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/cli-table3/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cli-table3/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/command-exists": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", - "integrity": "sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==", - "dev": true, - "license": "MIT" - }, - "node_modules/command-line-args": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", - "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-back": "^3.1.0", - "find-replace": "^3.0.0", - "lodash.camelcase": "^4.3.0", - "typical": "^4.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/command-line-usage": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/command-line-usage/-/command-line-usage-6.1.3.tgz", - "integrity": "sha512-sH5ZSPr+7UStsloltmDh7Ce5fb8XPlHyoPzTpyyMuYCtervL65+ubVZ6Q61cFtFl62UyJlc8/JwERRbAFPUqgw==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-back": "^4.0.2", - "chalk": "^2.4.2", - "table-layout": "^1.0.2", - "typical": "^5.2.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/command-line-usage/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/command-line-usage/node_modules/array-back": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", - "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/command-line-usage/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/command-line-usage/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/command-line-usage/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/command-line-usage/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/command-line-usage/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/command-line-usage/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/command-line-usage/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 12" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true, - "license": "MIT" - }, - "node_modules/concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "engines": [ - "node >= 0.8" - ], - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/concat-stream/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/concat-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/concat-stream/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/crypt": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": "*" - } - }, - "node_modules/death": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/death/-/death-1.1.0.tgz", - "integrity": "sha512-vsV6S4KVHvTGxbEcij7hkWRv0It+sGGWVOM67dQde/o5Xjnr+KmLjxWJii2uEObIrt1CcM9w0Yaovx+iOlIL+w==", - "dev": true - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/deep-eql": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", - "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/diff": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.2.tgz", - "integrity": "sha512-vtcDfH3TOjP8UekytvnHH1o1P4FcUdt4eQ1Y+Abap1tk/OB2MWQvcwS2ClCd1zuIhc3JKOx6p3kod8Vfys3E+A==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/difflib": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/difflib/-/difflib-0.2.4.tgz", - "integrity": "sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==", - "dev": true, - "dependencies": { - "heap": ">= 0.2.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/elliptic": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", - "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", - "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==", - "dev": true, - "license": "MIT" - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/encode-utf8": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz", - "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==", - "dev": true, - "license": "MIT" - }, - "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha512-yhi5S+mNTOuRvyW4gWlg5W1byMaQGWWSYHXsuFZ7GBo7tpyOwi2EdzMP/QWxh9hwkD2m+wDVHJsxhRIj+v/b/A==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^2.7.1", - "estraverse": "^1.9.1", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=0.12.0" - }, - "optionalDependencies": { - "source-map": "~0.2.0" - } - }, - "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", - "dev": true, - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha512-25w1fMXQrGdoquWnScXZGckOv+Wes+JDnuN/+7ex3SauFRS72r2lFDec0EKPt2YD1wUJ/IrfEex+9yp4hfSOJA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eth-gas-reporter": { - "version": "0.2.27", - "resolved": "https://registry.npmjs.org/eth-gas-reporter/-/eth-gas-reporter-0.2.27.tgz", - "integrity": "sha512-femhvoAM7wL0GcI8ozTdxfuBtBFJ9qsyIAsmKVjlWAHUbdnnXHt+lKzz/kmldM5lA9jLuNHGwuIxorNpLbR1Zw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@solidity-parser/parser": "^0.14.0", - "axios": "^1.5.1", - "cli-table3": "^0.5.0", - "colors": "1.4.0", - "ethereum-cryptography": "^1.0.3", - "ethers": "^5.7.2", - "fs-readdir-recursive": "^1.1.0", - "lodash": "^4.17.14", - "markdown-table": "^1.1.3", - "mocha": "^10.2.0", - "req-cwd": "^2.0.0", - "sha1": "^1.1.1", - "sync-request": "^6.0.0" - }, - "peerDependencies": { - "@codechecks/client": "^0.1.0" - }, - "peerDependenciesMeta": { - "@codechecks/client": { - "optional": true - } - } - }, - "node_modules/eth-gas-reporter/node_modules/@noble/hashes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", - "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT" - }, - "node_modules/eth-gas-reporter/node_modules/@scure/base": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", - "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/eth-gas-reporter/node_modules/@scure/bip32": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", - "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.2.0", - "@noble/secp256k1": "~1.7.0", - "@scure/base": "~1.1.0" - } - }, - "node_modules/eth-gas-reporter/node_modules/@scure/bip39": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", - "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.2.0", - "@scure/base": "~1.1.0" - } - }, - "node_modules/eth-gas-reporter/node_modules/ethereum-cryptography": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", - "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.2.0", - "@noble/secp256k1": "1.7.1", - "@scure/bip32": "1.1.5", - "@scure/bip39": "1.1.1" - } - }, - "node_modules/eth-gas-reporter/node_modules/ethers": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.8.0.tgz", - "integrity": "sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abi": "5.8.0", - "@ethersproject/abstract-provider": "5.8.0", - "@ethersproject/abstract-signer": "5.8.0", - "@ethersproject/address": "5.8.0", - "@ethersproject/base64": "5.8.0", - "@ethersproject/basex": "5.8.0", - "@ethersproject/bignumber": "5.8.0", - "@ethersproject/bytes": "5.8.0", - "@ethersproject/constants": "5.8.0", - "@ethersproject/contracts": "5.8.0", - "@ethersproject/hash": "5.8.0", - "@ethersproject/hdnode": "5.8.0", - "@ethersproject/json-wallets": "5.8.0", - "@ethersproject/keccak256": "5.8.0", - "@ethersproject/logger": "5.8.0", - "@ethersproject/networks": "5.8.0", - "@ethersproject/pbkdf2": "5.8.0", - "@ethersproject/properties": "5.8.0", - "@ethersproject/providers": "5.8.0", - "@ethersproject/random": "5.8.0", - "@ethersproject/rlp": "5.8.0", - "@ethersproject/sha2": "5.8.0", - "@ethersproject/signing-key": "5.8.0", - "@ethersproject/solidity": "5.8.0", - "@ethersproject/strings": "5.8.0", - "@ethersproject/transactions": "5.8.0", - "@ethersproject/units": "5.8.0", - "@ethersproject/wallet": "5.8.0", - "@ethersproject/web": "5.8.0", - "@ethersproject/wordlists": "5.8.0" - } - }, - "node_modules/ethereum-bloom-filters": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ethereum-bloom-filters/-/ethereum-bloom-filters-1.2.0.tgz", - "integrity": "sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "^1.4.0" - } - }, - "node_modules/ethereum-bloom-filters/node_modules/@noble/hashes": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", - "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/ethereum-cryptography": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-0.1.3.tgz", - "integrity": "sha512-w8/4x1SGGzc+tO97TASLja6SLd3fRIK2tLVcV2Gx4IB21hE19atll5Cq9o3d0ZmAYC/8aw0ipieTSiekAea4SQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/pbkdf2": "^3.0.0", - "@types/secp256k1": "^4.0.1", - "blakejs": "^1.1.0", - "browserify-aes": "^1.2.0", - "bs58check": "^2.1.2", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "hash.js": "^1.1.7", - "keccak": "^3.0.0", - "pbkdf2": "^3.0.17", - "randombytes": "^2.1.0", - "safe-buffer": "^5.1.2", - "scrypt-js": "^3.0.0", - "secp256k1": "^4.0.1", - "setimmediate": "^1.0.5" - } - }, - "node_modules/ethereumjs-util": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz", - "integrity": "sha512-SDl5kKrQAudFBUe5OJM9Ac6WmMyYmXX/6sTmLZ3ffG2eY6ZIGBes3pEDxNN6V72WyOw4CPD5RomKdsa8DAAwLg==", - "dev": true, - "license": "MPL-2.0", - "dependencies": { - "@types/bn.js": "^5.1.0", - "bn.js": "^5.1.2", - "create-hash": "^1.1.2", - "ethereum-cryptography": "^0.1.3", - "rlp": "^2.2.4" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/ethers": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.15.0.tgz", - "integrity": "sha512-Kf/3ZW54L4UT0pZtsY/rf+EkBU7Qi5nnhonjUb8yTXcxH3cdcWrV2cRyk0Xk/4jK6OoHhxxZHriyhje20If2hQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/ethers-io/" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "peer": true, - "dependencies": { - "@adraffy/ens-normalize": "1.10.1", - "@noble/curves": "1.2.0", - "@noble/hashes": "1.3.2", - "@types/node": "22.7.5", - "aes-js": "4.0.0-beta.5", - "tslib": "2.7.0", - "ws": "8.17.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/ethers/node_modules/@types/node": { - "version": "22.7.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", - "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "undici-types": "~6.19.2" - } - }, - "node_modules/ethers/node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/ethjs-unit": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-unit/-/ethjs-unit-0.1.6.tgz", - "integrity": "sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "4.11.6", - "number-to-bn": "1.7.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "node_modules/ethjs-unit/node_modules/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", - "dev": true, - "license": "MIT" - }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "license": "MIT", - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", - "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-uri": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz", - "integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fastify" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fastify" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/fastq": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", - "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-replace": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", - "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-back": "^3.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true, - "license": "BSD-3-Clause", - "bin": { - "flat": "cli.js" - } - }, - "node_modules/fmix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/fmix/-/fmix-0.1.0.tgz", - "integrity": "sha512-Y6hyofImk9JdzU8k5INtTXX1cu8LDlePWDFU5sftm9H+zKCr5SGrVjdhkvsim646cw5zD0nADj8oHyXMZmCZ9w==", - "dev": true, - "license": "MIT", - "dependencies": { - "imul": "^1.0.0" - } - }, - "node_modules/follow-redirects": { - "version": "1.15.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", - "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "license": "MIT", - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.2.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/form-data": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", - "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", - "dev": true, - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "es-set-tostringtag": "^2.1.0", - "hasown": "^2.0.2", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fp-ts": { - "version": "1.19.3", - "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-1.19.3.tgz", - "integrity": "sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg==", - "dev": true, - "license": "MIT" - }, - "node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/fs-readdir-recursive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", - "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", - "dev": true, - "license": "MIT" - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true, - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind-apply-helpers": "^1.0.2", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.1.1", - "function-bind": "^1.1.2", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "math-intrinsics": "^1.1.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-port": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz", - "integrity": "sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/get-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "dev": true, - "license": "MIT", - "dependencies": { - "dunder-proto": "^1.0.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ghost-testrpc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/ghost-testrpc/-/ghost-testrpc-0.0.2.tgz", - "integrity": "sha512-i08dAEgJ2g8z5buJIrCTduwPIhih3DP+hOCTyyryikfV8T0bNvHnGXO67i0DD1H4GBDETTclPy9njZbfluQYrQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "chalk": "^2.4.2", - "node-emoji": "^1.10.0" - }, - "bin": { - "testrpc-sc": "index.js" - } - }, - "node_modules/ghost-testrpc/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ghost-testrpc/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/ghost-testrpc/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/ghost-testrpc/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/ghost-testrpc/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/ghost-testrpc/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/ghost-testrpc/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dev": true, - "license": "MIT", - "dependencies": { - "global-prefix": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/globby/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/globby/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/globby/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/gopd": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/handlebars": { - "version": "4.7.8", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", - "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.2", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, - "node_modules/handlebars/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hardhat": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.25.0.tgz", - "integrity": "sha512-yBiA74Yj3VnTRj7lhnn8GalvBdvsMOqTKRrRATSy/2v0VIR2hR0Jcnmfn4aQBLtGAnr3Q2c8CxL0g3LYegUp+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ethereumjs/util": "^9.1.0", - "@ethersproject/abi": "^5.1.2", - "@nomicfoundation/edr": "^0.11.1", - "@nomicfoundation/solidity-analyzer": "^0.1.0", - "@sentry/node": "^5.18.1", - "@types/bn.js": "^5.1.0", - "@types/lru-cache": "^5.1.0", - "adm-zip": "^0.4.16", - "aggregate-error": "^3.0.0", - "ansi-escapes": "^4.3.0", - "boxen": "^5.1.2", - "chokidar": "^4.0.0", - "ci-info": "^2.0.0", - "debug": "^4.1.1", - "enquirer": "^2.3.0", - "env-paths": "^2.2.0", - "ethereum-cryptography": "^1.0.3", - "find-up": "^5.0.0", - "fp-ts": "1.19.3", - "fs-extra": "^7.0.1", - "immutable": "^4.0.0-rc.12", - "io-ts": "1.10.4", - "json-stream-stringify": "^3.1.4", - "keccak": "^3.0.2", - "lodash": "^4.17.11", - "micro-eth-signer": "^0.14.0", - "mnemonist": "^0.38.0", - "mocha": "^10.0.0", - "p-map": "^4.0.0", - "picocolors": "^1.1.0", - "raw-body": "^2.4.1", - "resolve": "1.17.0", - "semver": "^6.3.0", - "solc": "0.8.26", - "source-map-support": "^0.5.13", - "stacktrace-parser": "^0.1.10", - "tinyglobby": "^0.2.6", - "tsort": "0.0.1", - "undici": "^5.14.0", - "uuid": "^8.3.2", - "ws": "^7.4.6" - }, - "bin": { - "hardhat": "internal/cli/bootstrap.js" - }, - "peerDependencies": { - "ts-node": "*", - "typescript": "*" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - }, - "typescript": { - "optional": true - } - } - }, - "node_modules/hardhat-deploy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/hardhat-deploy/-/hardhat-deploy-1.0.2.tgz", - "integrity": "sha512-FCeoGpYLQiGjROURihth6Qye+GWvRqalGbRsCTW33canhAS4g6mJEILbkWbWF8P2cPWgcpxe3cCJksk6n+oD7Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@ethersproject/abi": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/contracts": "^5.7.0", - "@ethersproject/providers": "^5.7.2", - "@ethersproject/solidity": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wallet": "^5.7.0", - "@types/qs": "^6.9.7", - "axios": "^0.21.1", - "chalk": "^4.1.2", - "chokidar": "^3.5.2", - "debug": "^4.3.2", - "enquirer": "^2.3.6", - "ethers": "^5.7.0", - "form-data": "^4.0.0", - "fs-extra": "^10.0.0", - "match-all": "^1.2.6", - "murmur-128": "^0.2.1", - "qs": "^6.9.4", - "zksync-ethers": "^5.0.0" - } - }, - "node_modules/hardhat-deploy/node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dev": true, - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.14.0" - } - }, - "node_modules/hardhat-deploy/node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/hardhat-deploy/node_modules/ethers": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.8.0.tgz", - "integrity": "sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abi": "5.8.0", - "@ethersproject/abstract-provider": "5.8.0", - "@ethersproject/abstract-signer": "5.8.0", - "@ethersproject/address": "5.8.0", - "@ethersproject/base64": "5.8.0", - "@ethersproject/basex": "5.8.0", - "@ethersproject/bignumber": "5.8.0", - "@ethersproject/bytes": "5.8.0", - "@ethersproject/constants": "5.8.0", - "@ethersproject/contracts": "5.8.0", - "@ethersproject/hash": "5.8.0", - "@ethersproject/hdnode": "5.8.0", - "@ethersproject/json-wallets": "5.8.0", - "@ethersproject/keccak256": "5.8.0", - "@ethersproject/logger": "5.8.0", - "@ethersproject/networks": "5.8.0", - "@ethersproject/pbkdf2": "5.8.0", - "@ethersproject/properties": "5.8.0", - "@ethersproject/providers": "5.8.0", - "@ethersproject/random": "5.8.0", - "@ethersproject/rlp": "5.8.0", - "@ethersproject/sha2": "5.8.0", - "@ethersproject/signing-key": "5.8.0", - "@ethersproject/solidity": "5.8.0", - "@ethersproject/strings": "5.8.0", - "@ethersproject/transactions": "5.8.0", - "@ethersproject/units": "5.8.0", - "@ethersproject/wallet": "5.8.0", - "@ethersproject/web": "5.8.0", - "@ethersproject/wordlists": "5.8.0" - } - }, - "node_modules/hardhat-deploy/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/hardhat-gas-reporter": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/hardhat-gas-reporter/-/hardhat-gas-reporter-1.0.10.tgz", - "integrity": "sha512-02N4+So/fZrzJ88ci54GqwVA3Zrf0C9duuTyGt0CFRIh/CdNwbnTgkXkRfojOMLBQ+6t+lBIkgbsOtqMvNwikA==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-uniq": "1.0.3", - "eth-gas-reporter": "^0.2.25", - "sha1": "^1.1.1" - }, - "peerDependencies": { - "hardhat": "^2.0.2" - } - }, - "node_modules/hardhat/node_modules/@noble/hashes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", - "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT" - }, - "node_modules/hardhat/node_modules/@scure/base": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", - "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/hardhat/node_modules/@scure/bip32": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", - "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.2.0", - "@noble/secp256k1": "~1.7.0", - "@scure/base": "~1.1.0" - } - }, - "node_modules/hardhat/node_modules/@scure/bip39": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", - "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.2.0", - "@scure/base": "~1.1.0" - } - }, - "node_modules/hardhat/node_modules/ethereum-cryptography": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", - "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.2.0", - "@noble/secp256k1": "1.7.1", - "@scure/bip32": "1.1.5", - "@scure/bip39": "1.1.1" - } - }, - "node_modules/hardhat/node_modules/fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/hardhat/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "license": "MIT", - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/hardhat/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/hardhat/node_modules/ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hash-base": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.2.tgz", - "integrity": "sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^2.3.8", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/hash-base/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", - "dev": true, - "license": "MIT", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/hash-base/node_modules/readable-stream/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/hash-base/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "node_modules/hash-base/node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true, - "license": "MIT" - }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "license": "MIT", - "bin": { - "he": "bin/he" - } - }, - "node_modules/heap": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", - "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==", - "dev": true, - "license": "MIT" - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "dev": true, - "license": "MIT", - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/http-basic": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/http-basic/-/http-basic-8.1.3.tgz", - "integrity": "sha512-/EcDMwJZh3mABI2NhGfHOGOeOZITqfkEO4p/xK+l3NpyncIHUQBoMvCSF/b5GqvKtySC2srL/GGG3+EtlqlmCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "caseless": "^0.12.0", - "concat-stream": "^1.6.2", - "http-response-object": "^3.0.1", - "parse-cache-control": "^1.0.1" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-response-object": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", - "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "^10.0.3" - } - }, - "node_modules/http-response-object/node_modules/@types/node": { - "version": "10.17.60", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", - "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", - "dev": true, - "license": "MIT" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/immer": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/immer/-/immer-10.0.2.tgz", - "integrity": "sha512-Rx3CqeqQ19sxUtYV9CU911Vhy8/721wRFnJv3REVGWUmoAcIwzifTsdmJte/MV+0/XpM35LZdQMBGkRIoLPwQA==", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" - } - }, - "node_modules/immutable": { - "version": "4.3.8", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.8.tgz", - "integrity": "sha512-d/Ld9aLbKpNwyl0KiM2CT1WYvkitQ1TSvmRtkcV8FKStiDoA7Slzgjmb/1G2yhKM1p0XeNOieaTbFZmU1d3Xuw==", - "dev": true, - "license": "MIT" - }, - "node_modules/imul": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/imul/-/imul-1.0.1.tgz", - "integrity": "sha512-WFAgfwPLAjU66EKt6vRdTlKj4nAgIDQzh29JonLa4Bqtl6D8JrIMvWjCnx7xEjVNmP3U0fM5o8ZObk7d0f62bA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true, - "license": "ISC" - }, - "node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/io-ts": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", - "integrity": "sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fp-ts": "^1.0.0" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-hex-prefixed": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", - "integrity": "sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.16" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stream-stringify": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/json-stream-stringify/-/json-stream-stringify-3.1.6.tgz", - "integrity": "sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=7.10.1" - } - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true, - "license": "ISC", - "peer": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/jsonschema": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/jsonschema/-/jsonschema-1.5.0.tgz", - "integrity": "sha512-K+A9hhqbn0f3pJX17Q/7H6yQfD/5OXgdrR5UE12gMXCiN9D5Xq2o5mddV2QEcX/bjla99ASsAAQUyMCCRWAEhw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/keccak": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.4.tgz", - "integrity": "sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.camelcase": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.isequal": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", - "deprecated": "This package is deprecated. Use require('node:util').isDeepStrictEqual instead.", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", - "dev": true, - "license": "MIT" - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-func-name": "^2.0.1" - } - }, - "node_modules/lru_map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", - "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true, - "license": "ISC" - }, - "node_modules/markdown-table": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-1.1.3.tgz", - "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/match-all": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/match-all/-/match-all-1.2.7.tgz", - "integrity": "sha512-qSpsBKarh55r9KyXzFC3xBLRf2GlGasba2em9kbpRsSlGvdTAqjx3QD0r3FKSARiW+OE4iMHYsolM3aX9n5djw==", - "dev": true, - "license": "MIT" - }, - "node_modules/math-intrinsics": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "license": "MIT", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micro-eth-signer": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/micro-eth-signer/-/micro-eth-signer-0.14.0.tgz", - "integrity": "sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "~1.8.1", - "@noble/hashes": "~1.7.1", - "micro-packed": "~0.7.2" - } - }, - "node_modules/micro-eth-signer/node_modules/@noble/curves": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", - "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.7.2" - }, - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/micro-eth-signer/node_modules/@noble/hashes": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", - "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/micro-ftch": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz", - "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==", - "dev": true, - "license": "MIT" - }, - "node_modules/micro-packed": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/micro-packed/-/micro-packed-0.7.2.tgz", - "integrity": "sha512-HJ/u8+tMzgrJVAl6P/4l8KGjJSA3SCZaRb1m4wpbovNScCSmVOGUYbkkcoPPcknCHWPpRAdjy+yqXqyQWf+k8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@scure/base": "~1.2.2" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true, - "license": "ISC" - }, - "node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", - "dev": true, - "license": "MIT" - }, - "node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "license": "MIT", - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/mnemonist": { - "version": "0.38.5", - "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", - "integrity": "sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==", - "dev": true, - "license": "MIT", - "dependencies": { - "obliterator": "^2.0.0" - } - }, - "node_modules/mocha": { - "version": "10.8.2", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", - "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-colors": "^4.1.3", - "browser-stdout": "^1.3.1", - "chokidar": "^3.5.3", - "debug": "^4.3.5", - "diff": "^5.2.0", - "escape-string-regexp": "^4.0.0", - "find-up": "^5.0.0", - "glob": "^8.1.0", - "he": "^1.2.0", - "js-yaml": "^4.1.0", - "log-symbols": "^4.1.0", - "minimatch": "^5.1.6", - "ms": "^2.1.3", - "serialize-javascript": "^6.0.2", - "strip-json-comments": "^3.1.1", - "supports-color": "^8.1.1", - "workerpool": "^6.5.1", - "yargs": "^16.2.0", - "yargs-parser": "^20.2.9", - "yargs-unparser": "^2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" - }, - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/mocha/node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/mocha/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" - }, - "node_modules/murmur-128": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/murmur-128/-/murmur-128-0.2.1.tgz", - "integrity": "sha512-WseEgiRkI6aMFBbj8Cg9yBj/y+OdipwVC7zUo3W2W1JAJITwouUOtpqsmGSg67EQmwwSyod7hsVsWY5LsrfQVg==", - "dev": true, - "license": "MIT", - "dependencies": { - "encode-utf8": "^1.0.2", - "fmix": "^0.1.0", - "imul": "^1.0.0" - } - }, - "node_modules/ndjson": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ndjson/-/ndjson-2.0.0.tgz", - "integrity": "sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "json-stringify-safe": "^5.0.1", - "minimist": "^1.2.5", - "readable-stream": "^3.6.0", - "split2": "^3.0.0", - "through2": "^4.0.0" - }, - "bin": { - "ndjson": "cli.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true, - "license": "MIT" - }, - "node_modules/node-addon-api": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", - "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==", - "dev": true, - "license": "MIT" - }, - "node_modules/node-emoji": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", - "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.17.21" - } - }, - "node_modules/node-gyp-build": { - "version": "4.8.4", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", - "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", - "dev": true, - "license": "MIT", - "bin": { - "node-gyp-build": "bin.js", - "node-gyp-build-optional": "optional.js", - "node-gyp-build-test": "build-test.js" - } - }, - "node_modules/nofilter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/nofilter/-/nofilter-3.1.0.tgz", - "integrity": "sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.19" - } - }, - "node_modules/nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", - "dev": true, - "license": "ISC", - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/number-to-bn": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", - "integrity": "sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "4.11.6", - "strip-hex-prefix": "1.0.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "node_modules/number-to-bn/node_modules/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==", - "dev": true, - "license": "MIT" - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/obliterator": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.5.tgz", - "integrity": "sha512-42CPE9AhahZRsMNslczq0ctAEtqk8Eka26QofnqC346BZdHDySk3LWka23LI7ULIw11NmltpiLagIq8gBozxTw==", - "dev": true, - "license": "MIT" - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/ordinal": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ordinal/-/ordinal-1.0.3.tgz", - "integrity": "sha512-cMddMgb2QElm8G7vdaa02jhUNbTSrhsgAGUz1OokD83uJTwSUn+nKoNoKVVaRa08yF6sgfO7Maou1+bgLd9rdQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-cache-control": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", - "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==", - "dev": true - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true, - "license": "MIT" - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/pbkdf2": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.5.tgz", - "integrity": "sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "ripemd160": "^2.0.3", - "safe-buffer": "^5.2.1", - "sha.js": "^2.4.12", - "to-buffer": "^1.2.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true, - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/possible-typed-array-names": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", - "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", - "dev": true, - "license": "MIT", - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "license": "MIT" - }, - "node_modules/promise": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/promise/-/promise-8.3.0.tgz", - "integrity": "sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==", - "dev": true, - "license": "MIT", - "dependencies": { - "asap": "~2.0.6" - } - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true, - "license": "MIT" - }, - "node_modules/qs": { - "version": "6.14.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.2.tgz", - "integrity": "sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.1.0" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "dev": true, - "license": "MIT", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readdirp": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", - "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14.18.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", - "dev": true, - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/recursive-readdir": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", - "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", - "dev": true, - "license": "MIT", - "dependencies": { - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/recursive-readdir/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/recursive-readdir/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/reduce-flatten": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/reduce-flatten/-/reduce-flatten-2.0.0.tgz", - "integrity": "sha512-EJ4UNY/U1t2P/2k6oqotuX2Cc3T6nxJwsM0N0asT7dhrtH1ltUxDn4NalSYmPE2rCkVpcf/X6R0wDwcFpzhd4w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/req-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/req-cwd/-/req-cwd-2.0.0.tgz", - "integrity": "sha512-ueoIoLo1OfB6b05COxAA9UpeoscNpYyM+BqYlA7H6LVF4hKGPXQQSSaD2YmvDVJMkk4UDpAHIeU1zG53IqjvlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "req-from": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/req-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/req-from/-/req-from-2.0.0.tgz", - "integrity": "sha512-LzTfEVDVQHBRfjOUMgNBA+V6DWsSnoeKzf42J7l0xa/B4jyPOuuF5MlNSmomLNGemWTnV2TIdjSSLnEn95fOQA==", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-from": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-parse": "^1.0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/reusify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", - "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/ripemd160": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.3.tgz", - "integrity": "sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==", - "dev": true, - "license": "MIT", - "dependencies": { - "hash-base": "^3.1.2", - "inherits": "^2.0.4" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/rlp": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", - "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", - "dev": true, - "license": "MPL-2.0", - "dependencies": { - "bn.js": "^5.2.0" - }, - "bin": { - "rlp": "bin/rlp" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "license": "MIT" - }, - "node_modules/sc-istanbul": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/sc-istanbul/-/sc-istanbul-0.4.6.tgz", - "integrity": "sha512-qJFF/8tW/zJsbyfh/iT/ZM5QNHE3CXxtLJbZsL+CzdJLBsPD7SedJZoUA4d8iAcN2IoMp/Dx80shOOd2x96X/g==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "abbrev": "1.0.x", - "async": "1.x", - "escodegen": "1.8.x", - "esprima": "2.7.x", - "glob": "^5.0.15", - "handlebars": "^4.0.1", - "js-yaml": "3.x", - "mkdirp": "0.5.x", - "nopt": "3.x", - "once": "1.x", - "resolve": "1.1.x", - "supports-color": "^3.1.0", - "which": "^1.1.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "istanbul": "lib/cli.js" - } - }, - "node_modules/sc-istanbul/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/sc-istanbul/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/sc-istanbul/node_modules/glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, - "node_modules/sc-istanbul/node_modules/has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sc-istanbul/node_modules/js-yaml": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", - "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/sc-istanbul/node_modules/js-yaml/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/sc-istanbul/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/sc-istanbul/node_modules/resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg==", - "dev": true, - "license": "MIT" - }, - "node_modules/sc-istanbul/node_modules/supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^1.0.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/scrypt-js": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==", - "dev": true, - "license": "MIT" - }, - "node_modules/secp256k1": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", - "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "dependencies": { - "elliptic": "^6.5.7", - "node-addon-api": "^5.0.0", - "node-gyp-build": "^4.2.0" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/secp256k1/node_modules/node-addon-api": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", - "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==", - "dev": true, - "license": "MIT" - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true, - "license": "MIT" - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true, - "license": "ISC" - }, - "node_modules/sha.js": { - "version": "2.4.12", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.12.tgz", - "integrity": "sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==", - "dev": true, - "license": "(MIT AND BSD-3-Clause)", - "dependencies": { - "inherits": "^2.0.4", - "safe-buffer": "^5.2.1", - "to-buffer": "^1.2.0" - }, - "bin": { - "sha.js": "bin.js" - }, - "engines": { - "node": ">= 0.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sha1": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/sha1/-/sha1-1.1.1.tgz", - "integrity": "sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "charenc": ">= 0.0.1", - "crypt": ">= 0.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/shelljs": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", - "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/shelljs/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/shelljs/node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/shelljs/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", - "side-channel-map": "^1.0.1", - "side-channel-weakmap": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "dev": true, - "license": "MIT", - "dependencies": { - "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/side-channel-weakmap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.5", - "object-inspect": "^1.13.3", - "side-channel-map": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/solc": { - "version": "0.8.26", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.8.26.tgz", - "integrity": "sha512-yiPQNVf5rBFHwN6SIf3TUUvVAFKcQqmSUFeq+fb6pNRCo0ZCgpYOZDi3BVoezCPIAcKrVYd/qXlBLUP9wVrZ9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "command-exists": "^1.2.8", - "commander": "^8.1.0", - "follow-redirects": "^1.12.1", - "js-sha3": "0.8.0", - "memorystream": "^0.3.1", - "semver": "^5.5.0", - "tmp": "0.0.33" - }, - "bin": { - "solcjs": "solc.js" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/solc/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/solidity-coverage": { - "version": "0.8.16", - "resolved": "https://registry.npmjs.org/solidity-coverage/-/solidity-coverage-0.8.16.tgz", - "integrity": "sha512-qKqgm8TPpcnCK0HCDLJrjbOA2tQNEJY4dHX/LSSQ9iwYFS973MwjtgYn2Iv3vfCEQJTj5xtm4cuUMzlJsJSMbg==", - "dev": true, - "license": "ISC", - "dependencies": { - "@ethersproject/abi": "^5.0.9", - "@solidity-parser/parser": "^0.20.1", - "chalk": "^2.4.2", - "death": "^1.1.0", - "difflib": "^0.2.4", - "fs-extra": "^8.1.0", - "ghost-testrpc": "^0.0.2", - "global-modules": "^2.0.0", - "globby": "^10.0.1", - "jsonschema": "^1.2.4", - "lodash": "^4.17.21", - "mocha": "^10.2.0", - "node-emoji": "^1.10.0", - "pify": "^4.0.1", - "recursive-readdir": "^2.2.2", - "sc-istanbul": "^0.4.5", - "semver": "^7.3.4", - "shelljs": "^0.8.3", - "web3-utils": "^1.3.6" - }, - "bin": { - "solidity-coverage": "plugins/bin.js" - }, - "peerDependencies": { - "hardhat": "^2.11.0" - } - }, - "node_modules/solidity-coverage/node_modules/@solidity-parser/parser": { - "version": "0.20.1", - "resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.20.1.tgz", - "integrity": "sha512-58I2sRpzaQUN+jJmWbHfbWf9AKfzqCI8JAdFB0vbyY+u8tBRcuTt9LxzasvR0LGQpcRv97eyV7l61FQ3Ib7zVw==", - "dev": true, - "license": "MIT" - }, - "node_modules/solidity-coverage/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/solidity-coverage/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/solidity-coverage/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/solidity-coverage/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true, - "license": "MIT" - }, - "node_modules/solidity-coverage/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/solidity-coverage/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/solidity-coverage/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/solidity-coverage/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "license": "MIT", - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/solidity-coverage/node_modules/semver": { - "version": "7.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", - "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/solidity-coverage/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/solidity-coverage/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/source-map": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha512-CBdZ2oa/BHhS4xj5DlhjWNHcan57/5YuvfdLf17iVmIpd9KRm+DFLmC6nBNj+6Ua7Kt3TmOjDpQT1aTYOQtoUA==", - "dev": true, - "optional": true, - "dependencies": { - "amdefine": ">=0.0.4" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/split2": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", - "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "readable-stream": "^3.0.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/stacktrace-parser": { - "version": "0.1.11", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.11.tgz", - "integrity": "sha512-WjlahMgHmCJpqzU8bIBy4qtsZdU9lRlcZE3Lvyej6t4tuOuv1vk57OW3MBrj6hXBFx/nNoC9MPMTcr5YA7NQbg==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.7.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/stacktrace-parser/node_modules/type-fest": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.7.1.tgz", - "integrity": "sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/string-format": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string-format/-/string-format-2.0.0.tgz", - "integrity": "sha512-bbEs3scLeYNXLecRRuk6uJxdXUSj6le/8rNPHChIJTn2V79aXVTR1EH2OH5zLKKoz0V02fOUKZZcw01pLUShZA==", - "dev": true, - "license": "WTFPL OR MIT" - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-hex-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", - "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-hex-prefixed": "1.0.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/sync-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/sync-request/-/sync-request-6.1.0.tgz", - "integrity": "sha512-8fjNkrNlNCrVc/av+Jn+xxqfCjYaBoHqCsDz6mt030UMxJGr+GSfCV1dQt2gRtlL63+VPidwDVLr7V2OcTSdRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "http-response-object": "^3.0.1", - "sync-rpc": "^1.2.1", - "then-request": "^6.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/sync-rpc": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/sync-rpc/-/sync-rpc-1.3.6.tgz", - "integrity": "sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-port": "^3.1.0" - } - }, - "node_modules/table": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.9.0.tgz", - "integrity": "sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/table-layout": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/table-layout/-/table-layout-1.0.2.tgz", - "integrity": "sha512-qd/R7n5rQTRFi+Zf2sk5XVVd9UQl6ZkduPFC3S7WEGJAmetDTjY3qPN50eSKzwuzEyQKy5TN2TiZdkIjos2L6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-back": "^4.0.1", - "deep-extend": "~0.6.0", - "typical": "^5.2.0", - "wordwrapjs": "^4.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/table-layout/node_modules/array-back": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/array-back/-/array-back-4.0.2.tgz", - "integrity": "sha512-NbdMezxqf94cnNfWLL7V/im0Ub+Anbb0IoZhvzie8+4HJ4nMQuzHuy49FkGYCJK2yAloZ3meiB6AVMClbrI1vg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/table-layout/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/then-request": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/then-request/-/then-request-6.0.2.tgz", - "integrity": "sha512-3ZBiG7JvP3wbDzA9iNY5zJQcHL4jn/0BWtXIkagfz7QgOL/LqjCEOBQuJNZfu0XYnv5JhKh+cDxCPM4ILrqruA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/concat-stream": "^1.6.0", - "@types/form-data": "0.0.33", - "@types/node": "^8.0.0", - "@types/qs": "^6.2.31", - "caseless": "~0.12.0", - "concat-stream": "^1.6.0", - "form-data": "^2.2.0", - "http-basic": "^8.1.1", - "http-response-object": "^3.0.1", - "promise": "^8.0.0", - "qs": "^6.4.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/then-request/node_modules/@types/node": { - "version": "8.10.66", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz", - "integrity": "sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==", - "dev": true, - "license": "MIT" - }, - "node_modules/then-request/node_modules/form-data": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.5.tgz", - "integrity": "sha512-jqdObeR2rxZZbPSGL+3VckHMYtu+f9//KXBsVny6JSX/pa38Fy+bGjuG8eW/H6USNQWhLi8Num++cU2yOCNz4A==", - "dev": true, - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "es-set-tostringtag": "^2.1.0", - "hasown": "^2.0.2", - "mime-types": "^2.1.35", - "safe-buffer": "^5.2.1" - }, - "engines": { - "node": ">= 0.12" - } - }, - "node_modules/through2": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "readable-stream": "3" - } - }, - "node_modules/tinyglobby": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.13.tgz", - "integrity": "sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw==", - "dev": true, - "license": "MIT", - "dependencies": { - "fdir": "^6.4.4", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/SuperchupuDev" - } - }, - "node_modules/tinyglobby/node_modules/fdir": { - "version": "6.4.4", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.4.tgz", - "integrity": "sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, - "node_modules/tinyglobby/node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-buffer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.2.2.tgz", - "integrity": "sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==", - "dev": true, - "license": "MIT", - "dependencies": { - "isarray": "^2.0.5", - "safe-buffer": "^5.2.1", - "typed-array-buffer": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/to-buffer/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true, - "license": "MIT" - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/ts-command-line-args": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/ts-command-line-args/-/ts-command-line-args-2.5.1.tgz", - "integrity": "sha512-H69ZwTw3rFHb5WYpQya40YAX2/w7Ut75uUECbgBIsLmM+BNuYnxsltfyyLMxy6sEeKxgijLTnQtLd0nKd6+IYw==", - "dev": true, - "license": "ISC", - "dependencies": { - "chalk": "^4.1.0", - "command-line-args": "^5.1.1", - "command-line-usage": "^6.1.0", - "string-format": "^2.0.0" - }, - "bin": { - "write-markdown": "dist/write-markdown.js" - } - }, - "node_modules/ts-essentials": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-7.0.3.tgz", - "integrity": "sha512-8+gr5+lqO3G84KdiTSMRLtuyJ+nTBVRKuCrK4lidMPdVeEp0uqC875uE5NMcaA7YYMN7XsNiFQuMvasF8HT/xQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "typescript": ">=3.7.0" - } - }, - "node_modules/ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/ts-node/node_modules/diff": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz", - "integrity": "sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/tslib": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", - "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", - "dev": true, - "license": "0BSD", - "peer": true - }, - "node_modules/tsort": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tsort/-/tsort-0.0.1.tgz", - "integrity": "sha512-Tyrf5mxF8Ofs1tNoxA13lFeZ2Zrbd6cKbuH3V+MQ5sb6DtBj5FjrXVsRWT8YvNAQTqNoz66dz1WsbigI22aEnw==", - "dev": true, - "license": "MIT" - }, - "node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", - "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typechain": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/typechain/-/typechain-8.3.2.tgz", - "integrity": "sha512-x/sQYr5w9K7yv3es7jo4KTX05CLxOf7TRWwoHlrjRh8H82G64g+k7VuWPJlgMo6qrjfCulOdfBjiaDtmhFYD/Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/prettier": "^2.1.1", - "debug": "^4.3.1", - "fs-extra": "^7.0.0", - "glob": "7.1.7", - "js-sha3": "^0.8.0", - "lodash": "^4.17.15", - "mkdirp": "^1.0.4", - "prettier": "^2.3.1", - "ts-command-line-args": "^2.2.0", - "ts-essentials": "^7.0.1" - }, - "bin": { - "typechain": "dist/cli/cli.js" - }, - "peerDependencies": { - "typescript": ">=4.3.0" - } - }, - "node_modules/typechain/node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/typechain/node_modules/fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/typechain/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/typechain/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "license": "MIT", - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/typechain/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/typechain/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/typechain/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/typescript": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", - "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/typical": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", - "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/uglify-js": { - "version": "3.19.3", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", - "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==", - "dev": true, - "license": "BSD-2-Clause", - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/undici": { - "version": "5.29.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz", - "integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@fastify/busboy": "^2.0.0" - }, - "engines": { - "node": ">=14.0" - } - }, - "node_modules/undici-types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", - "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true, - "license": "MIT" - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true, - "license": "MIT", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true, - "license": "MIT" - }, - "node_modules/web3-utils": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.10.4.tgz", - "integrity": "sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A==", - "dev": true, - "license": "LGPL-3.0", - "dependencies": { - "@ethereumjs/util": "^8.1.0", - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereum-cryptography": "^2.1.2", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/web3-utils/node_modules/@ethereumjs/rlp": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz", - "integrity": "sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==", - "dev": true, - "license": "MPL-2.0", - "bin": { - "rlp": "bin/rlp" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/web3-utils/node_modules/@ethereumjs/util": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-8.1.0.tgz", - "integrity": "sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==", - "dev": true, - "license": "MPL-2.0", - "dependencies": { - "@ethereumjs/rlp": "^4.0.1", - "ethereum-cryptography": "^2.0.0", - "micro-ftch": "^0.3.1" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/web3-utils/node_modules/@noble/curves": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", - "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.4.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/web3-utils/node_modules/@noble/hashes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", - "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/web3-utils/node_modules/ethereum-cryptography": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", - "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@noble/curves": "1.4.2", - "@noble/hashes": "1.4.0", - "@scure/bip32": "1.4.0", - "@scure/bip39": "1.3.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.4", - "for-each": "^0.3.5", - "get-proto": "^1.0.1", - "gopd": "^1.2.0", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "license": "MIT", - "dependencies": { - "string-width": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/wordwrapjs": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/wordwrapjs/-/wordwrapjs-4.0.1.tgz", - "integrity": "sha512-kKlNACbvHrkpIw6oPeYDSmdCTu2hdMHoyXLTcUKala++lx5Y+wjJ/e474Jqv5abnVmwxw08DiTuHmw69lJGksA==", - "dev": true, - "license": "MIT", - "dependencies": { - "reduce-flatten": "^2.0.0", - "typical": "^5.2.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/wordwrapjs/node_modules/typical": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/typical/-/typical-5.2.0.tgz", - "integrity": "sha512-dvdQgNDNJo+8B2uBQoqdb11eUCE1JQXhvjC/CZtgvZseVd5TYMXnq0+vuUemXbd/Se29cTaUuPX3YIc2xgbvIg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/workerpool": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", - "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/ws": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", - "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "license": "MIT", - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "license": "MIT", - "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zksync-ethers": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/zksync-ethers/-/zksync-ethers-5.10.0.tgz", - "integrity": "sha512-OAjTGAHF9wbdkRGkj7XZuF/a1Sk/FVbwH4pmLjAKlR7mJ7sQtQhBhrPU2dCc67xLaNvEESPfwil19ES5wooYFg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ethers": "~5.7.0" - }, - "engines": { - "node": ">=16.0.0" - }, - "peerDependencies": { - "ethers": "~5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/abi": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", - "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/abstract-provider": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", - "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/abstract-signer": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz", - "integrity": "sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/address": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", - "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/rlp": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/base64": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz", - "integrity": "sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/basex": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", - "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/properties": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/bignumber": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", - "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "bn.js": "^5.2.1" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/bytes": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", - "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/logger": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/constants": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", - "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/contracts": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", - "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abi": "^5.7.0", - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/hash": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", - "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/hdnode": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", - "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/json-wallets": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", - "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "aes-js": "3.0.0", - "scrypt-js": "3.0.1" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/keccak256": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", - "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "js-sha3": "0.8.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/logger": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", - "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT" - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/networks": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", - "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/logger": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/pbkdf2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", - "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/sha2": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/properties": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", - "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/logger": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/providers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", - "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0", - "bech32": "1.1.4", - "ws": "7.4.6" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/random": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", - "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/rlp": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", - "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/sha2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", - "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "hash.js": "1.1.7" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/signing-key": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", - "integrity": "sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "bn.js": "^5.2.1", - "elliptic": "6.5.4", - "hash.js": "1.1.7" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/solidity": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", - "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/strings": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", - "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/transactions": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", - "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/units": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", - "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/wallet": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", - "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/json-wallets": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/web": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", - "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/@ethersproject/wordlists": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", - "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/aes-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.0.0.tgz", - "integrity": "sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==", - "dev": true, - "license": "MIT" - }, - "node_modules/zksync-ethers/node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/zksync-ethers/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.1.tgz", - "integrity": "sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==", - "dev": true, - "license": "MIT" - }, - "node_modules/zksync-ethers/node_modules/ethers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.7.2.tgz", - "integrity": "sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "license": "MIT", - "dependencies": { - "@ethersproject/abi": "5.7.0", - "@ethersproject/abstract-provider": "5.7.0", - "@ethersproject/abstract-signer": "5.7.0", - "@ethersproject/address": "5.7.0", - "@ethersproject/base64": "5.7.0", - "@ethersproject/basex": "5.7.0", - "@ethersproject/bignumber": "5.7.0", - "@ethersproject/bytes": "5.7.0", - "@ethersproject/constants": "5.7.0", - "@ethersproject/contracts": "5.7.0", - "@ethersproject/hash": "5.7.0", - "@ethersproject/hdnode": "5.7.0", - "@ethersproject/json-wallets": "5.7.0", - "@ethersproject/keccak256": "5.7.0", - "@ethersproject/logger": "5.7.0", - "@ethersproject/networks": "5.7.1", - "@ethersproject/pbkdf2": "5.7.0", - "@ethersproject/properties": "5.7.0", - "@ethersproject/providers": "5.7.2", - "@ethersproject/random": "5.7.0", - "@ethersproject/rlp": "5.7.0", - "@ethersproject/sha2": "5.7.0", - "@ethersproject/signing-key": "5.7.0", - "@ethersproject/solidity": "5.7.0", - "@ethersproject/strings": "5.7.0", - "@ethersproject/transactions": "5.7.0", - "@ethersproject/units": "5.7.0", - "@ethersproject/wallet": "5.7.0", - "@ethersproject/web": "5.7.1", - "@ethersproject/wordlists": "5.7.0" - } - }, - "node_modules/zksync-ethers/node_modules/ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - } - } -} diff --git a/tests/evm-tools-compatibility/viem/package-lock.json b/tests/evm-tools-compatibility/viem/package-lock.json deleted file mode 100644 index ee40e1c68..000000000 --- a/tests/evm-tools-compatibility/viem/package-lock.json +++ /dev/null @@ -1,1536 +0,0 @@ -{ - "name": "viem", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "viem", - "version": "1.0.0", - "license": "ISC", - "dependencies": { - "dotenv": "^16.5.0", - "viem": "^2.27.3" - }, - "devDependencies": { - "chai": "^4.5.0", - "mocha": "^11.1.0" - } - }, - "node_modules/@adraffy/ens-normalize": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz", - "integrity": "sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg==", - "license": "MIT" - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true, - "license": "MIT" - }, - "node_modules/@isaacs/cliui/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/@noble/curves": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz", - "integrity": "sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==", - "license": "MIT", - "dependencies": { - "@noble/hashes": "1.7.2" - }, - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@noble/hashes": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz", - "integrity": "sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==", - "license": "MIT", - "engines": { - "node": "^14.21.3 || >=16" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@scure/base": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.2.4.tgz", - "integrity": "sha512-5Yy9czTO47mqz+/J8GM6GIId4umdCk1wc1q8rKERQulIoc8VP9pzDcghv10Tl2E7R96ZUx/PhND3ESYUQX8NuQ==", - "license": "MIT", - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip32": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.6.2.tgz", - "integrity": "sha512-t96EPDMbtGgtb7onKKqxRLfE5g05k7uHnHRM2xdE6BP/ZmxaLtPek4J4KfVn/90IQNrU1IOAqMgiDtUdtbe3nw==", - "license": "MIT", - "dependencies": { - "@noble/curves": "~1.8.1", - "@noble/hashes": "~1.7.1", - "@scure/base": "~1.2.2" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/@scure/bip39": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.5.4.tgz", - "integrity": "sha512-TFM4ni0vKvCfBpohoh+/lY05i9gRbSwXWngAsF4CABQxoaOHijxuaZ2R6cStDQ5CHtHO9aGJTr4ksVJASRRyMA==", - "license": "MIT", - "dependencies": { - "@noble/hashes": "~1.7.1", - "@scure/base": "~1.2.4" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "node_modules/abitype": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/abitype/-/abitype-1.0.8.tgz", - "integrity": "sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg==", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/wevm" - }, - "peerDependencies": { - "typescript": ">=5.0.4", - "zod": "^3 >=3.22.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - }, - "zod": { - "optional": true - } - } - }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true, - "license": "MIT" - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true, - "license": "ISC" - }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/chai": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", - "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", - "dev": true, - "license": "MIT", - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-func-name": "^2.0.2" - }, - "engines": { - "node": "*" - } - }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cross-spawn/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/debug": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.3" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/deep-eql": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", - "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/diff": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", - "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/dotenv": { - "version": "16.5.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.5.0.tgz", - "integrity": "sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" - } - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true, - "license": "MIT" - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, - "license": "MIT" - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eventemitter3": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", - "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", - "license": "MIT" - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true, - "license": "BSD-3-Clause", - "bin": { - "flat": "cli.js" - } - }, - "node_modules/foreground-child": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", - "dev": true, - "license": "ISC", - "dependencies": { - "cross-spawn": "^7.0.6", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/glob": { - "version": "10.5.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/glob/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "license": "MIT", - "bin": { - "he": "bin/he" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/isows": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/isows/-/isows-1.0.6.tgz", - "integrity": "sha512-lPHCayd40oW98/I0uvgaHKWCSvkzY27LjWLbtzOm64yQ+G3Q5npjjbdppU65iZXkK1Zt+kH9pfegli0AYfwYYw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/wevm" - } - ], - "license": "MIT", - "peerDependencies": { - "ws": "*" - } - }, - "node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/js-yaml": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", - "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", - "dev": true, - "license": "MIT", - "dependencies": { - "get-func-name": "^2.0.1" - } - }, - "node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/mocha": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-11.1.0.tgz", - "integrity": "sha512-8uJR5RTC2NgpY3GrYcgpZrsEd9zKbPDpob1RezyR2upGHRQtHWofmzTMzTMSV6dru3tj5Ukt0+Vnq1qhFEEwAg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-colors": "^4.1.3", - "browser-stdout": "^1.3.1", - "chokidar": "^3.5.3", - "debug": "^4.3.5", - "diff": "^5.2.0", - "escape-string-regexp": "^4.0.0", - "find-up": "^5.0.0", - "glob": "^10.4.5", - "he": "^1.2.0", - "js-yaml": "^4.1.0", - "log-symbols": "^4.1.0", - "minimatch": "^5.1.6", - "ms": "^2.1.3", - "serialize-javascript": "^6.0.2", - "strip-json-comments": "^3.1.1", - "supports-color": "^8.1.1", - "workerpool": "^6.5.1", - "yargs": "^17.7.2", - "yargs-parser": "^21.1.1", - "yargs-unparser": "^2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha.js" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, - "node_modules/mocha/node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/mocha/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ox": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/ox/-/ox-0.6.9.tgz", - "integrity": "sha512-wi5ShvzE4eOcTwQVsIPdFr+8ycyX+5le/96iAJutaZAvCes1J0+RvpEPg5QDPDiaR0XQQAvZVl7AwqQcINuUug==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/wevm" - } - ], - "license": "MIT", - "dependencies": { - "@adraffy/ens-normalize": "^1.10.1", - "@noble/curves": "^1.6.0", - "@noble/hashes": "^1.5.0", - "@scure/bip32": "^1.5.0", - "@scure/bip39": "^1.4.0", - "abitype": "^1.0.6", - "eventemitter3": "5.0.1" - }, - "peerDependencies": { - "typescript": ">=5.4.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/package-json-from-dist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", - "dev": true, - "license": "BlueOak-1.0.0" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/type-detect": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", - "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/viem": { - "version": "2.27.3", - "resolved": "https://registry.npmjs.org/viem/-/viem-2.27.3.tgz", - "integrity": "sha512-n15nZz143MoXCE3RbmdEBtomQRjuT5sS5Mgo0B2haGd0tZ4nXES+x829a1GrLr8+ApP29I1ASmVQVglGN6Hpzg==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/wevm" - } - ], - "license": "MIT", - "dependencies": { - "@noble/curves": "1.8.2", - "@noble/hashes": "1.7.2", - "@scure/bip32": "1.6.2", - "@scure/bip39": "1.5.4", - "abitype": "1.0.8", - "isows": "1.0.6", - "ox": "0.6.9", - "ws": "8.18.1" - }, - "peerDependencies": { - "typescript": ">=5.0.4" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/workerpool": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", - "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/ws": { - "version": "8.18.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz", - "integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==", - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "license": "MIT", - "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - } -} From 40696d752979023503593e2d42383fb6edc230c1 Mon Sep 17 00:00:00 2001 From: nowooj Date: Tue, 3 Mar 2026 19:03:17 +0900 Subject: [PATCH 8/8] feat: generate TypeScript ABI files for improved type inference chore: refine exports structure for TypeScript compatibility chore: enhance exports for Solidity files refactor: enhance TypeScript configuration for precompiles feat: add dual ESM/CJS build for ABI exports refactor: streamline build process for precompiles chore: make contracts-all --- contracts/README.md | 30 +- contracts/package.json | 18 +- contracts/pnpm-lock.yaml | 1123 ++++++++++++++++- contracts/scripts/build-precompiles.js | 115 -- .../solidity/ContractCreationTester.json | 6 +- contracts/solidity/DebugPrecompileCaller.json | 6 +- .../solidity/ERC20MinterBurnerDecimals.json | 6 +- ...20RecursiveNonRevertingPrecompileCall.json | 6 +- ...ERC20RecursiveRevertingPrecompileCall.json | 6 +- .../solidity/ERC20WithNativeTransfers.json | 6 +- contracts/solidity/ICS20TransferTester.json | 6 +- contracts/solidity/SequentialICS20Sender.json | 6 +- .../solidity/SequentialOperationsTester.json | 6 +- contracts/solidity/StaticCallTester.json | 6 +- contracts/solidity/WATOM.json | 6 +- contracts/tsconfig.json | 12 + contracts/tsdown.config.ts | 27 + contracts/wagmi.config.ts | 53 + eips/testdata/Counter.json | 6 +- eips/testdata/CounterFactory.json | 6 +- precompiles/bank/testdata/BankCaller.json | 6 +- .../erc20/testdata/ERC20NoMetadata.json | 6 +- .../erc20/testdata/ERC20TestCaller.json | 6 +- .../slashing/testdata/SlashingCaller.json | 6 +- .../staking/testdata/StakingCaller.json | 6 +- .../staking/testdata/StakingCallerTwo.json | 6 +- precompiles/testutil/contracts/Counter.json | 6 +- .../contracts/DistributionCaller.json | 6 +- precompiles/testutil/contracts/FlashLoan.json | 6 +- precompiles/testutil/contracts/GovCaller.json | 6 +- .../testutil/contracts/ICS20Caller.json | 6 +- .../testutil/contracts/InterchainSender.json | 6 +- .../contracts/InterchainSenderCaller.json | 6 +- precompiles/testutil/contracts/Reverter.json | 6 +- .../testutil/contracts/StakingReverter.json | 6 +- .../werc20/testdata/WEVMOS9TestCaller.json | 8 +- .../entrypoint/SimpleEntryPoint.json | 6 +- .../smartwallet/SimpleSmartWallet.json | 6 +- .../tokens/SimpleERC20.json | 6 +- .../ERC20DirectBalanceManipulation.json | 6 +- .../testdata/ERC20MaliciousDelayed.json | 6 +- .../testutil/CounterWithCallbacks.json | 6 +- 42 files changed, 1351 insertions(+), 239 deletions(-) delete mode 100644 contracts/scripts/build-precompiles.js create mode 100644 contracts/tsconfig.json create mode 100644 contracts/tsdown.config.ts create mode 100644 contracts/wagmi.config.ts diff --git a/contracts/README.md b/contracts/README.md index 6b68470ee..a183aa958 100644 --- a/contracts/README.md +++ b/contracts/README.md @@ -1,7 +1,7 @@ # cosmos-evm-contracts A collection of smart contracts for the Cosmos EVM blockchain. -The published package includes precompile interface sources (`.sol`) and ABIs (`.json`). +The published package includes precompile interface sources (`.sol`) and ABIs as typed TypeScript (`.ts`). ## Installation @@ -23,21 +23,33 @@ After installation, use the following paths: | Path | Description | |------|-------------| | `cosmos-evm-contracts/precompiles/` | Solidity sources (`.sol`) | -| `cosmos-evm-contracts/abi/precompiles/` | ABI-only JSON (`.json`) | +| `cosmos-evm-contracts/abi/precompiles/` | ABI as typed ESM (`.ts`) | Included precompiles: `bank`, `bech32`, `callbacks`, `common`, `distribution`, `erc20`, `gov`, `ics02`, `ics20`, `slashing`, `staking`, `werc20` (testdata and testutil excluded). ## Usage -### Loading ABI (ethers / viem / web3, etc.) +### Loading ABI with TypeScript / viem (typed) -```javascript -import IBankAbi from "cosmos-evm-contracts/abi/precompiles/bank/IBank.json" assert { type: "json" }; +Import the named ABI constant so that `functionName`, `args`, and return types are inferred: -// or Node -const IBankAbi = require("cosmos-evm-contracts/abi/precompiles/bank/IBank.json"); +```typescript +import { createPublicClient, http } from "viem"; +import { IBank_ABI } from "cosmos-evm-contracts/abi/precompiles/bank/IBank"; + +const client = createPublicClient({ transport: http() }); + +// functionName and args are type-checked and autocompleted +const balances = await client.readContract({ + address: "0x0000000000000000000000000000000000000804", + abi: IBank_ABI, + functionName: "balances", + args: ["0x..."], +}); ``` +Use the same pattern for other precompiles, e.g. `DistributionI_ABI` from `abi/precompiles/distribution/DistributionI`, `StakingI_ABI` from `abi/precompiles/staking/StakingI`, etc. + ### Using interfaces in Hardhat Import by package path in your contract: @@ -60,6 +72,6 @@ import "cosmos-evm-contracts/bank/IBank.sol"; ### Path reference -- Interface ABI: `cosmos-evm-contracts/abi/precompiles/{module}/{Interface}.json` - e.g. `abi/precompiles/staking/StakingI.json` +- Interface ABI: `cosmos-evm-contracts/abi/precompiles/{module}/{Interface}` (`.ts`) + e.g. `abi/precompiles/staking/StakingI` - Common types: `cosmos-evm-contracts/precompiles/common/Types.sol` (structs only, no ABI) diff --git a/contracts/package.json b/contracts/package.json index bc371c5f0..44918edd9 100644 --- a/contracts/package.json +++ b/contracts/package.json @@ -1,16 +1,19 @@ { "name": "cosmos-evm-contracts", "packageManager": "pnpm@9.15.0", - "version": "0.0.1", + "version": "0.0.13", "description": "A collection of smart contracts used in the development of the Cosmos EVM blockchain.", "devDependencies": { "@account-abstraction/contracts": "^0.8.0", "@openzeppelin/contracts": "^5.4.0", - "hardhat": "^3.1.10" + "@types/node": "^22.0.0", + "@wagmi/cli": "^2.2.0", + "hardhat": "^3.1.10", + "tsdown": "^0.21.0", + "typescript": "^5.0.0" }, "scripts": { - "build:precompiles": "node scripts/build-precompiles.js", - "compile": "hardhat compile", + "build:precompiles": "wagmi generate && tsdown", "prepublishOnly": "pnpm run build:precompiles" }, "files": [ @@ -18,7 +21,12 @@ "README.md" ], "exports": { - "./*": "./dist/*" + "./*.sol": "./dist/*.sol", + "./*": { + "types": "./dist/*.d.ts", + "import": "./dist/*.js", + "require": "./dist/*.cjs" + } }, "repository": { "type": "git", diff --git a/contracts/pnpm-lock.yaml b/contracts/pnpm-lock.yaml index a5a3d71b1..b59afb137 100644 --- a/contracts/pnpm-lock.yaml +++ b/contracts/pnpm-lock.yaml @@ -7,179 +7,399 @@ settings: importers: .: - dependencies: + devDependencies: '@account-abstraction/contracts': specifier: ^0.8.0 version: 0.8.0 - devDependencies: '@openzeppelin/contracts': specifier: ^5.4.0 version: 5.4.0 + '@types/node': + specifier: ^22.0.0 + version: 22.19.13 + '@wagmi/cli': + specifier: ^2.2.0 + version: 2.10.0(typescript@5.9.3) hardhat: specifier: ^3.1.10 version: 3.1.10 + tsdown: + specifier: ^0.21.0 + version: 0.21.0(typescript@5.9.3) + typescript: + specifier: ^5.0.0 + version: 5.9.3 packages: '@account-abstraction/contracts@0.8.0': resolution: {integrity: sha512-8krPx/gpnoT+5xAroagVCbeA7FbUigMZWXFKKPm+oghyr29Dksssdx5sI7xGv9212i4JPaDDUGFk58dpuwVgHA==} + '@adraffy/ens-normalize@1.11.1': + resolution: {integrity: sha512-nhCBV3quEgesuf7c7KYfperqSS14T8bYuvJ8PcLJp6znkZpFc0AuW4qBtr8eKVyPPe/8RSr7sglCWPU5eaxwKQ==} + + '@babel/generator@8.0.0-rc.2': + resolution: {integrity: sha512-oCQ1IKPwkzCeJzAPb7Fv8rQ9k5+1sG8mf2uoHiMInPYvkRfrDJxbTIbH51U+jstlkghus0vAi3EBvkfvEsYNLQ==} + engines: {node: ^20.19.0 || >=22.12.0} + + '@babel/helper-string-parser@8.0.0-rc.2': + resolution: {integrity: sha512-noLx87RwlBEMrTzncWd/FvTxoJ9+ycHNg0n8yyYydIoDsLZuxknKgWRJUqcrVkNrJ74uGyhWQzQaS3q8xfGAhQ==} + engines: {node: ^20.19.0 || >=22.12.0} + + '@babel/helper-validator-identifier@8.0.0-rc.2': + resolution: {integrity: sha512-xExUBkuXWJjVuIbO7z6q7/BA9bgfJDEhVL0ggrggLMbg0IzCUWGT1hZGE8qUH7Il7/RD/a6cZ3AAFrrlp1LF/A==} + engines: {node: ^20.19.0 || >=22.12.0} + + '@babel/parser@8.0.0-rc.2': + resolution: {integrity: sha512-29AhEtcq4x8Dp3T72qvUMZHx0OMXCj4Jy/TEReQa+KWLln524Cj1fWb3QFi0l/xSpptQBR6y9RNEXuxpFvwiUQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + + '@babel/types@8.0.0-rc.2': + resolution: {integrity: sha512-91gAaWRznDwSX4E2tZ1YjBuIfnQVOFDCQ2r0Toby0gu4XEbyF623kXLMA8d4ZbCu+fINcrudkmEcwSUHgDDkNw==} + engines: {node: ^20.19.0 || >=22.12.0} + + '@emnapi/core@1.8.1': + resolution: {integrity: sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==} + + '@emnapi/runtime@1.8.1': + resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==} + + '@emnapi/wasi-threads@1.1.0': + resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + + '@esbuild/aix-ppc64@0.25.12': + resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/aix-ppc64@0.27.3': resolution: {integrity: sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] + '@esbuild/android-arm64@0.25.12': + resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm64@0.27.3': resolution: {integrity: sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==} engines: {node: '>=18'} cpu: [arm64] os: [android] + '@esbuild/android-arm@0.25.12': + resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-arm@0.27.3': resolution: {integrity: sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==} engines: {node: '>=18'} cpu: [arm] os: [android] + '@esbuild/android-x64@0.25.12': + resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/android-x64@0.27.3': resolution: {integrity: sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==} engines: {node: '>=18'} cpu: [x64] os: [android] + '@esbuild/darwin-arm64@0.25.12': + resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-arm64@0.27.3': resolution: {integrity: sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-x64@0.25.12': + resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/darwin-x64@0.27.3': resolution: {integrity: sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==} engines: {node: '>=18'} cpu: [x64] os: [darwin] + '@esbuild/freebsd-arm64@0.25.12': + resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-arm64@0.27.3': resolution: {integrity: sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-x64@0.25.12': + resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/freebsd-x64@0.27.3': resolution: {integrity: sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] + '@esbuild/linux-arm64@0.25.12': + resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm64@0.27.3': resolution: {integrity: sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==} engines: {node: '>=18'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm@0.25.12': + resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-arm@0.27.3': resolution: {integrity: sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==} engines: {node: '>=18'} cpu: [arm] os: [linux] + '@esbuild/linux-ia32@0.25.12': + resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-ia32@0.27.3': resolution: {integrity: sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==} engines: {node: '>=18'} cpu: [ia32] os: [linux] + '@esbuild/linux-loong64@0.25.12': + resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.27.3': resolution: {integrity: sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==} engines: {node: '>=18'} cpu: [loong64] os: [linux] + '@esbuild/linux-mips64el@0.25.12': + resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-mips64el@0.27.3': resolution: {integrity: sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] + '@esbuild/linux-ppc64@0.25.12': + resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-ppc64@0.27.3': resolution: {integrity: sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] + '@esbuild/linux-riscv64@0.25.12': + resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-riscv64@0.27.3': resolution: {integrity: sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] + '@esbuild/linux-s390x@0.25.12': + resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-s390x@0.27.3': resolution: {integrity: sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==} engines: {node: '>=18'} cpu: [s390x] os: [linux] + '@esbuild/linux-x64@0.25.12': + resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/linux-x64@0.27.3': resolution: {integrity: sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==} engines: {node: '>=18'} cpu: [x64] os: [linux] + '@esbuild/netbsd-arm64@0.25.12': + resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + '@esbuild/netbsd-arm64@0.27.3': resolution: {integrity: sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] + '@esbuild/netbsd-x64@0.25.12': + resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + '@esbuild/netbsd-x64@0.27.3': resolution: {integrity: sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] + '@esbuild/openbsd-arm64@0.25.12': + resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-arm64@0.27.3': resolution: {integrity: sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] + '@esbuild/openbsd-x64@0.25.12': + resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/openbsd-x64@0.27.3': resolution: {integrity: sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] + '@esbuild/openharmony-arm64@0.25.12': + resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + '@esbuild/openharmony-arm64@0.27.3': resolution: {integrity: sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] + '@esbuild/sunos-x64@0.25.12': + resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/sunos-x64@0.27.3': resolution: {integrity: sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==} engines: {node: '>=18'} cpu: [x64] os: [sunos] + '@esbuild/win32-arm64@0.25.12': + resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-arm64@0.27.3': resolution: {integrity: sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==} engines: {node: '>=18'} cpu: [arm64] os: [win32] + '@esbuild/win32-ia32@0.25.12': + resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-ia32@0.27.3': resolution: {integrity: sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==} engines: {node: '>=18'} cpu: [ia32] os: [win32] + '@esbuild/win32-x64@0.25.12': + resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@esbuild/win32-x64@0.27.3': resolution: {integrity: sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==} engines: {node: '>=18'} cpu: [x64] os: [win32] + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@napi-rs/wasm-runtime@1.1.1': + resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==} + + '@noble/ciphers@1.3.0': + resolution: {integrity: sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==} + engines: {node: ^14.21.3 || >=16} + '@noble/curves@1.4.2': resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} @@ -187,6 +407,10 @@ packages: resolution: {integrity: sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g==} engines: {node: ^14.21.3 || >=16} + '@noble/curves@1.9.1': + resolution: {integrity: sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA==} + engines: {node: ^14.21.3 || >=16} + '@noble/hashes@1.4.0': resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} engines: {node: '>= 16'} @@ -195,6 +419,10 @@ packages: resolution: {integrity: sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ==} engines: {node: ^14.21.3 || >=16} + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.24': resolution: {integrity: sha512-lYcD9IM52G0hk/3Sso2Rpdpyfafy3aHH0GsSy/FVog9UrEkmmU14AmccE18/zTL+UyV0yzYMDOmh6y83SD/lbg==} engines: {node: '>= 20'} @@ -279,6 +507,104 @@ packages: '@openzeppelin/contracts@5.4.0': resolution: {integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==} + '@oxc-project/types@0.115.0': + resolution: {integrity: sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==} + + '@quansync/fs@1.0.0': + resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==} + + '@rolldown/binding-android-arm64@1.0.0-rc.7': + resolution: {integrity: sha512-/uadfNUaMLFFBGvcIOiq8NnlhvTZTjOyybJaJnhGxD0n9k5vZRJfTaitH5GHnbwmc6T2PC+ZpS1FQH+vXyS/UA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [android] + + '@rolldown/binding-darwin-arm64@1.0.0-rc.7': + resolution: {integrity: sha512-zokYr1KgRn0hRA89dmgtPj/BmKp9DxgrfAJvOEFfXa8nfYWW2nmgiYIBGpSIAJrEg7Qc/Qznovy6xYwmKh0M8g==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [darwin] + + '@rolldown/binding-darwin-x64@1.0.0-rc.7': + resolution: {integrity: sha512-eZFjbmrapCBVgMmuLALH3pmQQQStHFuRhsFceJHk6KISW8CkI2e9OPLp9V4qXksrySQcD8XM8fpvGLs5l5C7LQ==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [darwin] + + '@rolldown/binding-freebsd-x64@1.0.0-rc.7': + resolution: {integrity: sha512-xjMrh8Dmu2DNwdY6DZsrF6YPGeesc3PaTlkh8v9cqmkSCNeTxnhX3ErhVnuv1j3n8t2IuuhQIwM9eZDINNEt5Q==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [freebsd] + + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.7': + resolution: {integrity: sha512-mOvftrHiXg4/xFdxJY3T9Wl1/zDAOSlMN8z9an2bXsCwuvv3RdyhYbSMZDuDO52S04w9z7+cBd90lvQSPTAQtw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm] + os: [linux] + + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.7': + resolution: {integrity: sha512-TuUkeuEEPRyXMBbJ86NRhAiPNezxHW8merl3Om2HASA9Pl1rI+VZcTtsVQ6v/P0MDIFpSl0k0+tUUze9HIXyEw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.7': + resolution: {integrity: sha512-G43ZElEvaby+YSOgrXfBgpeQv42LdS0ivFFYQufk2tBDWeBfzE/+ob5DmO8Izbyn4Y8k6GgLF11jFDYNnmU/3w==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [linux] + + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.7': + resolution: {integrity: sha512-Y48ShVxGE2zUTt0A0PR3grCLNxW4DWtAfe5lxf6L3uYEQujwo/LGuRogMsAtOJeYLCPTJo2i714LOdnK34cHpw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [ppc64] + os: [linux] + + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.7': + resolution: {integrity: sha512-KU5DUYvX3qI8/TX6D3RA4awXi4Ge/1+M6Jqv7kRiUndpqoVGgD765xhV3Q6QvtABnYjLJenrWDl3S1B5U56ixA==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [s390x] + os: [linux] + + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.7': + resolution: {integrity: sha512-1THb6FdBkAEL12zvUue2bmK4W1+P+tz8Pgu5uEzq+xrtYa3iBzmmKNlyfUzCFNCqsPd8WJEQrYdLcw4iMW4AVw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + + '@rolldown/binding-linux-x64-musl@1.0.0-rc.7': + resolution: {integrity: sha512-12o73atFNWDgYnLyA52QEUn9AH8pHIe12W28cmqjyHt4bIEYRzMICvYVCPa2IQm6DJBvCBrEhD9K+ct4wr2hwg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [linux] + + '@rolldown/binding-openharmony-arm64@1.0.0-rc.7': + resolution: {integrity: sha512-+uUgGwvuUCXl894MTsmTS2J0BnCZccFsmzV7y1jFxW5pTSxkuwL5agyPuDvDOztPeS6RrdqWkn7sT0jRd0ECkg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [openharmony] + + '@rolldown/binding-wasm32-wasi@1.0.0-rc.7': + resolution: {integrity: sha512-53p2L/NSy21UiFOqUGlC11kJDZS2Nx2GJRz1QvbkXovypA3cOHbsyZHLkV72JsLSbiEQe+kg4tndUhSiC31UEA==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.7': + resolution: {integrity: sha512-K6svNRljO6QrL6VTKxwh4yThhlR9DT/tK0XpaFQMnJwwQKng+NYcVEtUkAM0WsoiZHw+Hnh3DGnn3taf/pNYGg==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [arm64] + os: [win32] + + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.7': + resolution: {integrity: sha512-3ZJBT47VWLKVKIyvHhUSUgVwHzzZW761YAIkM3tOT+8ZTjFVp0acCM0Y2Z2j3jCl+XYi2d9y2uEWQ8H0PvvpPw==} + engines: {node: ^20.19.0 || >=22.12.0} + cpu: [x64] + os: [win32] + + '@rolldown/pluginutils@1.0.0-rc.7': + resolution: {integrity: sha512-qujRfC8sFVInYSPPMLQByRh7zhwkGFS4+tyMQ83srV1qrxL4g8E2tyxVVyxd0+8QeBM1mIk9KbWxkegRr76XzA==} + '@scure/base@1.1.9': resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} @@ -288,9 +614,15 @@ packages: '@scure/bip32@1.4.0': resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} + '@scure/bip32@1.7.0': + resolution: {integrity: sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==} + '@scure/bip39@1.3.0': resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} + '@scure/bip39@1.6.0': + resolution: {integrity: sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==} + '@sentry/core@9.47.1': resolution: {integrity: sha512-KX62+qIt4xgy8eHKHiikfhz2p5fOciXd0Cl+dNzhgPFq8klq4MGMNaf148GB3M/vBqP4nw/eFvRMAayFCgdRQw==} engines: {node: '>=18'} @@ -301,6 +633,18 @@ packages: '@streamparser/json@0.0.22': resolution: {integrity: sha512-b6gTSBjJ8G8SuO3Gbbj+zXbVx8NSs1EbpbMKpzGLWMdkR+98McH9bEjSz3+0mPJf68c5nxa3CrJHp5EQNXM6zQ==} + '@tybys/wasm-util@0.10.1': + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + + '@types/jsesc@2.5.1': + resolution: {integrity: sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==} + + '@types/node@22.19.13': + resolution: {integrity: sha512-akNQMv0wW5uyRpD2v2IEyRSZiR+BeGuoB6L310EgGObO44HSMNT8z1xzio28V8qOrgYaopIDNA18YgdXd+qTiw==} + '@uniswap/lib@4.0.1-alpha': resolution: {integrity: sha512-f6UIliwBbRsgVLxIaBANF6w09tYqc6Y/qXdsrbEmXHyFA7ILiKrIwRFXe1yOg8M3cksgVsO9N7yuL2DdCGQKBA==} engines: {node: '>=10'} @@ -317,6 +661,26 @@ packages: resolution: {integrity: sha512-S4+m+wh8HbWSO3DKk4LwUCPZJTpCugIsHrWR86m/OrUyvSqGDTXKFfc2sMuGXCZrD1ZqO3rhQsKgdWg3Hbb2Kw==} engines: {node: '>=10'} + '@wagmi/cli@2.10.0': + resolution: {integrity: sha512-2tYt6Bp1q26mWexH+XE6dMpPB5/Gp/3OVtE2SeeJ/gNHKLZmVF/TuoZR75mpJKTpofyvpz/fnuMCkUxzbc/kRw==} + hasBin: true + peerDependencies: + typescript: '>=5.7.3' + peerDependenciesMeta: + typescript: + optional: true + + abitype@1.2.3: + resolution: {integrity: sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg==} + peerDependencies: + typescript: '>=5.0.4' + zod: ^3.22.0 || ^4.0.0 + peerDependenciesMeta: + typescript: + optional: true + zod: + optional: true + adm-zip@0.4.16: resolution: {integrity: sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==} engines: {node: '>=0.3.0'} @@ -329,13 +693,45 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + ansis@4.2.0: + resolution: {integrity: sha512-HqZ5rWlFjGiV0tDm3UxxgNRqsOTniqoKZu0pIAfh7TZQMGuZK+hH0drySty0si0QXj1ieop4+SkSfPZBPPkHig==} + engines: {node: '>=14'} + + ast-kit@3.0.0-beta.1: + resolution: {integrity: sha512-trmleAnZ2PxN/loHWVhhx1qeOHSRXq4TDsBBxq3GqeJitfk3+jTQ+v/C1km/KYq9M7wKqCewMh+/NAvVH7m+bw==} + engines: {node: '>=20.19.0'} + base64-sol@1.0.1: resolution: {integrity: sha512-ld3cCNMeXt4uJXmLZBHFGMvVpK9KsLVEhPpFRXnvSVAqABKbuNZg/+dsq3NuM+wxFLb/UrVkz7m1ciWmkMfTbg==} + birpc@4.0.0: + resolution: {integrity: sha512-LShSxJP0KTmd101b6DRyGBj57LZxSDYWKitQNW/mi8GRMvZb078Uf9+pveax1DrVL89vm7mWe+TovdI/UDOuPw==} + + bundle-require@5.1.0: + resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + peerDependencies: + esbuild: '>=0.18' + + cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + + cac@7.0.0: + resolution: {integrity: sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ==} + engines: {node: '>=20.19.0'} + chalk@5.6.2: resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + change-case@5.4.4: + resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==} + + chokidar@4.0.1: + resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} + engines: {node: '>= 14.16.0'} + chokidar@4.0.3: resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} engines: {node: '>= 14.16.0'} @@ -349,6 +745,33 @@ packages: supports-color: optional: true + dedent@0.7.0: + resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} + + defu@6.1.4: + resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} + + dotenv-expand@10.0.0: + resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==} + engines: {node: '>=12'} + + dotenv@16.6.1: + resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==} + engines: {node: '>=12'} + + dts-resolver@2.1.3: + resolution: {integrity: sha512-bihc7jPC90VrosXNzK0LTE2cuLP6jr0Ro8jk+kMugHReJVLIpHz/xadeq3MhuwyO4TD4OA3L1Q8pBBFRc08Tsw==} + engines: {node: '>=20.19.0'} + peerDependencies: + oxc-resolver: '>=11.0.0' + peerDependenciesMeta: + oxc-resolver: + optional: true + + empathic@2.0.0: + resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==} + engines: {node: '>=14'} + enquirer@2.4.1: resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} engines: {node: '>=8.6'} @@ -357,18 +780,42 @@ packages: resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} engines: {node: '>=6'} + esbuild@0.25.12: + resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} + engines: {node: '>=18'} + hasBin: true + esbuild@0.27.3: resolution: {integrity: sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==} engines: {node: '>=18'} hasBin: true + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + ethereum-cryptography@2.2.1: resolution: {integrity: sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==} + eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + fast-equals@5.4.0: resolution: {integrity: sha512-jt2DW/aNFNwke7AUd+Z+e6pz39KO5rzdbbFCg2sGafS4mk13MI7Z8O5z9cADNn5lhGODIgLwug6TZO2ctf7kcw==} engines: {node: '>=6.0.0'} + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -381,10 +828,31 @@ packages: resolution: {integrity: sha512-+J3LmO5j3r8bYRIiImaTT6WtT0EKcR0nfFxWq/bokAKZq7GKYf6ErKSrOuH+gFIqo+CfnrkxcgbPY20P5vuuSQ==} hasBin: true + hookable@6.0.1: + resolution: {integrity: sha512-uKGyY8BuzN/a5gvzvA+3FVWo0+wUjgtfSdnmjtrOVwQCZPHpHDH2WRO3VZSOeluYrHoDCiXFffZXs8Dj1ULWtw==} + + import-without-cache@0.2.5: + resolution: {integrity: sha512-B6Lc2s6yApwnD2/pMzFh/d5AVjdsDXjgkeJ766FmFuJELIGHNycKRj+l3A39yZPM4CchqNCB4RITEAYB1KUM6A==} + engines: {node: '>=20.19.0'} + + isows@1.0.7: + resolution: {integrity: sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==} + peerDependencies: + ws: '*' + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + json-stream-stringify@3.1.6: resolution: {integrity: sha512-x7fpwxOkbhFCaJDJ8vb1fBY3DdSa4AlITaz+HHILQJzdPMnHEFjxPwVUi1ALIbcIxDE0PNe/0i7frnY8QnBQog==} engines: {node: '>=7.10.1'} + load-tsconfig@0.2.5: + resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + micro-eth-signer@0.14.0: resolution: {integrity: sha512-5PLLzHiVYPWClEvZIXXFu5yutzpadb73rnQCpUqIHu3No3coFuWQNfE5tkBQJ7djuLYl6aRLaS0MgWJYGoqiBw==} @@ -394,10 +862,49 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + nanospinner@1.2.2: + resolution: {integrity: sha512-Zt/AmG6qRU3e+WnzGGLuMCEAO/dAu45stNbHY223tUxldaDAeE+FxSPsd9Q+j+paejmm0ZbrNVs5Sraqy3dRxA==} + + obug@2.1.1: + resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} + + ox@0.14.0: + resolution: {integrity: sha512-WLOB7IKnmI3Ol6RAqY7CJdZKl8QaI44LN91OGF1061YIeN6bL5IsFcdp7+oQShRyamE/8fW/CBRWhJAOzI35Dw==} + peerDependencies: + typescript: '>=5.4.0' + peerDependenciesMeta: + typescript: + optional: true + p-map@7.0.4: resolution: {integrity: sha512-tkAQEw8ysMzmkhgw8k+1U/iPhWNhykKnSk4Rd5zLoPJCuJaGRPo6YposrZgaxHKzDHdDWWZvE/Sk7hsL2X/CpQ==} engines: {node: '>=18'} + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@3.0.1: + resolution: {integrity: sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==} + engines: {node: '>=10'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + prettier@3.8.1: + resolution: {integrity: sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==} + engines: {node: '>=14'} + hasBin: true + + quansync@1.0.0: + resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==} + readdirp@4.1.2: resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} engines: {node: '>= 14.18.0'} @@ -412,6 +919,30 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + rolldown-plugin-dts@0.22.3: + resolution: {integrity: sha512-APIGZGChvLVu05f+7bMmgf+lpvhjIvELhkOsg7c/95IVdOgULVFOX9iciaHJLaBfZeTthIgp+gryGBjgyKNA1A==} + engines: {node: '>=20.19.0'} + peerDependencies: + '@ts-macro/tsc': ^0.3.6 + '@typescript/native-preview': '>=7.0.0-dev.20250601.1' + rolldown: ^1.0.0-rc.3 + typescript: ^5.0.0 || ^6.0.0-beta + vue-tsc: ~3.2.0 + peerDependenciesMeta: + '@ts-macro/tsc': + optional: true + '@typescript/native-preview': + optional: true + typescript: + optional: true + vue-tsc: + optional: true + + rolldown@1.0.0-rc.7: + resolution: {integrity: sha512-5X0zEeQFzDpB3MqUWQZyO2TUQqP9VnT7CqXHF2laTFRy487+b6QZyotCazOySAuZLAvplCaOVsg1tVn/Zlmwfg==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + semver@7.7.4: resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} engines: {node: '>=10'} @@ -421,15 +952,99 @@ packages: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} - tsx@4.21.0: - resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==} + tinyexec@1.0.2: + resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} + engines: {node: '>=18'} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + + tsdown@0.21.0: + resolution: {integrity: sha512-Sw/ehzVhjYLD7HVBPybJHDxpcaeyFjPcaDCME23o9O4fyuEl6ibYEdrnB8W8UchYAGoayKqzWQqx/oIp3jn/Vg==} + engines: {node: '>=20.19.0'} + hasBin: true + peerDependencies: + '@arethetypeswrong/core': ^0.18.1 + '@tsdown/css': 0.21.0 + '@tsdown/exe': 0.21.0 + '@vitejs/devtools': '*' + publint: ^0.3.0 + typescript: ^5.0.0 + unplugin-unused: ^0.5.0 + peerDependenciesMeta: + '@arethetypeswrong/core': + optional: true + '@tsdown/css': + optional: true + '@tsdown/exe': + optional: true + '@vitejs/devtools': + optional: true + publint: + optional: true + typescript: + optional: true + unplugin-unused: + optional: true + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + tsx@4.21.0: + resolution: {integrity: sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==} engines: {node: '>=18.0.0'} hasBin: true + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + unconfig-core@7.5.0: + resolution: {integrity: sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==} + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + undici@6.23.0: resolution: {integrity: sha512-VfQPToRA5FZs/qJxLIinmU59u0r7LXqoJkCzinq3ckNJp3vKEh7jTWN589YQ5+aoAC/TGRLyJLCPKcLQbM8r9g==} engines: {node: '>=18.17'} + unrun@0.2.30: + resolution: {integrity: sha512-a4W1wDADI0gvDDr14T0ho1FgMhmfjq6M8Iz8q234EnlxgH/9cMHDueUSLwTl1fwSBs5+mHrLFYH+7B8ao36EBA==} + engines: {node: '>=20.19.0'} + hasBin: true + peerDependencies: + synckit: ^0.11.11 + peerDependenciesMeta: + synckit: + optional: true + + viem@2.47.0: + resolution: {integrity: sha512-jU5e1E1s5E5M1y+YrELDnNar/34U8NXfVcRfxtVETigs2gS1vvW2ngnBoQUGBwLnNr0kNv+NUu4m10OqHByoFw==} + peerDependencies: + typescript: '>=5.0.4' + peerDependenciesMeta: + typescript: + optional: true + + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + ws@8.19.0: resolution: {integrity: sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==} engines: {node: '>=10.0.0'} @@ -445,6 +1060,9 @@ packages: zod@3.25.76: resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} + zod@4.3.6: + resolution: {integrity: sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==} + snapshots: '@account-abstraction/contracts@0.8.0': @@ -452,84 +1070,225 @@ snapshots: '@openzeppelin/contracts': 5.4.0 '@uniswap/v3-periphery': 1.4.4 + '@adraffy/ens-normalize@1.11.1': {} + + '@babel/generator@8.0.0-rc.2': + dependencies: + '@babel/parser': 8.0.0-rc.2 + '@babel/types': 8.0.0-rc.2 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + '@types/jsesc': 2.5.1 + jsesc: 3.1.0 + + '@babel/helper-string-parser@8.0.0-rc.2': {} + + '@babel/helper-validator-identifier@8.0.0-rc.2': {} + + '@babel/parser@8.0.0-rc.2': + dependencies: + '@babel/types': 8.0.0-rc.2 + + '@babel/types@8.0.0-rc.2': + dependencies: + '@babel/helper-string-parser': 8.0.0-rc.2 + '@babel/helper-validator-identifier': 8.0.0-rc.2 + + '@emnapi/core@1.8.1': + dependencies: + '@emnapi/wasi-threads': 1.1.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.8.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.1.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@esbuild/aix-ppc64@0.25.12': + optional: true + '@esbuild/aix-ppc64@0.27.3': optional: true + '@esbuild/android-arm64@0.25.12': + optional: true + '@esbuild/android-arm64@0.27.3': optional: true + '@esbuild/android-arm@0.25.12': + optional: true + '@esbuild/android-arm@0.27.3': optional: true + '@esbuild/android-x64@0.25.12': + optional: true + '@esbuild/android-x64@0.27.3': optional: true + '@esbuild/darwin-arm64@0.25.12': + optional: true + '@esbuild/darwin-arm64@0.27.3': optional: true + '@esbuild/darwin-x64@0.25.12': + optional: true + '@esbuild/darwin-x64@0.27.3': optional: true + '@esbuild/freebsd-arm64@0.25.12': + optional: true + '@esbuild/freebsd-arm64@0.27.3': optional: true + '@esbuild/freebsd-x64@0.25.12': + optional: true + '@esbuild/freebsd-x64@0.27.3': optional: true + '@esbuild/linux-arm64@0.25.12': + optional: true + '@esbuild/linux-arm64@0.27.3': optional: true + '@esbuild/linux-arm@0.25.12': + optional: true + '@esbuild/linux-arm@0.27.3': optional: true + '@esbuild/linux-ia32@0.25.12': + optional: true + '@esbuild/linux-ia32@0.27.3': optional: true + '@esbuild/linux-loong64@0.25.12': + optional: true + '@esbuild/linux-loong64@0.27.3': optional: true + '@esbuild/linux-mips64el@0.25.12': + optional: true + '@esbuild/linux-mips64el@0.27.3': optional: true + '@esbuild/linux-ppc64@0.25.12': + optional: true + '@esbuild/linux-ppc64@0.27.3': optional: true + '@esbuild/linux-riscv64@0.25.12': + optional: true + '@esbuild/linux-riscv64@0.27.3': optional: true + '@esbuild/linux-s390x@0.25.12': + optional: true + '@esbuild/linux-s390x@0.27.3': optional: true + '@esbuild/linux-x64@0.25.12': + optional: true + '@esbuild/linux-x64@0.27.3': optional: true + '@esbuild/netbsd-arm64@0.25.12': + optional: true + '@esbuild/netbsd-arm64@0.27.3': optional: true + '@esbuild/netbsd-x64@0.25.12': + optional: true + '@esbuild/netbsd-x64@0.27.3': optional: true + '@esbuild/openbsd-arm64@0.25.12': + optional: true + '@esbuild/openbsd-arm64@0.27.3': optional: true + '@esbuild/openbsd-x64@0.25.12': + optional: true + '@esbuild/openbsd-x64@0.27.3': optional: true + '@esbuild/openharmony-arm64@0.25.12': + optional: true + '@esbuild/openharmony-arm64@0.27.3': optional: true + '@esbuild/sunos-x64@0.25.12': + optional: true + '@esbuild/sunos-x64@0.27.3': optional: true + '@esbuild/win32-arm64@0.25.12': + optional: true + '@esbuild/win32-arm64@0.27.3': optional: true + '@esbuild/win32-ia32@0.25.12': + optional: true + '@esbuild/win32-ia32@0.27.3': optional: true + '@esbuild/win32-x64@0.25.12': + optional: true + '@esbuild/win32-x64@0.27.3': optional: true + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@napi-rs/wasm-runtime@1.1.1': + dependencies: + '@emnapi/core': 1.8.1 + '@emnapi/runtime': 1.8.1 + '@tybys/wasm-util': 0.10.1 + optional: true + + '@noble/ciphers@1.3.0': {} + '@noble/curves@1.4.2': dependencies: '@noble/hashes': 1.4.0 @@ -538,10 +1297,16 @@ snapshots: dependencies: '@noble/hashes': 1.7.2 + '@noble/curves@1.9.1': + dependencies: + '@noble/hashes': 1.8.0 + '@noble/hashes@1.4.0': {} '@noble/hashes@1.7.2': {} + '@noble/hashes@1.8.0': {} + '@nomicfoundation/edr-darwin-arm64@0.12.0-next.24': {} '@nomicfoundation/edr-darwin-x64@0.12.0-next.24': {} @@ -630,6 +1395,61 @@ snapshots: '@openzeppelin/contracts@5.4.0': {} + '@oxc-project/types@0.115.0': {} + + '@quansync/fs@1.0.0': + dependencies: + quansync: 1.0.0 + + '@rolldown/binding-android-arm64@1.0.0-rc.7': + optional: true + + '@rolldown/binding-darwin-arm64@1.0.0-rc.7': + optional: true + + '@rolldown/binding-darwin-x64@1.0.0-rc.7': + optional: true + + '@rolldown/binding-freebsd-x64@1.0.0-rc.7': + optional: true + + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.7': + optional: true + + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.7': + optional: true + + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.7': + optional: true + + '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.7': + optional: true + + '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.7': + optional: true + + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.7': + optional: true + + '@rolldown/binding-linux-x64-musl@1.0.0-rc.7': + optional: true + + '@rolldown/binding-openharmony-arm64@1.0.0-rc.7': + optional: true + + '@rolldown/binding-wasm32-wasi@1.0.0-rc.7': + dependencies: + '@napi-rs/wasm-runtime': 1.1.1 + optional: true + + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.7': + optional: true + + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.7': + optional: true + + '@rolldown/pluginutils@1.0.0-rc.7': {} + '@scure/base@1.1.9': {} '@scure/base@1.2.6': {} @@ -640,11 +1460,22 @@ snapshots: '@noble/hashes': 1.4.0 '@scure/base': 1.1.9 + '@scure/bip32@1.7.0': + dependencies: + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + '@scure/bip39@1.3.0': dependencies: '@noble/hashes': 1.4.0 '@scure/base': 1.1.9 + '@scure/bip39@1.6.0': + dependencies: + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + '@sentry/core@9.47.1': {} '@streamparser/json-node@0.0.22': @@ -653,6 +1484,19 @@ snapshots: '@streamparser/json@0.0.22': {} + '@tybys/wasm-util@0.10.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/estree@1.0.8': {} + + '@types/jsesc@2.5.1': {} + + '@types/node@22.19.13': + dependencies: + undici-types: 6.21.0 + '@uniswap/lib@4.0.1-alpha': {} '@uniswap/v2-core@1.0.1': {} @@ -667,16 +1511,72 @@ snapshots: '@uniswap/v3-core': 1.0.1 base64-sol: 1.0.1 + '@wagmi/cli@2.10.0(typescript@5.9.3)': + dependencies: + abitype: 1.2.3(typescript@5.9.3)(zod@4.3.6) + bundle-require: 5.1.0(esbuild@0.25.12) + cac: 6.7.14 + change-case: 5.4.4 + chokidar: 4.0.1 + dedent: 0.7.0 + dotenv: 16.6.1 + dotenv-expand: 10.0.0 + esbuild: 0.25.12 + escalade: 3.2.0 + fdir: 6.5.0(picomatch@3.0.1) + nanospinner: 1.2.2 + pathe: 1.1.2 + picocolors: 1.1.1 + picomatch: 3.0.1 + prettier: 3.8.1 + viem: 2.47.0(typescript@5.9.3)(zod@4.3.6) + zod: 4.3.6 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + abitype@1.2.3(typescript@5.9.3)(zod@4.3.6): + optionalDependencies: + typescript: 5.9.3 + zod: 4.3.6 + adm-zip@0.4.16: {} ansi-colors@4.1.3: {} ansi-regex@5.0.1: {} + ansis@4.2.0: {} + + ast-kit@3.0.0-beta.1: + dependencies: + '@babel/parser': 8.0.0-rc.2 + estree-walker: 3.0.3 + pathe: 2.0.3 + base64-sol@1.0.1: {} + birpc@4.0.0: {} + + bundle-require@5.1.0(esbuild@0.25.12): + dependencies: + esbuild: 0.25.12 + load-tsconfig: 0.2.5 + + cac@6.7.14: {} + + cac@7.0.0: {} + chalk@5.6.2: {} + change-case@5.4.4: {} + + chokidar@4.0.1: + dependencies: + readdirp: 4.1.2 + chokidar@4.0.3: dependencies: readdirp: 4.1.2 @@ -685,6 +1585,18 @@ snapshots: dependencies: ms: 2.1.3 + dedent@0.7.0: {} + + defu@6.1.4: {} + + dotenv-expand@10.0.0: {} + + dotenv@16.6.1: {} + + dts-resolver@2.1.3: {} + + empathic@2.0.0: {} + enquirer@2.4.1: dependencies: ansi-colors: 4.1.3 @@ -692,6 +1604,35 @@ snapshots: env-paths@2.2.1: {} + esbuild@0.25.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.12 + '@esbuild/android-arm': 0.25.12 + '@esbuild/android-arm64': 0.25.12 + '@esbuild/android-x64': 0.25.12 + '@esbuild/darwin-arm64': 0.25.12 + '@esbuild/darwin-x64': 0.25.12 + '@esbuild/freebsd-arm64': 0.25.12 + '@esbuild/freebsd-x64': 0.25.12 + '@esbuild/linux-arm': 0.25.12 + '@esbuild/linux-arm64': 0.25.12 + '@esbuild/linux-ia32': 0.25.12 + '@esbuild/linux-loong64': 0.25.12 + '@esbuild/linux-mips64el': 0.25.12 + '@esbuild/linux-ppc64': 0.25.12 + '@esbuild/linux-riscv64': 0.25.12 + '@esbuild/linux-s390x': 0.25.12 + '@esbuild/linux-x64': 0.25.12 + '@esbuild/netbsd-arm64': 0.25.12 + '@esbuild/netbsd-x64': 0.25.12 + '@esbuild/openbsd-arm64': 0.25.12 + '@esbuild/openbsd-x64': 0.25.12 + '@esbuild/openharmony-arm64': 0.25.12 + '@esbuild/sunos-x64': 0.25.12 + '@esbuild/win32-arm64': 0.25.12 + '@esbuild/win32-ia32': 0.25.12 + '@esbuild/win32-x64': 0.25.12 + esbuild@0.27.3: optionalDependencies: '@esbuild/aix-ppc64': 0.27.3 @@ -721,6 +1662,12 @@ snapshots: '@esbuild/win32-ia32': 0.27.3 '@esbuild/win32-x64': 0.27.3 + escalade@3.2.0: {} + + estree-walker@3.0.3: + dependencies: + '@types/estree': 1.0.8 + ethereum-cryptography@2.2.1: dependencies: '@noble/curves': 1.4.2 @@ -728,8 +1675,18 @@ snapshots: '@scure/bip32': 1.4.0 '@scure/bip39': 1.3.0 + eventemitter3@5.0.1: {} + fast-equals@5.4.0: {} + fdir@6.5.0(picomatch@3.0.1): + optionalDependencies: + picomatch: 3.0.1 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + fsevents@2.3.3: optional: true @@ -764,8 +1721,20 @@ snapshots: - supports-color - utf-8-validate + hookable@6.0.1: {} + + import-without-cache@0.2.5: {} + + isows@1.0.7(ws@8.18.3): + dependencies: + ws: 8.18.3 + + jsesc@3.1.0: {} + json-stream-stringify@3.1.6: {} + load-tsconfig@0.2.5: {} + micro-eth-signer@0.14.0: dependencies: '@noble/curves': 1.8.2 @@ -778,8 +1747,43 @@ snapshots: ms@2.1.3: {} + nanospinner@1.2.2: + dependencies: + picocolors: 1.1.1 + + obug@2.1.1: {} + + ox@0.14.0(typescript@5.9.3)(zod@4.3.6): + dependencies: + '@adraffy/ens-normalize': 1.11.1 + '@noble/ciphers': 1.3.0 + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.2.3(typescript@5.9.3)(zod@4.3.6) + eventemitter3: 5.0.1 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - zod + p-map@7.0.4: {} + pathe@1.1.2: {} + + pathe@2.0.3: {} + + picocolors@1.1.1: {} + + picomatch@3.0.1: {} + + picomatch@4.0.3: {} + + prettier@3.8.1: {} + + quansync@1.0.0: {} + readdirp@4.1.2: {} resolve-pkg-maps@1.0.0: {} @@ -788,12 +1792,89 @@ snapshots: rfdc@1.4.1: {} + rolldown-plugin-dts@0.22.3(rolldown@1.0.0-rc.7)(typescript@5.9.3): + dependencies: + '@babel/generator': 8.0.0-rc.2 + '@babel/helper-validator-identifier': 8.0.0-rc.2 + '@babel/parser': 8.0.0-rc.2 + '@babel/types': 8.0.0-rc.2 + ast-kit: 3.0.0-beta.1 + birpc: 4.0.0 + dts-resolver: 2.1.3 + get-tsconfig: 4.13.6 + obug: 2.1.1 + rolldown: 1.0.0-rc.7 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - oxc-resolver + + rolldown@1.0.0-rc.7: + dependencies: + '@oxc-project/types': 0.115.0 + '@rolldown/pluginutils': 1.0.0-rc.7 + optionalDependencies: + '@rolldown/binding-android-arm64': 1.0.0-rc.7 + '@rolldown/binding-darwin-arm64': 1.0.0-rc.7 + '@rolldown/binding-darwin-x64': 1.0.0-rc.7 + '@rolldown/binding-freebsd-x64': 1.0.0-rc.7 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.7 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.7 + '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.7 + '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.7 + '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.7 + '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.7 + '@rolldown/binding-linux-x64-musl': 1.0.0-rc.7 + '@rolldown/binding-openharmony-arm64': 1.0.0-rc.7 + '@rolldown/binding-wasm32-wasi': 1.0.0-rc.7 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.7 + '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.7 + semver@7.7.4: {} strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 + tinyexec@1.0.2: {} + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + tree-kill@1.2.2: {} + + tsdown@0.21.0(typescript@5.9.3): + dependencies: + ansis: 4.2.0 + cac: 7.0.0 + defu: 6.1.4 + empathic: 2.0.0 + hookable: 6.0.1 + import-without-cache: 0.2.5 + obug: 2.1.1 + picomatch: 4.0.3 + rolldown: 1.0.0-rc.7 + rolldown-plugin-dts: 0.22.3(rolldown@1.0.0-rc.7)(typescript@5.9.3) + semver: 7.7.4 + tinyexec: 1.0.2 + tinyglobby: 0.2.15 + tree-kill: 1.2.2 + unconfig-core: 7.5.0 + unrun: 0.2.30 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - '@ts-macro/tsc' + - '@typescript/native-preview' + - oxc-resolver + - synckit + - vue-tsc + + tslib@2.8.1: + optional: true + tsx@4.21.0: dependencies: esbuild: 0.27.3 @@ -801,8 +1882,42 @@ snapshots: optionalDependencies: fsevents: 2.3.3 + typescript@5.9.3: {} + + unconfig-core@7.5.0: + dependencies: + '@quansync/fs': 1.0.0 + quansync: 1.0.0 + + undici-types@6.21.0: {} + undici@6.23.0: {} + unrun@0.2.30: + dependencies: + rolldown: 1.0.0-rc.7 + + viem@2.47.0(typescript@5.9.3)(zod@4.3.6): + dependencies: + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.2.3(typescript@5.9.3)(zod@4.3.6) + isows: 1.0.7(ws@8.18.3) + ox: 0.14.0(typescript@5.9.3)(zod@4.3.6) + ws: 8.18.3 + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + - zod + + ws@8.18.3: {} + ws@8.19.0: {} zod@3.25.76: {} + + zod@4.3.6: {} diff --git a/contracts/scripts/build-precompiles.js b/contracts/scripts/build-precompiles.js deleted file mode 100644 index d806b29fb..000000000 --- a/contracts/scripts/build-precompiles.js +++ /dev/null @@ -1,115 +0,0 @@ -#!/usr/bin/env node -/** - * Build precompile contracts (excluding testdata, testutil) in OpenZeppelin style: - * - dist/precompiles/ : .sol sources - * - dist/abi/ : ABI-only JSON per contract - * - * Run from contracts directory: pnpm run build:precompiles - */ - -import { readFileSync, writeFileSync, mkdirSync, cpSync, existsSync, readdirSync, statSync } from "fs"; -import { join, dirname } from "path"; -import { fileURLToPath } from "url"; -import { execSync } from "child_process"; - -const __dirname = fileURLToPath(new URL(".", import.meta.url)); -const ROOT = join(__dirname, ".."); -const ARTIFACTS = join(ROOT, "artifacts", "solidity", "precompiles"); -const SOLIDITY_SOURCE = join(ROOT, "solidity"); -const DIST = join(ROOT, "dist"); -const DIST_ABI = join(DIST, "abi"); - -const EXCLUDED_DIRS = ["testdata", "testutil"]; - -function ensureDir(p) { - if (!existsSync(p)) mkdirSync(p, { recursive: true }); -} - -function* walkArtifactJsons(dir) { - if (!existsSync(dir)) return; - for (const name of readdirSync(dir)) { - const full = join(dir, name); - if (statSync(full).isDirectory()) { - if (name.endsWith(".sol")) { - const contractName = name.replace(".sol", ""); - const jsonPath = join(full, contractName + ".json"); - if (existsSync(jsonPath)) yield jsonPath; - } - yield* walkArtifactJsons(full); - } - } -} - -function* walkSolSources(dir, prefix = "") { - if (!existsSync(dir)) return; - for (const name of readdirSync(dir)) { - const full = join(dir, name); - if (statSync(full).isDirectory()) { - if (EXCLUDED_DIRS.includes(name)) continue; - yield* walkSolSources(full, join(prefix, name)); - } else if (name.endsWith(".sol")) { - yield join(prefix, name); - } - } -} - -function buildPrecompiles() { - if (!existsSync(ARTIFACTS)) { - console.log("Compiling with Hardhat..."); - execSync("pnpm exec hardhat compile", { - cwd: ROOT, - stdio: "inherit", - }); - } - if (!existsSync(ARTIFACTS)) { - console.error("No artifacts at", ARTIFACTS, "- run: pnpm exec hardhat compile"); - process.exit(1); - } - - ensureDir(DIST_ABI); - - const copiedSol = new Set(); - let count = 0; - - for (const jsonPath of walkArtifactJsons(ARTIFACTS)) { - const rel = jsonPath.slice(ARTIFACTS.length + 1); - if (EXCLUDED_DIRS.some((d) => rel.includes(d))) continue; - - const artifact = JSON.parse(readFileSync(jsonPath, "utf8")); - const sourceName = artifact.sourceName; // e.g. "solidity/precompiles/bank/IBank.sol" - if (!sourceName || !sourceName.startsWith("solidity/precompiles/")) continue; - - const relFromSolidity = sourceName.replace(/^solidity\//, ""); // precompiles/bank/IBank.sol - const solPath = join(SOLIDITY_SOURCE, relFromSolidity); - const abiOutPath = join(DIST_ABI, relFromSolidity.replace(".sol", ".json")); - const solOutPath = join(DIST, relFromSolidity); - - ensureDir(dirname(abiOutPath)); - ensureDir(dirname(solOutPath)); - - writeFileSync(abiOutPath, JSON.stringify(artifact.abi ?? [], null, 2), "utf8"); - if (existsSync(solPath)) { - cpSync(solPath, solOutPath); - copiedSol.add(relFromSolidity); - } - count++; - console.log(" ", relFromSolidity); - } - - // Copy .sol sources that have no artifact (e.g. common/Types.sol with only structs) - const precompilesSource = join(SOLIDITY_SOURCE, "precompiles"); - for (const rel of walkSolSources(precompilesSource)) { - const relFromSolidity = join("precompiles", rel); - if (copiedSol.has(relFromSolidity)) continue; - const solPath = join(SOLIDITY_SOURCE, relFromSolidity); - const solOutPath = join(DIST, relFromSolidity); - ensureDir(dirname(solOutPath)); - cpSync(solPath, solOutPath); - count++; - console.log(" ", relFromSolidity, "(no ABI)"); - } - - console.log("\nDone. Built", count, "precompile file(s) to dist/ (OpenZeppelin style)."); -} - -buildPrecompiles(); diff --git a/contracts/solidity/ContractCreationTester.json b/contracts/solidity/ContractCreationTester.json index 7815f26a1..78c9b8818 100644 --- a/contracts/solidity/ContractCreationTester.json +++ b/contracts/solidity/ContractCreationTester.json @@ -275,11 +275,11 @@ "type": "receive" } ], - "bytecode": "0x60808060405234601557610ed6908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806308811397146109ce5780637a0aaa5b146108045780637d5b953914610703578063aabf1086146105a9578063b203934e1461058d578063c242737f14610511578063c53e5ae31461047d578063e71b671a1461027e5763edab92990361000e576100b1602061008f36610ad8565b929491604094919451809381926353266bbb60e01b8352883060048501610bb2565b03815f6108005af180156101f457610261575b505f516020610e815f395f51905f52604051806100e081610c1d565b0390a1604051926101c892838501948086106001600160401b0387111761024d5760208161016e978297610c9983395f815203019082f0806101ff5750505f516020610e815f395f51905f52608060405160408152600660408201526563726561746560d01b60608201525f86820152a15b6040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576101c7575b5f516020610e815f395f51905f52604051806101c281906040825260096040830152683232b632b3b0ba329960b91b60608301526001602060808401930152565b0390a1005b6101e89060203d6020116101ed575b6101e08183610a1c565b810190610b9a565b610181565b503d6101d6565b6040513d5f823e3d90fd5b6001600160a01b0316905f516020610e615f395f51905f5290859061022384610b11565b604051908152a25f516020610e815f395f51905f526040518061024581610b72565b0390a1610152565b634e487b7160e01b5f52604160045260245ffd5b6102799060203d6020116101ed576101e08183610a1c565b6100c4565b60206102f661028c36610a9e565b949260409291925163c53e5ae360e01b8152816004820152848160248185305af15f918161044e575b506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b0390a16040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576103c7575b505f516020610e815f395f51905f526040518061032581610bf3565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019082f080156101f4576001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b604051908152a25f516020610e815f395f51905f52604051806101c2819060408252600760408301526631b932b0ba329960c91b60608301526001602060808401930152565b6103df9060203d6020116101ed576101e08183610a1c565b610309565b6001600160a01b0316905f516020610e615f395f51905f5290859061040884610b11565b604051908152a25f516020610e815f395f51905f526040518061024581906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b61046f919250863d8811610476575b6104678183610a1c565b810190610c48565b90886102b5565b503d61045d565b602036600319011261050d576040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f8152030190600435f0156101f45760405162461bcd60e51b815260206004820152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b5f80fd5b3461050d57602036600319011261050d576004355f54811015610552576105396020916109f2565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461050d575f36600319011261050d5760205f54604051908152f35b60206106016105b736610a9e565b949260409291925163c53e5ae360e01b815281600482015284816024815f305af15f918161044e57506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b03815f6108005af180156101f4576106e6575b505f516020610e815f395f51905f526040518061063081610bf3565b0390a160405163c53e5ae360e01b8152600481018290526020816024815f305af15f91816106c5575b506106a05750505f516020610e815f395f51905f52608060405160408152601060408201526f18dc99585d194c97dc995d995c9d195960821b60608201525f6020820152a1005b6001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b6106df91925060203d602011610476576104678183610a1c565b9083610659565b6106fe9060203d6020116101ed576101e08183610a1c565b610614565b602061073361071136610ad8565b929391604095919551809381926353266bbb60e01b8352873060048501610bb2565b03815f6108005af180156101f4576107e7575b505f516020610e815f395f51905f526040518061076281610c1d565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019084f09182156101f45761016e936020936001600160a01b0316905f516020610e615f395f51905f529085906107c584610b11565b604051908152a25f516020610e815f395f51905f52604051806102d781610b72565b6107ff9060203d6020116101ed576101e08183610a1c565b610746565b61080d36610a9e565b9192906040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019083f09081156101f457602094610870935f516020610e615f395f51905f52879460018060a01b03169788926107c584610b11565b03815f6108005af190816109b1575b5061098e575f516020610e815f395f51905f52608060405160408152600860408201526764656c656761746560c01b60608201525f6020820152a15b5f80808084865af13d15610989573d6108d381610a3d565b906108e16040519283610a1c565b81525f60203d92013e5b156109505760207ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e5291604051908152a25f516020610e815f395f51905f5260806040516040815260046040820152631cd95b9960e21b606082015260016020820152a1005b60405162461bcd60e51b815260206004820152601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6108eb565b5f516020610e815f395f51905f52604051806109a981610bf3565b0390a16108bb565b6109c99060203d6020116101ed576101e08183610a1c565b61087f565b3461050d57602036600319011261050d576004355f5481101561050d576105396020915b5f54811015610a08575f805260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b90601f801991011681019081106001600160401b0382111761024d57604052565b6001600160401b03811161024d57601f01601f191660200190565b81601f8201121561050d57803590610a6f82610a3d565b92610a7d6040519485610a1c565b8284526020838301011161050d57815f926020809301838601378301015290565b90608060031983011261050d5760043591602435906001600160401b03821161050d57610acd91600401610a58565b906044359060643590565b608060031982011261050d57600435906001600160401b03821161050d57610b0291600401610a58565b90602435906044359060643590565b5f54600160401b81101561024d57600181015f555f54811015610a08575f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b03909216919091179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b9081602091031261050d5751801515810361050d5790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b9081602091031261050d57516001600160a01b038116810361050d5790565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f60206080840193015256fe6080601f6101c838819003918201601f19168301916001600160401b0383118484101760da5780849260209460405283398101031260d65751801515810360d6576091573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160d990816100ef8239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f3560e01c90816302d05d3f146082575080632096525514606457633fa4f245146064575f600e565b34607e575f366003190112607e5760205f54604051908152f35b5f80fd5b34607e575f366003190112607e576001546001600160a01b03168152602090f3fea2646970667358221220f241ecbe432960ceeccc84eface7bd640111f8aef7cc640f5ac908271f1b93f064736f6c634300081c00331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a264697066735822122069cbc93d99d111c3eb9ceefdc0b1a14ddfcd7c4945436d669f3e61964c53aec364736f6c634300081c0033", - "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806308811397146109ce5780637a0aaa5b146108045780637d5b953914610703578063aabf1086146105a9578063b203934e1461058d578063c242737f14610511578063c53e5ae31461047d578063e71b671a1461027e5763edab92990361000e576100b1602061008f36610ad8565b929491604094919451809381926353266bbb60e01b8352883060048501610bb2565b03815f6108005af180156101f457610261575b505f516020610e815f395f51905f52604051806100e081610c1d565b0390a1604051926101c892838501948086106001600160401b0387111761024d5760208161016e978297610c9983395f815203019082f0806101ff5750505f516020610e815f395f51905f52608060405160408152600660408201526563726561746560d01b60608201525f86820152a15b6040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576101c7575b5f516020610e815f395f51905f52604051806101c281906040825260096040830152683232b632b3b0ba329960b91b60608301526001602060808401930152565b0390a1005b6101e89060203d6020116101ed575b6101e08183610a1c565b810190610b9a565b610181565b503d6101d6565b6040513d5f823e3d90fd5b6001600160a01b0316905f516020610e615f395f51905f5290859061022384610b11565b604051908152a25f516020610e815f395f51905f526040518061024581610b72565b0390a1610152565b634e487b7160e01b5f52604160045260245ffd5b6102799060203d6020116101ed576101e08183610a1c565b6100c4565b60206102f661028c36610a9e565b949260409291925163c53e5ae360e01b8152816004820152848160248185305af15f918161044e575b506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b0390a16040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576103c7575b505f516020610e815f395f51905f526040518061032581610bf3565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019082f080156101f4576001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b604051908152a25f516020610e815f395f51905f52604051806101c2819060408252600760408301526631b932b0ba329960c91b60608301526001602060808401930152565b6103df9060203d6020116101ed576101e08183610a1c565b610309565b6001600160a01b0316905f516020610e615f395f51905f5290859061040884610b11565b604051908152a25f516020610e815f395f51905f526040518061024581906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b61046f919250863d8811610476575b6104678183610a1c565b810190610c48565b90886102b5565b503d61045d565b602036600319011261050d576040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f8152030190600435f0156101f45760405162461bcd60e51b815260206004820152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b5f80fd5b3461050d57602036600319011261050d576004355f54811015610552576105396020916109f2565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461050d575f36600319011261050d5760205f54604051908152f35b60206106016105b736610a9e565b949260409291925163c53e5ae360e01b815281600482015284816024815f305af15f918161044e57506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b03815f6108005af180156101f4576106e6575b505f516020610e815f395f51905f526040518061063081610bf3565b0390a160405163c53e5ae360e01b8152600481018290526020816024815f305af15f91816106c5575b506106a05750505f516020610e815f395f51905f52608060405160408152601060408201526f18dc99585d194c97dc995d995c9d195960821b60608201525f6020820152a1005b6001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b6106df91925060203d602011610476576104678183610a1c565b9083610659565b6106fe9060203d6020116101ed576101e08183610a1c565b610614565b602061073361071136610ad8565b929391604095919551809381926353266bbb60e01b8352873060048501610bb2565b03815f6108005af180156101f4576107e7575b505f516020610e815f395f51905f526040518061076281610c1d565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019084f09182156101f45761016e936020936001600160a01b0316905f516020610e615f395f51905f529085906107c584610b11565b604051908152a25f516020610e815f395f51905f52604051806102d781610b72565b6107ff9060203d6020116101ed576101e08183610a1c565b610746565b61080d36610a9e565b9192906040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019083f09081156101f457602094610870935f516020610e615f395f51905f52879460018060a01b03169788926107c584610b11565b03815f6108005af190816109b1575b5061098e575f516020610e815f395f51905f52608060405160408152600860408201526764656c656761746560c01b60608201525f6020820152a15b5f80808084865af13d15610989573d6108d381610a3d565b906108e16040519283610a1c565b81525f60203d92013e5b156109505760207ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e5291604051908152a25f516020610e815f395f51905f5260806040516040815260046040820152631cd95b9960e21b606082015260016020820152a1005b60405162461bcd60e51b815260206004820152601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6108eb565b5f516020610e815f395f51905f52604051806109a981610bf3565b0390a16108bb565b6109c99060203d6020116101ed576101e08183610a1c565b61087f565b3461050d57602036600319011261050d576004355f5481101561050d576105396020915b5f54811015610a08575f805260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b90601f801991011681019081106001600160401b0382111761024d57604052565b6001600160401b03811161024d57601f01601f191660200190565b81601f8201121561050d57803590610a6f82610a3d565b92610a7d6040519485610a1c565b8284526020838301011161050d57815f926020809301838601378301015290565b90608060031983011261050d5760043591602435906001600160401b03821161050d57610acd91600401610a58565b906044359060643590565b608060031982011261050d57600435906001600160401b03821161050d57610b0291600401610a58565b90602435906044359060643590565b5f54600160401b81101561024d57600181015f555f54811015610a08575f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b03909216919091179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b9081602091031261050d5751801515810361050d5790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b9081602091031261050d57516001600160a01b038116810361050d5790565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f60206080840193015256fe6080601f6101c838819003918201601f19168301916001600160401b0383118484101760da5780849260209460405283398101031260d65751801515810360d6576091573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160d990816100ef8239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f3560e01c90816302d05d3f146082575080632096525514606457633fa4f245146064575f600e565b34607e575f366003190112607e5760205f54604051908152f35b5f80fd5b34607e575f366003190112607e576001546001600160a01b03168152602090f3fea2646970667358221220f241ecbe432960ceeccc84eface7bd640111f8aef7cc640f5ac908271f1b93f064736f6c634300081c00331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a264697066735822122069cbc93d99d111c3eb9ceefdc0b1a14ddfcd7c4945436d669f3e61964c53aec364736f6c634300081c0033", + "bytecode": "0x60808060405234601557610ed6908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806308811397146109ce5780637a0aaa5b146108045780637d5b953914610703578063aabf1086146105a9578063b203934e1461058d578063c242737f14610511578063c53e5ae31461047d578063e71b671a1461027e5763edab92990361000e576100b1602061008f36610ad8565b929491604094919451809381926353266bbb60e01b8352883060048501610bb2565b03815f6108005af180156101f457610261575b505f516020610e815f395f51905f52604051806100e081610c1d565b0390a1604051926101c892838501948086106001600160401b0387111761024d5760208161016e978297610c9983395f815203019082f0806101ff5750505f516020610e815f395f51905f52608060405160408152600660408201526563726561746560d01b60608201525f86820152a15b6040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576101c7575b5f516020610e815f395f51905f52604051806101c281906040825260096040830152683232b632b3b0ba329960b91b60608301526001602060808401930152565b0390a1005b6101e89060203d6020116101ed575b6101e08183610a1c565b810190610b9a565b610181565b503d6101d6565b6040513d5f823e3d90fd5b6001600160a01b0316905f516020610e615f395f51905f5290859061022384610b11565b604051908152a25f516020610e815f395f51905f526040518061024581610b72565b0390a1610152565b634e487b7160e01b5f52604160045260245ffd5b6102799060203d6020116101ed576101e08183610a1c565b6100c4565b60206102f661028c36610a9e565b949260409291925163c53e5ae360e01b8152816004820152848160248185305af15f918161044e575b506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b0390a16040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576103c7575b505f516020610e815f395f51905f526040518061032581610bf3565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019082f080156101f4576001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b604051908152a25f516020610e815f395f51905f52604051806101c2819060408252600760408301526631b932b0ba329960c91b60608301526001602060808401930152565b6103df9060203d6020116101ed576101e08183610a1c565b610309565b6001600160a01b0316905f516020610e615f395f51905f5290859061040884610b11565b604051908152a25f516020610e815f395f51905f526040518061024581906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b61046f919250863d8811610476575b6104678183610a1c565b810190610c48565b90886102b5565b503d61045d565b602036600319011261050d576040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f8152030190600435f0156101f45760405162461bcd60e51b815260206004820152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b5f80fd5b3461050d57602036600319011261050d576004355f54811015610552576105396020916109f2565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461050d575f36600319011261050d5760205f54604051908152f35b60206106016105b736610a9e565b949260409291925163c53e5ae360e01b815281600482015284816024815f305af15f918161044e57506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b03815f6108005af180156101f4576106e6575b505f516020610e815f395f51905f526040518061063081610bf3565b0390a160405163c53e5ae360e01b8152600481018290526020816024815f305af15f91816106c5575b506106a05750505f516020610e815f395f51905f52608060405160408152601060408201526f18dc99585d194c97dc995d995c9d195960821b60608201525f6020820152a1005b6001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b6106df91925060203d602011610476576104678183610a1c565b9083610659565b6106fe9060203d6020116101ed576101e08183610a1c565b610614565b602061073361071136610ad8565b929391604095919551809381926353266bbb60e01b8352873060048501610bb2565b03815f6108005af180156101f4576107e7575b505f516020610e815f395f51905f526040518061076281610c1d565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019084f09182156101f45761016e936020936001600160a01b0316905f516020610e615f395f51905f529085906107c584610b11565b604051908152a25f516020610e815f395f51905f52604051806102d781610b72565b6107ff9060203d6020116101ed576101e08183610a1c565b610746565b61080d36610a9e565b9192906040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019083f09081156101f457602094610870935f516020610e615f395f51905f52879460018060a01b03169788926107c584610b11565b03815f6108005af190816109b1575b5061098e575f516020610e815f395f51905f52608060405160408152600860408201526764656c656761746560c01b60608201525f6020820152a15b5f80808084865af13d15610989573d6108d381610a3d565b906108e16040519283610a1c565b81525f60203d92013e5b156109505760207ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e5291604051908152a25f516020610e815f395f51905f5260806040516040815260046040820152631cd95b9960e21b606082015260016020820152a1005b60405162461bcd60e51b815260206004820152601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6108eb565b5f516020610e815f395f51905f52604051806109a981610bf3565b0390a16108bb565b6109c99060203d6020116101ed576101e08183610a1c565b61087f565b3461050d57602036600319011261050d576004355f5481101561050d576105396020915b5f54811015610a08575f805260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b90601f801991011681019081106001600160401b0382111761024d57604052565b6001600160401b03811161024d57601f01601f191660200190565b81601f8201121561050d57803590610a6f82610a3d565b92610a7d6040519485610a1c565b8284526020838301011161050d57815f926020809301838601378301015290565b90608060031983011261050d5760043591602435906001600160401b03821161050d57610acd91600401610a58565b906044359060643590565b608060031982011261050d57600435906001600160401b03821161050d57610b0291600401610a58565b90602435906044359060643590565b5f54600160401b81101561024d57600181015f555f54811015610a08575f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b03909216919091179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b9081602091031261050d5751801515810361050d5790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b9081602091031261050d57516001600160a01b038116810361050d5790565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f60206080840193015256fe6080601f6101c838819003918201601f19168301916001600160401b0383118484101760da5780849260209460405283398101031260d65751801515810360d6576091573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160d990816100ef8239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f3560e01c90816302d05d3f146082575080632096525514606457633fa4f245146064575f600e565b34607e575f366003190112607e5760205f54604051908152f35b5f80fd5b34607e575f366003190112607e576001546001600160a01b03168152602090f3fea2646970667358221220a577a2787a6aa441469f55d1240fd02c29f1844ed2212eb551287d9c3f2a5c9e64736f6c634300081c00331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212209ed4df20657348b1bea0dbd7cef27b323e7bdcc70dbc9df5c06e68656a05944864736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806308811397146109ce5780637a0aaa5b146108045780637d5b953914610703578063aabf1086146105a9578063b203934e1461058d578063c242737f14610511578063c53e5ae31461047d578063e71b671a1461027e5763edab92990361000e576100b1602061008f36610ad8565b929491604094919451809381926353266bbb60e01b8352883060048501610bb2565b03815f6108005af180156101f457610261575b505f516020610e815f395f51905f52604051806100e081610c1d565b0390a1604051926101c892838501948086106001600160401b0387111761024d5760208161016e978297610c9983395f815203019082f0806101ff5750505f516020610e815f395f51905f52608060405160408152600660408201526563726561746560d01b60608201525f86820152a15b6040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576101c7575b5f516020610e815f395f51905f52604051806101c281906040825260096040830152683232b632b3b0ba329960b91b60608301526001602060808401930152565b0390a1005b6101e89060203d6020116101ed575b6101e08183610a1c565b810190610b9a565b610181565b503d6101d6565b6040513d5f823e3d90fd5b6001600160a01b0316905f516020610e615f395f51905f5290859061022384610b11565b604051908152a25f516020610e815f395f51905f526040518061024581610b72565b0390a1610152565b634e487b7160e01b5f52604160045260245ffd5b6102799060203d6020116101ed576101e08183610a1c565b6100c4565b60206102f661028c36610a9e565b949260409291925163c53e5ae360e01b8152816004820152848160248185305af15f918161044e575b506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b0390a16040516353266bbb60e01b815293849283923060048501610bb2565b03815f6108005af180156101f4576103c7575b505f516020610e815f395f51905f526040518061032581610bf3565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019082f080156101f4576001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b604051908152a25f516020610e815f395f51905f52604051806101c2819060408252600760408301526631b932b0ba329960c91b60608301526001602060808401930152565b6103df9060203d6020116101ed576101e08183610a1c565b610309565b6001600160a01b0316905f516020610e615f395f51905f5290859061040884610b11565b604051908152a25f516020610e815f395f51905f526040518061024581906040825260076040830152666372656174653160c81b60608301526001602060808401930152565b61046f919250863d8811610476575b6104678183610a1c565b810190610c48565b90886102b5565b503d61045d565b602036600319011261050d576040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f8152030190600435f0156101f45760405162461bcd60e51b815260206004820152602160248201527f496e74656e74696f6e616c20726576657274206166746572206372656174696f6044820152603760f91b6064820152608490fd5b5f80fd5b3461050d57602036600319011261050d576004355f54811015610552576105396020916109f2565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461050d575f36600319011261050d5760205f54604051908152f35b60206106016105b736610a9e565b949260409291925163c53e5ae360e01b815281600482015284816024815f305af15f918161044e57506103e45750505f516020610e815f395f51905f52604051806102d781610c67565b03815f6108005af180156101f4576106e6575b505f516020610e815f395f51905f526040518061063081610bf3565b0390a160405163c53e5ae360e01b8152600481018290526020816024815f305af15f91816106c5575b506106a05750505f516020610e815f395f51905f52608060405160408152601060408201526f18dc99585d194c97dc995d995c9d195960821b60608201525f6020820152a1005b6001600160a01b0316905f516020610e615f395f51905f529060209061038184610b11565b6106df91925060203d602011610476576104678183610a1c565b9083610659565b6106fe9060203d6020116101ed576101e08183610a1c565b610614565b602061073361071136610ad8565b929391604095919551809381926353266bbb60e01b8352873060048501610bb2565b03815f6108005af180156101f4576107e7575b505f516020610e815f395f51905f526040518061076281610c1d565b0390a16040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019084f09182156101f45761016e936020936001600160a01b0316905f516020610e615f395f51905f529085906107c584610b11565b604051908152a25f516020610e815f395f51905f52604051806102d781610b72565b6107ff9060203d6020116101ed576101e08183610a1c565b610746565b61080d36610a9e565b9192906040516101c8808201908282106001600160401b0383111761024d576020918391610c9983395f815203019083f09081156101f457602094610870935f516020610e615f395f51905f52879460018060a01b03169788926107c584610b11565b03815f6108005af190816109b1575b5061098e575f516020610e815f395f51905f52608060405160408152600860408201526764656c656761746560c01b60608201525f6020820152a15b5f80808084865af13d15610989573d6108d381610a3d565b906108e16040519283610a1c565b81525f60203d92013e5b156109505760207ffb17d0033e42e6a76759d2c7c2795a304dfbba80679160ae60dc91aad4966e5291604051908152a25f516020610e815f395f51905f5260806040516040815260046040820152631cd95b9960e21b606082015260016020820152a1005b60405162461bcd60e51b815260206004820152601160248201527015985b1d59481cd95b990819985a5b1959607a1b6044820152606490fd5b6108eb565b5f516020610e815f395f51905f52604051806109a981610bf3565b0390a16108bb565b6109c99060203d6020116101ed576101e08183610a1c565b61087f565b3461050d57602036600319011261050d576004355f5481101561050d576105396020915b5f54811015610a08575f805260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b90601f801991011681019081106001600160401b0382111761024d57604052565b6001600160401b03811161024d57601f01601f191660200190565b81601f8201121561050d57803590610a6f82610a3d565b92610a7d6040519485610a1c565b8284526020838301011161050d57815f926020809301838601378301015290565b90608060031983011261050d5760043591602435906001600160401b03821161050d57610acd91600401610a58565b906044359060643590565b608060031982011261050d57600435906001600160401b03821161050d57610b0291600401610a58565b90602435906044359060643590565b5f54600160401b81101561024d57600181015f555f54811015610a08575f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5630180546001600160a01b0319166001600160a01b03909216919091179055565b9060408252600660408301526563726561746560d01b60608301526001602060808401930152565b9081602091031261050d5751801515810361050d5790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600960408301526864656c65676174653160b81b60608301526001602060808401930152565b9081602091031261050d57516001600160a01b038116810361050d5790565b9060408252601060408301526f18dc99585d194c57dc995d995c9d195960821b60608301525f60206080840193015256fe6080601f6101c838819003918201601f19168301916001600160401b0383118484101760da5780849260209460405283398101031260d65751801515810360d6576091573360018060a01b03196001541617600155345f556040513481527fb263f5c1dda4b5b44a8d5658a105c64b6ec61c79463b79a1d0052a834d00fdc460203392a260405160d990816100ef8239f35b60405162461bcd60e51b815260206004820152601e60248201527f496e74656e74696f6e616c20636f6e7374727563746f722072657665727400006044820152606490fd5b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015603b575b5036156018575f80fd5b5f543481018091116027575f55005b634e487b7160e01b5f52601160045260245ffd5b5f3560e01c90816302d05d3f146082575080632096525514606457633fa4f245146064575f600e565b34607e575f366003190112607e5760205f54604051908152f35b5f80fd5b34607e575f366003190112607e576001546001600160a01b03168152602090f3fea2646970667358221220a577a2787a6aa441469f55d1240fd02c29f1844ed2212eb551287d9c3f2a5c9e64736f6c634300081c00331dc05c1d6a563dddb6c22082af72b54ec2f0207ceb55db5d13cdabc208f303a99f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212209ed4df20657348b1bea0dbd7cef27b323e7bdcc70dbc9df5c06e68656a05944864736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/ContractCreationTester.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/DebugPrecompileCaller.json b/contracts/solidity/DebugPrecompileCaller.json index b92da9602..6f1c4bbe3 100644 --- a/contracts/solidity/DebugPrecompileCaller.json +++ b/contracts/solidity/DebugPrecompileCaller.json @@ -28,11 +28,11 @@ "type": "function" } ], - "bytecode": "0x608080604052346015576101cb908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c63ff585caf14610024575f80fd5b34610042576020366003190112610042576100406004356100e5565b005b5f80fd5b90601f8019910116810190811067ffffffffffffffff82111761006857604052565b634e487b7160e01b5f52604160045260245ffd5b3d156100b6573d9067ffffffffffffffff821161006857604051916100ab601f8201601f191660200184610046565b82523d5f602084013e565b606090565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b5f5b818110610156575060038111610153575f80916040516020810191838352602182015260218152610119604182610046565b5190826107995af161012961007c565b90156101325750565b60405163a5fa8d2b60e01b815290819061014f90600483016100bb565b0390fd5b50565b5f806040516020810190600160f81b825260018152610176602182610046565b5190826107995af161018661007c565b901561013257506001016100e756fea2646970667358221220c87e5cafa66af43148aa4e707bc698e292e29c1fe46048687354d68c516b860364736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c63ff585caf14610024575f80fd5b34610042576020366003190112610042576100406004356100e5565b005b5f80fd5b90601f8019910116810190811067ffffffffffffffff82111761006857604052565b634e487b7160e01b5f52604160045260245ffd5b3d156100b6573d9067ffffffffffffffff821161006857604051916100ab601f8201601f191660200184610046565b82523d5f602084013e565b606090565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b5f5b818110610156575060038111610153575f80916040516020810191838352602182015260218152610119604182610046565b5190826107995af161012961007c565b90156101325750565b60405163a5fa8d2b60e01b815290819061014f90600483016100bb565b0390fd5b50565b5f806040516020810190600160f81b825260018152610176602182610046565b5190826107995af161018661007c565b901561013257506001016100e756fea2646970667358221220c87e5cafa66af43148aa4e707bc698e292e29c1fe46048687354d68c516b860364736f6c634300081c0033", + "bytecode": "0x608080604052346015576101cb908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c63ff585caf14610024575f80fd5b34610042576020366003190112610042576100406004356100e5565b005b5f80fd5b90601f8019910116810190811067ffffffffffffffff82111761006857604052565b634e487b7160e01b5f52604160045260245ffd5b3d156100b6573d9067ffffffffffffffff821161006857604051916100ab601f8201601f191660200184610046565b82523d5f602084013e565b606090565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b5f5b818110610156575060038111610153575f80916040516020810191838352602182015260218152610119604182610046565b5190826107995af161012961007c565b90156101325750565b60405163a5fa8d2b60e01b815290819061014f90600483016100bb565b0390fd5b50565b5f806040516020810190600160f81b825260018152610176602182610046565b5190826107995af161018661007c565b901561013257506001016100e756fea2646970667358221220ab43bd347954ece986e0ee7b562258fb5a7e249e807dac24fd9f5058e6ba30c564736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c63ff585caf14610024575f80fd5b34610042576020366003190112610042576100406004356100e5565b005b5f80fd5b90601f8019910116810190811067ffffffffffffffff82111761006857604052565b634e487b7160e01b5f52604160045260245ffd5b3d156100b6573d9067ffffffffffffffff821161006857604051916100ab601f8201601f191660200184610046565b82523d5f602084013e565b606090565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b5f5b818110610156575060038111610153575f80916040516020810191838352602182015260218152610119604182610046565b5190826107995af161012961007c565b90156101325750565b60405163a5fa8d2b60e01b815290819061014f90600483016100bb565b0390fd5b50565b5f806040516020810190600160f81b825260018152610176602182610046565b5190826107995af161018661007c565b901561013257506001016100e756fea2646970667358221220ab43bd347954ece986e0ee7b562258fb5a7e249e807dac24fd9f5058e6ba30c564736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/DebugPrecompileCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/ERC20MinterBurnerDecimals.json b/contracts/solidity/ERC20MinterBurnerDecimals.json index 1922160ec..2f7cc37b2 100644 --- a/contracts/solidity/ERC20MinterBurnerDecimals.json +++ b/contracts/solidity/ERC20MinterBurnerDecimals.json @@ -789,11 +789,11 @@ "type": "function" } ], - "bytecode": "0x60806040523461045b57611aa5803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611269908161073c8239f35b5f5160206119c55f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611a255f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611a455f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611a855f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a855f395f51905f5260205260408120805460ff191660011790553391905f5160206119a55f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206119e55f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f5160206119e55f395f51905f5260205260408120805460ff191660011790553391905f516020611a455f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a055f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a055f395f51905f5260205260408120805460ff191660011790553391905f516020611a255f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a655f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a655f395f51905f5260205260408120805460ff191660011790553391905f5160206119c55f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610c4d5750806306fdde0314610b92578063095ea7b314610aea57806318160ddd14610acd5780631cf2c7e214610a1e57806323b872dd146109e6578063248a9ca3146109b4578063282c51f31461097a5780632f2ff15d14610915578063313ce567146108f257806336568abe146108ae5780633f4ba83a146107c257806340c10f191461069e57806342966c68146106815780635c975abb1461065f57806370a082311461062757806379cc6790146105f75780638456cb591461051c5780639010d07c146104d757806391d148541461048f57806395d89b411461038b578063a217fddf14610371578063a3246ad3146102c2578063a9059cbb14610291578063ca15c87314610267578063d53913931461022d578063d547741f146101e9578063dd62ed3e146101995763e63ab1e91461015b575f80fd5b34610195575f3660031901126101955760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b34610195576040366003190112610195576101b2610ce4565b6101ba610cfa565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101955760403660031901126101955761022b600435610208610cfa565b90610226610221825f525f602052600160405f20015490565b610f06565b610f3e565b005b34610195575f3660031901126101955760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b34610195576020366003190112610195576004355f526001602052602060405f2054604051908152f35b34610195576040366003190112610195576102b76102ad610ce4565b6024359033610e77565b602060405160018152f35b34610195576020366003190112610195576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b81811061035b5750505081610310910382610d10565b604051918291602083019060208452518091526040830191905f5b818110610339575050500390f35b82516001600160a01b031684528594506020938401939092019160010161032b565b82548452602090930192600192830192016102fa565b34610195575f3660031901126101955760206040515f8152f35b34610195575f366003190112610195576040515f6006548060011c90600181168015610485575b6020831081146104715782855290811561044d57506001146103ef575b6103eb836103df81850382610d10565b60405191829182610cba565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610433575090915081016020016103df6103cf565b91926001816020925483858801015201910190929161041b565b60ff191660208086019190915291151560051b840190910191506103df90506103cf565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103b2565b34610195576040366003190112610195576104a8610cfa565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610195576040366003190112610195576004355f526001602052602061050360243560405f2061109b565b905460405160039290921b1c6001600160a01b03168152f35b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105a35761056a611080565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f5160206112145f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101955760403660031901126101955761022b610613610ce4565b60243590610622823383610dd4565b610d46565b34610195576020366003190112610195576001600160a01b03610648610ce4565b165f526002602052602060405f2054604051908152f35b34610195575f36600319011261019557602060ff600754166040519015158152f35b346101955760203660031901126101955761022b60043533610d46565b34610195576040366003190112610195576106b7610ce4565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff161561076f576001600160a01b031690811561075c5761070a611080565b600454908082018092116107485760205f5160206111f45f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108565760075460ff8116156108475760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f5160206112145f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b34610195576040366003190112610195576108c7610cfa565b336001600160a01b038216036108e35761022b90600435610f3e565b63334bd91960e11b5f5260045ffd5b34610195575f36600319011261019557602060ff60075460081c16604051908152f35b3461019557604036600319011261019557600435610931610cfa565b610949610221835f525f602052600160405f20015490565b6109538183610f78565b61095957005b5f9182526001602052604090912061022b916001600160a01b0316906110c4565b34610195575f3660031901126101955760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101955760203660031901126101955760206109de6004355f525f602052600160405f20015490565b604051908152f35b34610195576060366003190112610195576102b7610a02610ce4565b610a0a610cfa565b60443591610a19833383610dd4565b610e77565b3461019557604036600319011261019557610a37610ce4565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610a7a5761022b9060243590610d46565b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b34610195575f366003190112610195576020600454604051908152f35b3461019557604036600319011261019557610b03610ce4565b602435903315610b7f576001600160a01b0316908115610b6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b34610195575f366003190112610195576040515f6005548060011c90600181168015610c43575b6020831081146104715782855290811561044d5750600114610be5576103eb836103df81850382610d10565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610c29575090915081016020016103df6103cf565b919260018160209254838588010152019101909291610c11565b91607f1691610bb9565b34610195576020366003190112610195576004359063ffffffff60e01b821680920361019557602091635a05180f60e01b8114908115610c8f575b5015158152f35b637965db0b60e01b811491508115610ca9575b5083610c88565b6301ffc9a760e01b14905083610ca2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019557565b602435906001600160a01b038216820361019557565b90601f8019910116810190811067ffffffffffffffff821117610d3257604052565b634e487b7160e01b5f52604160045260245ffd5b9091906001600160a01b03168015610dc157610d60611080565b805f52600260205260405f2054838110610da7576020845f94955f5160206111f45f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f198410610e0e575b50505050565b828410610e54578015610b7f576001600160a01b03821615610b6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f808080610e08565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115610dc1576001600160a01b031691821561075c57610e9f611080565b815f52600260205260405f2054818110610eed57815f5160206111f45f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f8181526020818152604080832033845290915290205460ff1615610f285750565b63e2517d3f60e01b5f523360045260245260445ffd5b610f488282611000565b9182610f5357505090565b5f91825260016020526040909120610f74916001600160a01b03169061112e565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661108c57565b63d93c066560e01b5f5260045ffd5b80548210156110b0575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611127578054600160401b811015610d32576111146110fe82600187940185558461109b565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146111eb575f1981018181116107485782545f19810191908211610748578181036111b6575b505050805480156111a2575f190190611183828261109b565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6111d66111c66110fe938661109b565b90549060031b1c9283928661109b565b90555f528360205260405f20555f808061116a565b505050505f9056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a264697066735822122027d19e57fe18c64615bd1e57280210866a18f77a38baad3291e17215930a4c5164736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610c4d5750806306fdde0314610b92578063095ea7b314610aea57806318160ddd14610acd5780631cf2c7e214610a1e57806323b872dd146109e6578063248a9ca3146109b4578063282c51f31461097a5780632f2ff15d14610915578063313ce567146108f257806336568abe146108ae5780633f4ba83a146107c257806340c10f191461069e57806342966c68146106815780635c975abb1461065f57806370a082311461062757806379cc6790146105f75780638456cb591461051c5780639010d07c146104d757806391d148541461048f57806395d89b411461038b578063a217fddf14610371578063a3246ad3146102c2578063a9059cbb14610291578063ca15c87314610267578063d53913931461022d578063d547741f146101e9578063dd62ed3e146101995763e63ab1e91461015b575f80fd5b34610195575f3660031901126101955760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b34610195576040366003190112610195576101b2610ce4565b6101ba610cfa565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101955760403660031901126101955761022b600435610208610cfa565b90610226610221825f525f602052600160405f20015490565b610f06565b610f3e565b005b34610195575f3660031901126101955760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b34610195576020366003190112610195576004355f526001602052602060405f2054604051908152f35b34610195576040366003190112610195576102b76102ad610ce4565b6024359033610e77565b602060405160018152f35b34610195576020366003190112610195576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b81811061035b5750505081610310910382610d10565b604051918291602083019060208452518091526040830191905f5b818110610339575050500390f35b82516001600160a01b031684528594506020938401939092019160010161032b565b82548452602090930192600192830192016102fa565b34610195575f3660031901126101955760206040515f8152f35b34610195575f366003190112610195576040515f6006548060011c90600181168015610485575b6020831081146104715782855290811561044d57506001146103ef575b6103eb836103df81850382610d10565b60405191829182610cba565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610433575090915081016020016103df6103cf565b91926001816020925483858801015201910190929161041b565b60ff191660208086019190915291151560051b840190910191506103df90506103cf565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103b2565b34610195576040366003190112610195576104a8610cfa565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610195576040366003190112610195576004355f526001602052602061050360243560405f2061109b565b905460405160039290921b1c6001600160a01b03168152f35b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105a35761056a611080565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f5160206112145f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101955760403660031901126101955761022b610613610ce4565b60243590610622823383610dd4565b610d46565b34610195576020366003190112610195576001600160a01b03610648610ce4565b165f526002602052602060405f2054604051908152f35b34610195575f36600319011261019557602060ff600754166040519015158152f35b346101955760203660031901126101955761022b60043533610d46565b34610195576040366003190112610195576106b7610ce4565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff161561076f576001600160a01b031690811561075c5761070a611080565b600454908082018092116107485760205f5160206111f45f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108565760075460ff8116156108475760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f5160206112145f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b34610195576040366003190112610195576108c7610cfa565b336001600160a01b038216036108e35761022b90600435610f3e565b63334bd91960e11b5f5260045ffd5b34610195575f36600319011261019557602060ff60075460081c16604051908152f35b3461019557604036600319011261019557600435610931610cfa565b610949610221835f525f602052600160405f20015490565b6109538183610f78565b61095957005b5f9182526001602052604090912061022b916001600160a01b0316906110c4565b34610195575f3660031901126101955760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101955760203660031901126101955760206109de6004355f525f602052600160405f20015490565b604051908152f35b34610195576060366003190112610195576102b7610a02610ce4565b610a0a610cfa565b60443591610a19833383610dd4565b610e77565b3461019557604036600319011261019557610a37610ce4565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610a7a5761022b9060243590610d46565b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b34610195575f366003190112610195576020600454604051908152f35b3461019557604036600319011261019557610b03610ce4565b602435903315610b7f576001600160a01b0316908115610b6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b34610195575f366003190112610195576040515f6005548060011c90600181168015610c43575b6020831081146104715782855290811561044d5750600114610be5576103eb836103df81850382610d10565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610c29575090915081016020016103df6103cf565b919260018160209254838588010152019101909291610c11565b91607f1691610bb9565b34610195576020366003190112610195576004359063ffffffff60e01b821680920361019557602091635a05180f60e01b8114908115610c8f575b5015158152f35b637965db0b60e01b811491508115610ca9575b5083610c88565b6301ffc9a760e01b14905083610ca2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019557565b602435906001600160a01b038216820361019557565b90601f8019910116810190811067ffffffffffffffff821117610d3257604052565b634e487b7160e01b5f52604160045260245ffd5b9091906001600160a01b03168015610dc157610d60611080565b805f52600260205260405f2054838110610da7576020845f94955f5160206111f45f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f198410610e0e575b50505050565b828410610e54578015610b7f576001600160a01b03821615610b6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f808080610e08565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115610dc1576001600160a01b031691821561075c57610e9f611080565b815f52600260205260405f2054818110610eed57815f5160206111f45f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f8181526020818152604080832033845290915290205460ff1615610f285750565b63e2517d3f60e01b5f523360045260245260445ffd5b610f488282611000565b9182610f5357505090565b5f91825260016020526040909120610f74916001600160a01b03169061112e565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661108c57565b63d93c066560e01b5f5260045ffd5b80548210156110b0575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611127578054600160401b811015610d32576111146110fe82600187940185558461109b565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146111eb575f1981018181116107485782545f19810191908211610748578181036111b6575b505050805480156111a2575f190190611183828261109b565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6111d66111c66110fe938661109b565b90549060031b1c9283928661109b565b90555f528360205260405f20555f808061116a565b505050505f9056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a264697066735822122027d19e57fe18c64615bd1e57280210866a18f77a38baad3291e17215930a4c5164736f6c634300081c0033", + "bytecode": "0x60806040523461045b57611aa5803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611269908161073c8239f35b5f5160206119c55f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611a255f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611a455f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611a855f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a855f395f51905f5260205260408120805460ff191660011790553391905f5160206119a55f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206119e55f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f5160206119e55f395f51905f5260205260408120805460ff191660011790553391905f516020611a455f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a055f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a055f395f51905f5260205260408120805460ff191660011790553391905f516020611a255f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611a655f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611a655f395f51905f5260205260408120805460ff191660011790553391905f5160206119c55f395f51905f52905f5160206119a55f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610c4d5750806306fdde0314610b92578063095ea7b314610aea57806318160ddd14610acd5780631cf2c7e214610a1e57806323b872dd146109e6578063248a9ca3146109b4578063282c51f31461097a5780632f2ff15d14610915578063313ce567146108f257806336568abe146108ae5780633f4ba83a146107c257806340c10f191461069e57806342966c68146106815780635c975abb1461065f57806370a082311461062757806379cc6790146105f75780638456cb591461051c5780639010d07c146104d757806391d148541461048f57806395d89b411461038b578063a217fddf14610371578063a3246ad3146102c2578063a9059cbb14610291578063ca15c87314610267578063d53913931461022d578063d547741f146101e9578063dd62ed3e146101995763e63ab1e91461015b575f80fd5b34610195575f3660031901126101955760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b34610195576040366003190112610195576101b2610ce4565b6101ba610cfa565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101955760403660031901126101955761022b600435610208610cfa565b90610226610221825f525f602052600160405f20015490565b610f06565b610f3e565b005b34610195575f3660031901126101955760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b34610195576020366003190112610195576004355f526001602052602060405f2054604051908152f35b34610195576040366003190112610195576102b76102ad610ce4565b6024359033610e77565b602060405160018152f35b34610195576020366003190112610195576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b81811061035b5750505081610310910382610d10565b604051918291602083019060208452518091526040830191905f5b818110610339575050500390f35b82516001600160a01b031684528594506020938401939092019160010161032b565b82548452602090930192600192830192016102fa565b34610195575f3660031901126101955760206040515f8152f35b34610195575f366003190112610195576040515f6006548060011c90600181168015610485575b6020831081146104715782855290811561044d57506001146103ef575b6103eb836103df81850382610d10565b60405191829182610cba565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610433575090915081016020016103df6103cf565b91926001816020925483858801015201910190929161041b565b60ff191660208086019190915291151560051b840190910191506103df90506103cf565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103b2565b34610195576040366003190112610195576104a8610cfa565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610195576040366003190112610195576004355f526001602052602061050360243560405f2061109b565b905460405160039290921b1c6001600160a01b03168152f35b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105a35761056a611080565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f5160206112145f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101955760403660031901126101955761022b610613610ce4565b60243590610622823383610dd4565b610d46565b34610195576020366003190112610195576001600160a01b03610648610ce4565b165f526002602052602060405f2054604051908152f35b34610195575f36600319011261019557602060ff600754166040519015158152f35b346101955760203660031901126101955761022b60043533610d46565b34610195576040366003190112610195576106b7610ce4565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff161561076f576001600160a01b031690811561075c5761070a611080565b600454908082018092116107485760205f5160206111f45f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108565760075460ff8116156108475760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f5160206112145f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b34610195576040366003190112610195576108c7610cfa565b336001600160a01b038216036108e35761022b90600435610f3e565b63334bd91960e11b5f5260045ffd5b34610195575f36600319011261019557602060ff60075460081c16604051908152f35b3461019557604036600319011261019557600435610931610cfa565b610949610221835f525f602052600160405f20015490565b6109538183610f78565b61095957005b5f9182526001602052604090912061022b916001600160a01b0316906110c4565b34610195575f3660031901126101955760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101955760203660031901126101955760206109de6004355f525f602052600160405f20015490565b604051908152f35b34610195576060366003190112610195576102b7610a02610ce4565b610a0a610cfa565b60443591610a19833383610dd4565b610e77565b3461019557604036600319011261019557610a37610ce4565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610a7a5761022b9060243590610d46565b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b34610195575f366003190112610195576020600454604051908152f35b3461019557604036600319011261019557610b03610ce4565b602435903315610b7f576001600160a01b0316908115610b6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b34610195575f366003190112610195576040515f6005548060011c90600181168015610c43575b6020831081146104715782855290811561044d5750600114610be5576103eb836103df81850382610d10565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610c29575090915081016020016103df6103cf565b919260018160209254838588010152019101909291610c11565b91607f1691610bb9565b34610195576020366003190112610195576004359063ffffffff60e01b821680920361019557602091635a05180f60e01b8114908115610c8f575b5015158152f35b637965db0b60e01b811491508115610ca9575b5083610c88565b6301ffc9a760e01b14905083610ca2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019557565b602435906001600160a01b038216820361019557565b90601f8019910116810190811067ffffffffffffffff821117610d3257604052565b634e487b7160e01b5f52604160045260245ffd5b9091906001600160a01b03168015610dc157610d60611080565b805f52600260205260405f2054838110610da7576020845f94955f5160206111f45f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f198410610e0e575b50505050565b828410610e54578015610b7f576001600160a01b03821615610b6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f808080610e08565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115610dc1576001600160a01b031691821561075c57610e9f611080565b815f52600260205260405f2054818110610eed57815f5160206111f45f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f8181526020818152604080832033845290915290205460ff1615610f285750565b63e2517d3f60e01b5f523360045260245260445ffd5b610f488282611000565b9182610f5357505090565b5f91825260016020526040909120610f74916001600160a01b03169061112e565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661108c57565b63d93c066560e01b5f5260045ffd5b80548210156110b0575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611127578054600160401b811015610d32576111146110fe82600187940185558461109b565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146111eb575f1981018181116107485782545f19810191908211610748578181036111b6575b505050805480156111a2575f190190611183828261109b565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6111d66111c66110fe938661109b565b90549060031b1c9283928661109b565b90555f528360205260405f20555f808061116a565b505050505f9056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220454e47652b88ae504345418d4a74fe2571409d0f917260591a22233252d1d30664736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610c4d5750806306fdde0314610b92578063095ea7b314610aea57806318160ddd14610acd5780631cf2c7e214610a1e57806323b872dd146109e6578063248a9ca3146109b4578063282c51f31461097a5780632f2ff15d14610915578063313ce567146108f257806336568abe146108ae5780633f4ba83a146107c257806340c10f191461069e57806342966c68146106815780635c975abb1461065f57806370a082311461062757806379cc6790146105f75780638456cb591461051c5780639010d07c146104d757806391d148541461048f57806395d89b411461038b578063a217fddf14610371578063a3246ad3146102c2578063a9059cbb14610291578063ca15c87314610267578063d53913931461022d578063d547741f146101e9578063dd62ed3e146101995763e63ab1e91461015b575f80fd5b34610195575f3660031901126101955760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b34610195576040366003190112610195576101b2610ce4565b6101ba610cfa565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101955760403660031901126101955761022b600435610208610cfa565b90610226610221825f525f602052600160405f20015490565b610f06565b610f3e565b005b34610195575f3660031901126101955760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b34610195576020366003190112610195576004355f526001602052602060405f2054604051908152f35b34610195576040366003190112610195576102b76102ad610ce4565b6024359033610e77565b602060405160018152f35b34610195576020366003190112610195576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b81811061035b5750505081610310910382610d10565b604051918291602083019060208452518091526040830191905f5b818110610339575050500390f35b82516001600160a01b031684528594506020938401939092019160010161032b565b82548452602090930192600192830192016102fa565b34610195575f3660031901126101955760206040515f8152f35b34610195575f366003190112610195576040515f6006548060011c90600181168015610485575b6020831081146104715782855290811561044d57506001146103ef575b6103eb836103df81850382610d10565b60405191829182610cba565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610433575090915081016020016103df6103cf565b91926001816020925483858801015201910190929161041b565b60ff191660208086019190915291151560051b840190910191506103df90506103cf565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103b2565b34610195576040366003190112610195576104a8610cfa565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b34610195576040366003190112610195576004355f526001602052602061050360243560405f2061109b565b905460405160039290921b1c6001600160a01b03168152f35b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105a35761056a611080565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f5160206112145f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101955760403660031901126101955761022b610613610ce4565b60243590610622823383610dd4565b610d46565b34610195576020366003190112610195576001600160a01b03610648610ce4565b165f526002602052602060405f2054604051908152f35b34610195575f36600319011261019557602060ff600754166040519015158152f35b346101955760203660031901126101955761022b60043533610d46565b34610195576040366003190112610195576106b7610ce4565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff161561076f576001600160a01b031690811561075c5761070a611080565b600454908082018092116107485760205f5160206111f45f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b34610195575f36600319011261019557335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108565760075460ff8116156108475760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f5160206112145f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b34610195576040366003190112610195576108c7610cfa565b336001600160a01b038216036108e35761022b90600435610f3e565b63334bd91960e11b5f5260045ffd5b34610195575f36600319011261019557602060ff60075460081c16604051908152f35b3461019557604036600319011261019557600435610931610cfa565b610949610221835f525f602052600160405f20015490565b6109538183610f78565b61095957005b5f9182526001602052604090912061022b916001600160a01b0316906110c4565b34610195575f3660031901126101955760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101955760203660031901126101955760206109de6004355f525f602052600160405f20015490565b604051908152f35b34610195576060366003190112610195576102b7610a02610ce4565b610a0a610cfa565b60443591610a19833383610dd4565b610e77565b3461019557604036600319011261019557610a37610ce4565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610a7a5761022b9060243590610d46565b60405162461bcd60e51b815260206004820152603860248201525f5160206112145f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b34610195575f366003190112610195576020600454604051908152f35b3461019557604036600319011261019557610b03610ce4565b602435903315610b7f576001600160a01b0316908115610b6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b34610195575f366003190112610195576040515f6005548060011c90600181168015610c43575b6020831081146104715782855290811561044d5750600114610be5576103eb836103df81850382610d10565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610c29575090915081016020016103df6103cf565b919260018160209254838588010152019101909291610c11565b91607f1691610bb9565b34610195576020366003190112610195576004359063ffffffff60e01b821680920361019557602091635a05180f60e01b8114908115610c8f575b5015158152f35b637965db0b60e01b811491508115610ca9575b5083610c88565b6301ffc9a760e01b14905083610ca2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019557565b602435906001600160a01b038216820361019557565b90601f8019910116810190811067ffffffffffffffff821117610d3257604052565b634e487b7160e01b5f52604160045260245ffd5b9091906001600160a01b03168015610dc157610d60611080565b805f52600260205260405f2054838110610da7576020845f94955f5160206111f45f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f198410610e0e575b50505050565b828410610e54578015610b7f576001600160a01b03821615610b6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f808080610e08565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115610dc1576001600160a01b031691821561075c57610e9f611080565b815f52600260205260405f2054818110610eed57815f5160206111f45f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f8181526020818152604080832033845290915290205460ff1615610f285750565b63e2517d3f60e01b5f523360045260245260445ffd5b610f488282611000565b9182610f5357505090565b5f91825260016020526040909120610f74916001600160a01b03169061112e565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615610ffa575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661108c57565b63d93c066560e01b5f5260045ffd5b80548210156110b0575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611127578054600160401b811015610d32576111146110fe82600187940185558461109b565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146111eb575f1981018181116107485782545f19810191908211610748578181036111b6575b505050805480156111a2575f190190611183828261109b565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6111d66111c66110fe938661109b565b90549060031b1c9283928661109b565b90555f528360205260405f20555f808061116a565b505050505f9056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220454e47652b88ae504345418d4a74fe2571409d0f917260591a22233252d1d30664736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/ERC20MinterBurnerDecimals.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json b/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json index 34113d501..e3bc44bd0 100644 --- a/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json +++ b/contracts/solidity/ERC20RecursiveNonRevertingPrecompileCall.json @@ -839,11 +839,11 @@ "type": "function" } ], - "bytecode": "0x60806040523461045b57611dcd803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611591908161073c8239f35b5f516020611ced5f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611d4d5f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611d6d5f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611dad5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611dad5f395f51905f5260205260408120805460ff191660011790553391905f516020611ccd5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020611d0d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d0d5f395f51905f5260205260408120805460ff191660011790553391905f516020611d6d5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d2d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d2d5f395f51905f5260205260408120805460ff191660011790553391905f516020611d4d5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d8d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d8d5f395f51905f5260205260408120805460ff191660011790553391905f516020611ced5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e815750806303f24de114610d4b57806306fdde0314610c90578063095ea7b314610be857806318160ddd14610bcb5780631cf2c7e214610b1c57806323b872dd14610ae4578063248a9ca314610ab2578063282c51f314610a785780632f2ff15d14610a13578063313ce567146109f057806336568abe146109ac578063372500ab146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f34565b6101d0610f4a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4a565b9061023c610237825f525f602052600160405f20015490565b61120e565b611246565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f34565b6024359033611114565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610eee565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610eee565b604051918291602083526020830190610f10565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a3565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c157610588611388565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153c5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f34565b60243590610640823383611071565b610f78565b346101ab5760203660031901126101ab576001600160a01b03610666610f34565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f78565b346101ab5760403660031901126101ab576106d5610f34565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fc5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a85750610756611388565b600454908082018092116107945760205f51602061151c5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610eee565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153c5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af180156109a15761097957005b6102419060203d60201161099a575b6109928183610eee565b810190610f60565b503d610988565b6040513d5f823e3d90fd5b346101ab5760403660031901126101ab576109c5610f4a565b336001600160a01b038216036109e15761024190600435611246565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab57600435610a2f610f4a565b610a47610237835f525f602052600160405f20015490565b610a518183611280565b610a5757005b5f91825260016020526040909120610241916001600160a01b0316906113cc565b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610adc6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b00610f34565b610b08610f4a565b60443591610b17833383611071565b611114565b346101ab5760403660031901126101ab57610b35610f34565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b78576102419060243590610f78565b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c01610f34565b602435903315610c7d576001600160a01b0316908115610c6a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d41575b60208310811461048f5782855290811561046b5750600114610ce357610409836103f581850382610eee565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d27575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d0f565b91607f1691610cb7565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6d57604051610da5601f8401601f191660200182610eee565b82815236602484840101116101ab575f602084610df19560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f10565b602435604483015203815f6108005af19081156109a1575f91610e4e575b5015610e1757005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e67915060203d60201161099a576109928183610eee565b81610e0f565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec3575b5015158152f35b637965db0b60e01b811491508115610edd575b5083610ebc565b6301ffc9a760e01b14905083610ed6565b90601f8019910116810190811067ffffffffffffffff821117610e6d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b0316801561105e575f5160206114fc5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110215750610fc0611388565b805f52600260205260405f2054838110611007576020845f94955f51602061151c5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af161104e575b5001610faf565b5f61105891610eee565b5f611047565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ab575b50505050565b8284106110f1578015610c7d576001600160a01b03821615610c6a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a5565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b031690811561105e576001600160a01b03169182156107e5575f5160206114fc5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d1575061116a611388565b815f52600260205260405f20548181106111b857815f51602061151c5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16111fe575b5001611159565b5f61120891610eee565b5f6111f7565b5f8181526020818152604080832033845290915290205460ff16156112305750565b63e2517d3f60e01b5f523360045260245260445ffd5b6112508282611308565b918261125b57505090565b5f9182526001602052604090912061127c916001600160a01b031690611436565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139457565b63d93c066560e01b5f5260045ffd5b80548210156113b8575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f1461142f578054600160401b811015610e6d5761141c6114068260018794018555846113a3565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f3575f1981018181116107945782545f19810191908211610794578181036114be575b505050805480156114aa575f19019061148b82826113a3565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114de6114ce61140693866113a3565b90549060031b1c928392866113a3565b90555f528360205260405f20555f8080611472565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212203fb2dd5ba4123a2a5f8d1c611e1d0a73c78119eb55c650a7d1e0fcf28ec8fd3664736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e815750806303f24de114610d4b57806306fdde0314610c90578063095ea7b314610be857806318160ddd14610bcb5780631cf2c7e214610b1c57806323b872dd14610ae4578063248a9ca314610ab2578063282c51f314610a785780632f2ff15d14610a13578063313ce567146109f057806336568abe146109ac578063372500ab146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f34565b6101d0610f4a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4a565b9061023c610237825f525f602052600160405f20015490565b61120e565b611246565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f34565b6024359033611114565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610eee565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610eee565b604051918291602083526020830190610f10565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a3565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c157610588611388565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153c5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f34565b60243590610640823383611071565b610f78565b346101ab5760203660031901126101ab576001600160a01b03610666610f34565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f78565b346101ab5760403660031901126101ab576106d5610f34565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fc5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a85750610756611388565b600454908082018092116107945760205f51602061151c5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610eee565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153c5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af180156109a15761097957005b6102419060203d60201161099a575b6109928183610eee565b810190610f60565b503d610988565b6040513d5f823e3d90fd5b346101ab5760403660031901126101ab576109c5610f4a565b336001600160a01b038216036109e15761024190600435611246565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab57600435610a2f610f4a565b610a47610237835f525f602052600160405f20015490565b610a518183611280565b610a5757005b5f91825260016020526040909120610241916001600160a01b0316906113cc565b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610adc6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b00610f34565b610b08610f4a565b60443591610b17833383611071565b611114565b346101ab5760403660031901126101ab57610b35610f34565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b78576102419060243590610f78565b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c01610f34565b602435903315610c7d576001600160a01b0316908115610c6a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d41575b60208310811461048f5782855290811561046b5750600114610ce357610409836103f581850382610eee565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d27575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d0f565b91607f1691610cb7565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6d57604051610da5601f8401601f191660200182610eee565b82815236602484840101116101ab575f602084610df19560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f10565b602435604483015203815f6108005af19081156109a1575f91610e4e575b5015610e1757005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e67915060203d60201161099a576109928183610eee565b81610e0f565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec3575b5015158152f35b637965db0b60e01b811491508115610edd575b5083610ebc565b6301ffc9a760e01b14905083610ed6565b90601f8019910116810190811067ffffffffffffffff821117610e6d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b0316801561105e575f5160206114fc5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110215750610fc0611388565b805f52600260205260405f2054838110611007576020845f94955f51602061151c5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af161104e575b5001610faf565b5f61105891610eee565b5f611047565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ab575b50505050565b8284106110f1578015610c7d576001600160a01b03821615610c6a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a5565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b031690811561105e576001600160a01b03169182156107e5575f5160206114fc5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d1575061116a611388565b815f52600260205260405f20548181106111b857815f51602061151c5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16111fe575b5001611159565b5f61120891610eee565b5f6111f7565b5f8181526020818152604080832033845290915290205460ff16156112305750565b63e2517d3f60e01b5f523360045260245260445ffd5b6112508282611308565b918261125b57505090565b5f9182526001602052604090912061127c916001600160a01b031690611436565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139457565b63d93c066560e01b5f5260045ffd5b80548210156113b8575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f1461142f578054600160401b811015610e6d5761141c6114068260018794018555846113a3565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f3575f1981018181116107945782545f19810191908211610794578181036114be575b505050805480156114aa575f19019061148b82826113a3565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114de6114ce61140693866113a3565b90549060031b1c928392866113a3565b90555f528360205260405f20555f8080611472565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212203fb2dd5ba4123a2a5f8d1c611e1d0a73c78119eb55c650a7d1e0fcf28ec8fd3664736f6c634300081c0033", + "bytecode": "0x60806040523461045b57611dcd803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611591908161073c8239f35b5f516020611ced5f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611d4d5f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611d6d5f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611dad5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611dad5f395f51905f5260205260408120805460ff191660011790553391905f516020611ccd5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020611d0d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d0d5f395f51905f5260205260408120805460ff191660011790553391905f516020611d6d5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d2d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d2d5f395f51905f5260205260408120805460ff191660011790553391905f516020611d4d5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d8d5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d8d5f395f51905f5260205260408120805460ff191660011790553391905f516020611ced5f395f51905f52905f516020611ccd5f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e815750806303f24de114610d4b57806306fdde0314610c90578063095ea7b314610be857806318160ddd14610bcb5780631cf2c7e214610b1c57806323b872dd14610ae4578063248a9ca314610ab2578063282c51f314610a785780632f2ff15d14610a13578063313ce567146109f057806336568abe146109ac578063372500ab146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f34565b6101d0610f4a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4a565b9061023c610237825f525f602052600160405f20015490565b61120e565b611246565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f34565b6024359033611114565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610eee565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610eee565b604051918291602083526020830190610f10565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a3565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c157610588611388565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153c5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f34565b60243590610640823383611071565b610f78565b346101ab5760203660031901126101ab576001600160a01b03610666610f34565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f78565b346101ab5760403660031901126101ab576106d5610f34565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fc5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a85750610756611388565b600454908082018092116107945760205f51602061151c5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610eee565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153c5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af180156109a15761097957005b6102419060203d60201161099a575b6109928183610eee565b810190610f60565b503d610988565b6040513d5f823e3d90fd5b346101ab5760403660031901126101ab576109c5610f4a565b336001600160a01b038216036109e15761024190600435611246565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab57600435610a2f610f4a565b610a47610237835f525f602052600160405f20015490565b610a518183611280565b610a5757005b5f91825260016020526040909120610241916001600160a01b0316906113cc565b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610adc6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b00610f34565b610b08610f4a565b60443591610b17833383611071565b611114565b346101ab5760403660031901126101ab57610b35610f34565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b78576102419060243590610f78565b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c01610f34565b602435903315610c7d576001600160a01b0316908115610c6a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d41575b60208310811461048f5782855290811561046b5750600114610ce357610409836103f581850382610eee565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d27575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d0f565b91607f1691610cb7565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6d57604051610da5601f8401601f191660200182610eee565b82815236602484840101116101ab575f602084610df19560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f10565b602435604483015203815f6108005af19081156109a1575f91610e4e575b5015610e1757005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e67915060203d60201161099a576109928183610eee565b81610e0f565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec3575b5015158152f35b637965db0b60e01b811491508115610edd575b5083610ebc565b6301ffc9a760e01b14905083610ed6565b90601f8019910116810190811067ffffffffffffffff821117610e6d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b0316801561105e575f5160206114fc5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110215750610fc0611388565b805f52600260205260405f2054838110611007576020845f94955f51602061151c5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af161104e575b5001610faf565b5f61105891610eee565b5f611047565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ab575b50505050565b8284106110f1578015610c7d576001600160a01b03821615610c6a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a5565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b031690811561105e576001600160a01b03169182156107e5575f5160206114fc5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d1575061116a611388565b815f52600260205260405f20548181106111b857815f51602061151c5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16111fe575b5001611159565b5f61120891610eee565b5f6111f7565b5f8181526020818152604080832033845290915290205460ff16156112305750565b63e2517d3f60e01b5f523360045260245260445ffd5b6112508282611308565b918261125b57505090565b5f9182526001602052604090912061127c916001600160a01b031690611436565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139457565b63d93c066560e01b5f5260045ffd5b80548210156113b8575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f1461142f578054600160401b811015610e6d5761141c6114068260018794018555846113a3565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f3575f1981018181116107945782545f19810191908211610794578181036114be575b505050805480156114aa575f19019061148b82826113a3565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114de6114ce61140693866113a3565b90549060031b1c928392866113a3565b90555f528360205260405f20555f8080611472565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212209d1768ad940498ebcc7004981b87b1d53afb5e5c7b2f5f96ac0b2e46b85dbaa364736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e815750806303f24de114610d4b57806306fdde0314610c90578063095ea7b314610be857806318160ddd14610bcb5780631cf2c7e214610b1c57806323b872dd14610ae4578063248a9ca314610ab2578063282c51f314610a785780632f2ff15d14610a13578063313ce567146109f057806336568abe146109ac578063372500ab146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f34565b6101d0610f4a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4a565b9061023c610237825f525f602052600160405f20015490565b61120e565b611246565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f34565b6024359033611114565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610eee565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610eee565b604051918291602083526020830190610f10565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a3565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c157610588611388565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153c5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f34565b60243590610640823383611071565b610f78565b346101ab5760203660031901126101ab576001600160a01b03610666610f34565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f78565b346101ab5760403660031901126101ab576106d5610f34565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fc5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a85750610756611388565b600454908082018092116107945760205f51602061151c5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610eee565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153c5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af180156109a15761097957005b6102419060203d60201161099a575b6109928183610eee565b810190610f60565b503d610988565b6040513d5f823e3d90fd5b346101ab5760403660031901126101ab576109c5610f4a565b336001600160a01b038216036109e15761024190600435611246565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab57600435610a2f610f4a565b610a47610237835f525f602052600160405f20015490565b610a518183611280565b610a5757005b5f91825260016020526040909120610241916001600160a01b0316906113cc565b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610adc6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b00610f34565b610b08610f4a565b60443591610b17833383611071565b611114565b346101ab5760403660031901126101ab57610b35610f34565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b78576102419060243590610f78565b60405162461bcd60e51b815260206004820152603860248201525f51602061153c5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c01610f34565b602435903315610c7d576001600160a01b0316908115610c6a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d41575b60208310811461048f5782855290811561046b5750600114610ce357610409836103f581850382610eee565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d27575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d0f565b91607f1691610cb7565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6d57604051610da5601f8401601f191660200182610eee565b82815236602484840101116101ab575f602084610df19560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f10565b602435604483015203815f6108005af19081156109a1575f91610e4e575b5015610e1757005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e67915060203d60201161099a576109928183610eee565b81610e0f565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec3575b5015158152f35b637965db0b60e01b811491508115610edd575b5083610ebc565b6301ffc9a760e01b14905083610ed6565b90601f8019910116810190811067ffffffffffffffff821117610e6d57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b0316801561105e575f5160206114fc5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110215750610fc0611388565b805f52600260205260405f2054838110611007576020845f94955f51602061151c5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af161104e575b5001610faf565b5f61105891610eee565b5f611047565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ab575b50505050565b8284106110f1578015610c7d576001600160a01b03821615610c6a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a5565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b031690811561105e576001600160a01b03169182156107e5575f5160206114fc5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d1575061116a611388565b815f52600260205260405f20548181106111b857815f51602061151c5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab5760405163372500ab60e01b8152600191905f8160048183305af16111fe575b5001611159565b5f61120891610eee565b5f6111f7565b5f8181526020818152604080832033845290915290205460ff16156112305750565b63e2517d3f60e01b5f523360045260245260445ffd5b6112508282611308565b918261125b57505090565b5f9182526001602052604090912061127c916001600160a01b031690611436565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611302575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139457565b63d93c066560e01b5f5260045ffd5b80548210156113b8575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f1461142f578054600160401b811015610e6d5761141c6114068260018794018555846113a3565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f3575f1981018181116107945782545f19810191908211610794578181036114be575b505050805480156114aa575f19019061148b82826113a3565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114de6114ce61140693866113a3565b90549060031b1c928392866113a3565b90555f528360205260405f20555f8080611472565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212209d1768ad940498ebcc7004981b87b1d53afb5e5c7b2f5f96ac0b2e46b85dbaa364736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/ERC20RecursiveNonRevertingPrecompileCall.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json b/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json index a8721f445..004bc7d7b 100644 --- a/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json +++ b/contracts/solidity/ERC20RecursiveRevertingPrecompileCall.json @@ -839,11 +839,11 @@ "type": "function" } ], - "bytecode": "0x60806040523461045b57611dcf803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611593908161073c8239f35b5f516020611cef5f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611d4f5f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611d6f5f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611daf5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611daf5f395f51905f5260205260408120805460ff191660011790553391905f516020611ccf5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020611d0f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d0f5f395f51905f5260205260408120805460ff191660011790553391905f516020611d6f5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d2f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d2f5f395f51905f5260205260408120805460ff191660011790553391905f516020611d4f5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d8f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d8f5f395f51905f5260205260408120805460ff191660011790553391905f516020611cef5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e835750806303f24de114610d4d57806306fdde0314610c92578063095ea7b314610bea57806318160ddd14610bcd5780631cf2c7e214610b1e57806323b872dd14610ae6578063248a9ca314610ab4578063282c51f314610a7a5780632c0503d414610a035780632f2ff15d1461099e578063313ce5671461097b57806336568abe146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f36565b6101d0610f4c565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4c565b9061023c610237825f525f602052600160405f20015490565b611210565b611248565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f36565b6024359033611116565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610ef0565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610ef0565b604051918291602083526020830190610f12565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4c565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a5565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c15761058861138a565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153e5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f36565b60243590610640823383611073565b610f7a565b346101ab5760203660031901126101ab576001600160a01b03610666610f36565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f7a565b346101ab5760403660031901126101ab576106d5610f36565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fe5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a8575061075661138a565b600454908082018092116107945760205f51602061151e5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610ef0565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153e5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab5760403660031901126101ab57610950610f4c565b336001600160a01b0382160361096c5761024190600435611248565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab576004356109ba610f4c565b6109d2610237835f525f602052600160405f20015490565b6109dc8183611282565b6109e257005b5f91825260016020526040909120610241916001600160a01b0316906113ce565b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af18015610a6f57610a47575f80fd5b6101ab9060203d602011610a68575b610a608183610ef0565b810190610f62565b503d610a56565b6040513d5f823e3d90fd5b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610ade6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b02610f36565b610b0a610f4c565b60443591610b19833383611073565b611116565b346101ab5760403660031901126101ab57610b37610f36565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b7a576102419060243590610f7a565b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c03610f36565b602435903315610c7f576001600160a01b0316908115610c6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d43575b60208310811461048f5782855290811561046b5750600114610ce557610409836103f581850382610ef0565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d29575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d11565b91607f1691610cb9565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6f57604051610da7601f8401601f191660200182610ef0565b82815236602484840101116101ab575f602084610df39560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f12565b602435604483015203815f6108005af1908115610a6f575f91610e50575b5015610e1957005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e69915060203d602011610a6857610a608183610ef0565b81610e11565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec5575b5015158152f35b637965db0b60e01b811491508115610edf575b5083610ebe565b6301ffc9a760e01b14905083610ed8565b90601f8019910116810190811067ffffffffffffffff821117610e6f57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b03168015611060575f5160206114fe5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110235750610fc261138a565b805f52600260205260405f2054838110611009576020845f94955f51602061151e5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611050575b5001610fb1565b5f61105a91610ef0565b5f611049565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ad575b50505050565b8284106110f3578015610c7f576001600160a01b03821615610c6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a7565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115611060576001600160a01b03169182156107e5575f5160206114fe5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d3575061116c61138a565b815f52600260205260405f20548181106111ba57815f51602061151e5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611200575b500161115b565b5f61120a91610ef0565b5f6111f9565b5f8181526020818152604080832033845290915290205460ff16156112325750565b63e2517d3f60e01b5f523360045260245260445ffd5b611252828261130a565b918261125d57505090565b5f9182526001602052604090912061127e916001600160a01b031690611438565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139657565b63d93c066560e01b5f5260045ffd5b80548210156113ba575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611431578054600160401b811015610e6f5761141e6114088260018794018555846113a5565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f5575f1981018181116107945782545f19810191908211610794578181036114c0575b505050805480156114ac575f19019061148d82826113a5565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114e06114d061140893866113a5565b90549060031b1c928392866113a5565b90555f528360205260405f20555f8080611474565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220b59a1c3720910b1da3579f3b2a32f0578850760f6aa92e60fc4337993dda8d4864736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e835750806303f24de114610d4d57806306fdde0314610c92578063095ea7b314610bea57806318160ddd14610bcd5780631cf2c7e214610b1e57806323b872dd14610ae6578063248a9ca314610ab4578063282c51f314610a7a5780632c0503d414610a035780632f2ff15d1461099e578063313ce5671461097b57806336568abe146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f36565b6101d0610f4c565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4c565b9061023c610237825f525f602052600160405f20015490565b611210565b611248565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f36565b6024359033611116565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610ef0565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610ef0565b604051918291602083526020830190610f12565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4c565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a5565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c15761058861138a565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153e5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f36565b60243590610640823383611073565b610f7a565b346101ab5760203660031901126101ab576001600160a01b03610666610f36565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f7a565b346101ab5760403660031901126101ab576106d5610f36565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fe5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a8575061075661138a565b600454908082018092116107945760205f51602061151e5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610ef0565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153e5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab5760403660031901126101ab57610950610f4c565b336001600160a01b0382160361096c5761024190600435611248565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab576004356109ba610f4c565b6109d2610237835f525f602052600160405f20015490565b6109dc8183611282565b6109e257005b5f91825260016020526040909120610241916001600160a01b0316906113ce565b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af18015610a6f57610a47575f80fd5b6101ab9060203d602011610a68575b610a608183610ef0565b810190610f62565b503d610a56565b6040513d5f823e3d90fd5b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610ade6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b02610f36565b610b0a610f4c565b60443591610b19833383611073565b611116565b346101ab5760403660031901126101ab57610b37610f36565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b7a576102419060243590610f7a565b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c03610f36565b602435903315610c7f576001600160a01b0316908115610c6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d43575b60208310811461048f5782855290811561046b5750600114610ce557610409836103f581850382610ef0565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d29575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d11565b91607f1691610cb9565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6f57604051610da7601f8401601f191660200182610ef0565b82815236602484840101116101ab575f602084610df39560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f12565b602435604483015203815f6108005af1908115610a6f575f91610e50575b5015610e1957005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e69915060203d602011610a6857610a608183610ef0565b81610e11565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec5575b5015158152f35b637965db0b60e01b811491508115610edf575b5083610ebe565b6301ffc9a760e01b14905083610ed8565b90601f8019910116810190811067ffffffffffffffff821117610e6f57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b03168015611060575f5160206114fe5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110235750610fc261138a565b805f52600260205260405f2054838110611009576020845f94955f51602061151e5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611050575b5001610fb1565b5f61105a91610ef0565b5f611049565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ad575b50505050565b8284106110f3578015610c7f576001600160a01b03821615610c6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a7565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115611060576001600160a01b03169182156107e5575f5160206114fe5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d3575061116c61138a565b815f52600260205260405f20548181106111ba57815f51602061151e5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611200575b500161115b565b5f61120a91610ef0565b5f6111f9565b5f8181526020818152604080832033845290915290205460ff16156112325750565b63e2517d3f60e01b5f523360045260245260445ffd5b611252828261130a565b918261125d57505090565b5f9182526001602052604090912061127e916001600160a01b031690611438565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139657565b63d93c066560e01b5f5260045ffd5b80548210156113ba575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611431578054600160401b811015610e6f5761141e6114088260018794018555846113a5565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f5575f1981018181116107945782545f19810191908211610794578181036114c0575b505050805480156114ac575f19019061148d82826113a5565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114e06114d061140893866113a5565b90549060031b1c928392866113a5565b90555f528360205260405f20555f8080611474565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a2646970667358221220b59a1c3720910b1da3579f3b2a32f0578850760f6aa92e60fc4337993dda8d4864736f6c634300081c0033", + "bytecode": "0x60806040523461045b57611dcf803803806100198161045f565b92833981019060608183031261045b5780516001600160401b03811161045b5782610045918301610484565b60208201519092906001600160401b03811161045b57604091610069918401610484565b91015160ff8116810361045b5782516001600160401b03811161038957600554600181811c91168015610451575b602082101461036b57601f811161040b575b506020601f82116001146103a857819293945f9261039d575b50508160011b915f199060031b1c1916176005555b81516001600160401b03811161038957600654600181811c9116801561037f575b602082101461036b57601f8111610308575b50602092601f82116001146102a757928192935f9261029c575b50508160011b915f199060031b1c1916176006555b610142336104d5565b610264575b6101503361054b565b61021f575b61015e336105cb565b6101da575b61016c3361064b565b610195575b61ff006007549160081b169061ff00191617600755604051611593908161073c8239f35b5f516020611cef5f395f51905f525f5260016020526101d4337f4796a5437e25bdc491b74d328cf6b437c8587e216f52049c7df56421f51ae30f6106cb565b50610171565b5f516020611d4f5f395f51905f525f526001602052610219337fb9cbbae02fe941283ec0eefd7b121e3bc7f89fae077b27bdd75a7fd4cf1543a86106cb565b50610163565b5f516020611d6f5f395f51905f525f52600160205261025e337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da800006106cb565b50610155565b5f80526001602052610296337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb496106cb565b50610147565b015190505f80610124565b601f1982169360065f52805f20915f5b8681106102f057508360019596106102d8575b505050811b01600655610139565b01515f1960f88460031b161c191690555f80806102ca565b919260206001819286850151815501940192016102b7565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c81019160208410610361575b601f0160051c01905b818110610356575061010a565b5f8155600101610349565b9091508190610340565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060055f52805f20915f5b8181106103f3575095836001959697106103db575b505050811b016005556100d7565b01515f1960f88460031b161c191690555f80806103cd565b9192602060018192868b0151815501940192016103b8565b60055f5260205f20601f830160051c81019160208410610447575b601f0160051c01905b81811061043c57506100a9565b5f815560010161042f565b9091508190610426565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761038957604052565b81601f8201121561045b578051906001600160401b038211610389576104b3601f8301601f191660200161045f565b928284526020838301011161045b57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f516020611daf5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611daf5f395f51905f5260205260408120805460ff191660011790553391905f516020611ccf5f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f516020611d0f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d0f5f395f51905f5260205260408120805460ff191660011790553391905f516020611d6f5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d2f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d2f5f395f51905f5260205260408120805460ff191660011790553391905f516020611d4f5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001600160a01b0381165f9081525f516020611d8f5f395f51905f52602052604090205460ff16610546576001600160a01b03165f8181525f516020611d8f5f395f51905f5260205260408120805460ff191660011790553391905f516020611cef5f395f51905f52905f516020611ccf5f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610734578054680100000000000000008110156103895760018101808355811015610720578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e835750806303f24de114610d4d57806306fdde0314610c92578063095ea7b314610bea57806318160ddd14610bcd5780631cf2c7e214610b1e57806323b872dd14610ae6578063248a9ca314610ab4578063282c51f314610a7a5780632c0503d414610a035780632f2ff15d1461099e578063313ce5671461097b57806336568abe146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f36565b6101d0610f4c565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4c565b9061023c610237825f525f602052600160405f20015490565b611210565b611248565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f36565b6024359033611116565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610ef0565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610ef0565b604051918291602083526020830190610f12565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4c565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a5565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c15761058861138a565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153e5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f36565b60243590610640823383611073565b610f7a565b346101ab5760203660031901126101ab576001600160a01b03610666610f36565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f7a565b346101ab5760403660031901126101ab576106d5610f36565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fe5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a8575061075661138a565b600454908082018092116107945760205f51602061151e5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610ef0565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153e5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab5760403660031901126101ab57610950610f4c565b336001600160a01b0382160361096c5761024190600435611248565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab576004356109ba610f4c565b6109d2610237835f525f602052600160405f20015490565b6109dc8183611282565b6109e257005b5f91825260016020526040909120610241916001600160a01b0316906113ce565b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af18015610a6f57610a47575f80fd5b6101ab9060203d602011610a68575b610a608183610ef0565b810190610f62565b503d610a56565b6040513d5f823e3d90fd5b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610ade6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b02610f36565b610b0a610f4c565b60443591610b19833383611073565b611116565b346101ab5760403660031901126101ab57610b37610f36565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b7a576102419060243590610f7a565b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c03610f36565b602435903315610c7f576001600160a01b0316908115610c6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d43575b60208310811461048f5782855290811561046b5750600114610ce557610409836103f581850382610ef0565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d29575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d11565b91607f1691610cb9565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6f57604051610da7601f8401601f191660200182610ef0565b82815236602484840101116101ab575f602084610df39560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f12565b602435604483015203815f6108005af1908115610a6f575f91610e50575b5015610e1957005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e69915060203d602011610a6857610a608183610ef0565b81610e11565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec5575b5015158152f35b637965db0b60e01b811491508115610edf575b5083610ebe565b6301ffc9a760e01b14905083610ed8565b90601f8019910116810190811067ffffffffffffffff821117610e6f57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b03168015611060575f5160206114fe5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110235750610fc261138a565b805f52600260205260405f2054838110611009576020845f94955f51602061151e5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611050575b5001610fb1565b5f61105a91610ef0565b5f611049565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ad575b50505050565b8284106110f3578015610c7f576001600160a01b03821615610c6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a7565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115611060576001600160a01b03169182156107e5575f5160206114fe5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d3575061116c61138a565b815f52600260205260405f20548181106111ba57815f51602061151e5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611200575b500161115b565b5f61120a91610ef0565b5f6111f9565b5f8181526020818152604080832033845290915290205460ff16156112325750565b63e2517d3f60e01b5f523360045260245260445ffd5b611252828261130a565b918261125d57505090565b5f9182526001602052604090912061127e916001600160a01b031690611438565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139657565b63d93c066560e01b5f5260045ffd5b80548210156113ba575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611431578054600160401b811015610e6f5761141e6114088260018794018555846113a5565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f5575f1981018181116107945782545f19810191908211610794578181036114c0575b505050805480156114ac575f19019061148d82826113a5565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114e06114d061140893866113a5565b90549060031b1c928392866113a5565b90555f528360205260405f20555f8080611474565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212208ec9f127d7066ce2d24c596e81909618f3336a49d15885e7b1f66e4f4f1d00f464736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8480781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6cf7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870aead3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610e835750806303f24de114610d4d57806306fdde0314610c92578063095ea7b314610bea57806318160ddd14610bcd5780631cf2c7e214610b1e57806323b872dd14610ae6578063248a9ca314610ab4578063282c51f314610a7a5780632c0503d414610a035780632f2ff15d1461099e578063313ce5671461097b57806336568abe146109375780633f4ba83a1461084b57806340c10f19146106bc57806342966c681461069f5780635c975abb1461067d57806370a082311461064557806379cc6790146106155780638456cb591461053a5780639010d07c146104f557806391d14854146104ad57806395d89b41146103a1578063a217fddf14610387578063a3246ad3146102d8578063a9059cbb146102a7578063ca15c8731461027d578063d539139314610243578063d547741f146101ff578063dd62ed3e146101af5763e63ab1e914610171575f80fd5b346101ab575f3660031901126101ab5760206040517f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a8152f35b5f80fd5b346101ab5760403660031901126101ab576101c8610f36565b6101d0610f4c565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b346101ab5760403660031901126101ab5761024160043561021e610f4c565b9061023c610237825f525f602052600160405f20015490565b611210565b611248565b005b346101ab575f3660031901126101ab5760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101ab5760203660031901126101ab576004355f526001602052602060405f2054604051908152f35b346101ab5760403660031901126101ab576102cd6102c3610f36565b6024359033611116565b602060405160018152f35b346101ab5760203660031901126101ab576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106103715750505081610326910382610ef0565b604051918291602083019060208452518091526040830191905f5b81811061034f575050500390f35b82516001600160a01b0316845285945060209384019390920191600101610341565b8254845260209093019260019283019201610310565b346101ab575f3660031901126101ab5760206040515f8152f35b346101ab575f3660031901126101ab576040515f6006548060011c906001811680156104a3575b60208310811461048f5782855290811561046b575060011461040d575b610409836103f581850382610ef0565b604051918291602083526020830190610f12565b0390f35b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b808210610451575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610439565b60ff191660208086019190915291151560051b840190910191506103f590506103e5565b634e487b7160e01b5f52602260045260245ffd5b91607f16916103c8565b346101ab5760403660031901126101ab576104c6610f4c565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101ab5760403660031901126101ab576004355f526001602052602061052160243560405f206113a5565b905460405160039290921b1c6001600160a01b03168152f35b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156105c15761058861138a565b600160ff1960075416176007557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a1005b60405162461bcd60e51b815260206004820152603960248201525f51602061153e5f395f51905f52604482015278686176652070617573657220726f6c6520746f20706175736560381b6064820152608490fd5b346101ab5760403660031901126101ab57610241610631610f36565b60243590610640823383611073565b610f7a565b346101ab5760203660031901126101ab576001600160a01b03610666610f36565b165f526002602052602060405f2054604051908152f35b346101ab575f3660031901126101ab57602060ff600754166040519015158152f35b346101ab5760203660031901126101ab5761024160043533610f7a565b346101ab5760403660031901126101ab576106d5610f36565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff16156107f8576001600160a01b03169081156107e5575f5160206114fe5f395f51905f5260606040515f8152846020820152836040820152a15f5b600581106107a8575061075661138a565b600454908082018092116107945760205f51602061151e5f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af16107d5575b5001610745565b5f6107df91610ef0565b846107ce565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152771a185d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60421b6064820152608490fd5b346101ab575f3660031901126101ab57335f9081527ff7c9542c591017a21c74b6f3fab6263c7952fc0aaf9db4c22a2a04ddc7f8674f602052604090205460ff16156108df5760075460ff8116156108d05760ff19166007557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a1005b638dfc202b60e01b5f5260045ffd5b60405162461bcd60e51b815260206004820152603b60248201525f51602061153e5f395f51905f5260448201527f686176652070617573657220726f6c6520746f20756e706175736500000000006064820152608490fd5b346101ab5760403660031901126101ab57610950610f4c565b336001600160a01b0382160361096c5761024190600435611248565b63334bd91960e11b5f5260045ffd5b346101ab575f3660031901126101ab57602060ff60075460081c16604051908152f35b346101ab5760403660031901126101ab576004356109ba610f4c565b6109d2610237835f525f602052600160405f20015490565b6109dc8183611282565b6109e257005b5f91825260016020526040909120610241916001600160a01b0316906113ce565b346101ab575f3660031901126101ab57604051632efe8a5f60e01b8152306004820152606460248201526020816044815f6108015af18015610a6f57610a47575f80fd5b6101ab9060203d602011610a68575b610a608183610ef0565b810190610f62565b503d610a56565b6040513d5f823e3d90fd5b346101ab575f3660031901126101ab5760206040517f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488152f35b346101ab5760203660031901126101ab576020610ade6004355f525f602052600160405f20015490565b604051908152f35b346101ab5760603660031901126101ab576102cd610b02610f36565b610b0a610f4c565b60443591610b19833383611073565b611116565b346101ab5760403660031901126101ab57610b37610f36565b335f9081527f6bc61e8d8a7feeba9a3dfbe950298fbca23cf0136992f9ef92f1b5529ac870ae602052604090205460ff1615610b7a576102419060243590610f7a565b60405162461bcd60e51b815260206004820152603860248201525f51602061153e5f395f51905f526044820152773430bb3290313ab93732b9103937b632903a3790313ab93760411b6064820152608490fd5b346101ab575f3660031901126101ab576020600454604051908152f35b346101ab5760403660031901126101ab57610c03610f36565b602435903315610c7f576001600160a01b0316908115610c6c57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101ab575f3660031901126101ab576040515f6005548060011c90600181168015610d43575b60208310811461048f5782855290811561046b5750600114610ce557610409836103f581850382610ef0565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b808210610d29575090915081016020016103f56103e5565b919260018160209254838588010152019101909291610d11565b91607f1691610cb9565b346101ab5760403660031901126101ab5760043567ffffffffffffffff81116101ab57366023820112156101ab5780600401359067ffffffffffffffff8211610e6f57604051610da7601f8401601f191660200182610ef0565b82815236602484840101116101ab575f602084610df39560248396018386013783010152604051809381926353266bbb60e01b8352306004840152606060248401526064830190610f12565b602435604483015203815f6108005af1908115610a6f575f91610e50575b5015610e1957005b60405162461bcd60e51b815260206004820152600f60248201526e6661696c656420746f207374616b6560881b6044820152606490fd5b610e69915060203d602011610a6857610a608183610ef0565b81610e11565b634e487b7160e01b5f52604160045260245ffd5b346101ab5760203660031901126101ab576004359063ffffffff60e01b82168092036101ab57602091635a05180f60e01b8114908115610ec5575b5015158152f35b637965db0b60e01b811491508115610edf575b5083610ebe565b6301ffc9a760e01b14905083610ed8565b90601f8019910116810190811067ffffffffffffffff821117610e6f57604052565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101ab57565b602435906001600160a01b03821682036101ab57565b908160209103126101ab575180151581036101ab5790565b9091906001600160a01b03168015611060575f5160206114fe5f395f51905f5260606040518381525f6020820152856040820152a15f5b600581106110235750610fc261138a565b805f52600260205260405f2054838110611009576020845f94955f51602061151e5f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611050575b5001610fb1565b5f61105a91610ef0565b5f611049565b634b637e8f60e11b5f525f60045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106110ad575b50505050565b8284106110f3578015610c7f576001600160a01b03821615610c6c575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806110a7565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b0316908115611060576001600160a01b03169182156107e5575f5160206114fe5f395f51905f526060604051848152856020820152836040820152a15f5b600581106111d3575061116c61138a565b815f52600260205260405f20548181106111ba57815f51602061151e5f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b303b156101ab57604051630b0140f560e21b8152600191905f8160048183305af1611200575b500161115b565b5f61120a91610ef0565b5f6111f9565b5f8181526020818152604080832033845290915290205460ff16156112325750565b63e2517d3f60e01b5f523360045260245260445ffd5b611252828261130a565b918261125d57505090565b5f9182526001602052604090912061127e916001600160a01b031690611438565b5090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611304575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b60ff6007541661139657565b63d93c066560e01b5f5260045ffd5b80548210156113ba575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611431578054600160401b811015610e6f5761141e6114088260018794018555846113a5565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f146114f5575f1981018181116107945782545f19810191908211610794578181036114c0575b505050805480156114ac575f19019061148d82826113a5565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b6114e06114d061140893866113a5565b90549060031b1c928392866113a5565b90555f528360205260405f20555f8080611474565b505050505f9056fe6a7461657441bf111caa502b48bec73847d91c1265dc315d914c2d2a6c95fcfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332304d696e7465724275726e6572446563696d616c733a206d75737420a26469706673582212208ec9f127d7066ce2d24c596e81909618f3336a49d15885e7b1f66e4f4f1d00f464736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/ERC20RecursiveRevertingPrecompileCall.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/ERC20WithNativeTransfers.json b/contracts/solidity/ERC20WithNativeTransfers.json index 97329d1f6..a453e769e 100644 --- a/contracts/solidity/ERC20WithNativeTransfers.json +++ b/contracts/solidity/ERC20WithNativeTransfers.json @@ -884,11 +884,11 @@ "type": "receive" } ], - "bytecode": "0x6080604052346103ac5761230780380380610019816103b0565b9283398101906060818303126103ac5780516001600160401b0381116103ac57826100459183016103d5565b60208201519092906001600160401b0381116103ac576040916100699184016103d5565b91015160ff81168091036103ac5782516001600160401b0381116102da57600554600181811c911680156103a2575b60208210146102bc57601f811161035c575b506020601f82116001146102f957819293945f926102ee575b50508160011b915f199060031b1c1916176005555b81516001600160401b0381116102da57600654600181811c911680156102d0575b60208210146102bc57601f8111610259575b50602092601f82116001146101f857928192935f926101ed575b50508160011b915f199060031b1c1916176006555b61014333610426565b6101b5575b6101513361049c565b610170575b60ff196007541617600755604051611cfa908161058d8239f35b5f5160206122c75f395f51905f525f5260016020526101af337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da8000061051c565b50610156565b5f805260016020526101e7337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4961051c565b50610148565b015190505f80610125565b601f1982169360065f52805f20915f5b8681106102415750836001959610610229575b505050811b0160065561013a565b01515f1960f88460031b161c191690555f808061021b565b91926020600181928685015181550194019201610208565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c810191602084106102b2575b601f0160051c01905b8181106102a7575061010b565b5f815560010161029a565b9091508190610291565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f9565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c3565b601f1982169060055f52805f20915f5b8181106103445750958360019596971061032c575b505050811b016005556100d8565b01515f1960f88460031b161c191690555f808061031e565b9192602060018192868b015181550194019201610309565b60055f5260205f20601f830160051c81019160208410610398575b601f0160051c01905b81811061038d57506100aa565b5f8155600101610380565b9091508190610377565b90607f1690610098565b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176102da57604052565b81601f820112156103ac578051906001600160401b0382116102da57610404601f8301601f19166020016103b0565b92828452602083830101116103ac57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f5160206122e75f395f51905f52602052604090205460ff16610497576001600160a01b03165f8181525f5160206122e75f395f51905f5260205260408120805460ff191660011790553391905f5160206122875f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206122a75f395f51905f52602052604090205460ff16610497576001600160a01b03165f8181525f5160206122a75f395f51905f5260205260408120805460ff191660011790553391905f5160206122c75f395f51905f52905f5160206122875f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610585578054680100000000000000008110156102da5760018101808355811015610571578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe608080604052600436101561001c575b50361561001a575f80fd5b005b5f3560e01c90816301ffc9a71461107d575080630688b1351461105557806306fdde0314610fb0578063095ea7b314610f0857806318160ddd14610eeb57806323b872dd14610eb3578063248a9ca314610e815780632f2ff15d14610e1c578063313ce56714610dfc57806336568abe14610db857806340c10f19146108b257806342966c6814610895578063504d27fd1461087857806370a082311461084057806379cc6790146108105780639010d07c146107cb57806391d148541461078357806395d89b41146106de5780639f35c7e714610617578063a217fddf146105fd578063a3246ad31461054e578063a9059cbb1461051d578063aa3744bd146104f1578063b64bdb34146104d4578063ba84e217146104b2578063bd3fddd71461026c578063ca15c87314610242578063d539139314610208578063d547741f146101c65763dd62ed3e14610172575f61000f565b346101c25760403660031901126101c25761018b611114565b61019361112a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b5f80fd5b346101c25760403660031901126101c25761001a6004356101e561112a565b906102036101fe825f525f602052600160405f20015490565b6115b6565b6115ee565b346101c2575f3660031901126101c25760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101c25760203660031901126101c2576004355f526001602052602060405f2054604051908152f35b346101c25760c03660031901126101c257610285611114565b61028d61112a565b906064359167ffffffffffffffff83116101c257366023840112156101c25782600401359067ffffffffffffffff82116101c25736602483860101116101c25760a435928315158094036101c257335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104765760078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a5461036290611140565b601f8111610426575b505f601f82116001146103bd578192935f926103af575b50508160011b915f199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c555f80f35b602492500101358380610382565b601f19821693600a5f5260205f20915f5b86811061040b57508360019596106103ef575b505050811b01600a55610397565b01602401355f19600384901b60f8161c191690558380806103e1565b909260206001819260248787010135815501940191016103ce565b600a5f525f516020611c255f395f51905f52601f830160051c8101916020841061046c575b601f0160051c01905b818110610461575061036b565b5f8155600101610454565b909150819061044b565b60405162461bcd60e51b81526020600482015260146024820152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b346101c2575f3660031901126101c257602060ff600c54166040519015158152f35b346101c2575f3660031901126101c2576020600b54604051908152f35b346101c2575f3660031901126101c25760075460405160089190911c6001600160a01b03168152602090f35b346101c25760403660031901126101c257610543610539611114565b6024359033611251565b602060405160018152f35b346101c25760203660031901126101c2576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106105e7575050508161059c910382611178565b604051918291602083019060208452518091526040830191905f5b8181106105c5575050500390f35b82516001600160a01b03168452859450602093840193909201916001016105b7565b8254845260209093019260019283019201610586565b346101c2575f3660031901126101c25760206040515f8152f35b346101c2575f3660031901126101c2576040515f600a5461063781611140565b80845290600181169081156106ba575060011461066f575b61066b8361065f81850382611178565b604051918291826110ea565b0390f35b600a5f9081525f516020611c255f395f51905f52939250905b8082106106a05750909150810160200161065f61064f565b919260018160209254838588010152019101909291610688565b60ff191660208086019190915291151560051b8401909101915061065f905061064f565b346101c2575f3660031901126101c2576040515f6006546106fe81611140565b80845290600181169081156106ba57506001146107255761066b8361065f81850382611178565b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b8082106107695750909150810160200161065f61064f565b919260018160209254838588010152019101909291610751565b346101c25760403660031901126101c25761079c61112a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101c25760403660031901126101c2576004355f52600160205260206107f760243560405f20611aac565b905460405160039290921b1c6001600160a01b03168152f35b346101c25760403660031901126101c25761001a61082c611114565b6024359061083b8233836111ae565b611628565b346101c25760203660031901126101c2576001600160a01b03610861611114565b165f526002602052602060405f2054604051908152f35b346101c2575f3660031901126101c2576020600954604051908152f35b346101c25760203660031901126101c25761001a60043533611628565b346101c25760403660031901126101c2576108cb611114565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff1615610d73576001600160a01b0316908115610d605760ff600c541680610d59575b80610d51575b61097f575b6004549080820180921161096b5760205f516020611c855f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b5f516020611c055f395f51905f5260606040515f8152846020820152836040820152a16009548015801580610d26575b610b54575b5050600b5480151580610b41575b6109cd575b5061092d565b604051906353266bbb60e01b825230600483015260606024830152815f600a546109f681611140565b908160648501526001811690815f14610b1e5750600114610ad8575b508190602093604483015203815f6108005af1908115610acd575f91610a92575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a1826109c7565b60405162461bcd60e51b815260206004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152606490fd5b90506020813d602011610ac5575b81610aad60209383611178565b810103126101c2575180151581036101c25783610a33565b3d9150610aa0565b6040513d5f823e3d90fd5b600a5f90815291505f516020611c255f395f51905f525b818310610b0457505081016084016020610a12565b805460848488010152859350602090920191600101610aef565b60ff191660848086019190915291151560051b8401909101915060209050610a12565b50610b4d600a54611140565b15156109c2565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1610ba8611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af1610bfe611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a182806109b4565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b60405162461bcd60e51b815260206004820152603260248201527f496e73756666696369656e7420636f6e74726163742062616c616e636520666f60448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c6001600160a01b03161515806109af57506008546001600160a01b031615156109af565b506001610928565b505f610922565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152606490fd5b346101c25760403660031901126101c257610dd161112a565b336001600160a01b03821603610ded5761001a906004356115ee565b63334bd91960e11b5f5260045ffd5b346101c2575f3660031901126101c257602060ff60075416604051908152f35b346101c25760403660031901126101c257600435610e3861112a565b610e506101fe835f525f602052600160405f20015490565b610e5a81836119a4565b610e6057005b5f9182526001602052604090912061001a916001600160a01b031690611ad5565b346101c25760203660031901126101c2576020610eab6004355f525f602052600160405f20015490565b604051908152f35b346101c25760603660031901126101c257610543610ecf611114565b610ed761112a565b60443591610ee68333836111ae565b611251565b346101c2575f3660031901126101c2576020600454604051908152f35b346101c25760403660031901126101c257610f21611114565b602435903315610f9d576001600160a01b0316908115610f8a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101c2575f3660031901126101c2576040515f600554610fd081611140565b80845290600181169081156106ba5750600114610ff75761066b8361065f81850382611178565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b80821061103b5750909150810160200161065f61064f565b919260018160209254838588010152019101909291611023565b346101c2575f3660031901126101c2576008546040516001600160a01b039091168152602090f35b346101c25760203660031901126101c2576004359063ffffffff60e01b82168092036101c257602091635a05180f60e01b81149081156110bf575b5015158152f35b637965db0b60e01b8114915081156110d9575b50836110b8565b6301ffc9a760e01b149050836110d2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c257565b602435906001600160a01b03821682036101c257565b90600182811c9216801561116e575b602083101461115a57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161114f565b90601f8019910116810190811067ffffffffffffffff82111761119a57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106111e8575b50505050565b82841061122e578015610f9d576001600160a01b03821615610f8a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806111e2565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b03169081156115a3576001600160a01b0316918215610d605760ff600c54168061159b575b80611593575b6112ef575b815f52600260205260405f20548181106112d657815f516020611c855f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f526060604051848152856020820152836040820152a16009548015801580611568575b611480575b5050600b548015158061146d575b61133d575b50611288565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461136681611140565b908160648501526001811690815f1461144a5750600114611404575b508190602093604483015203815f6108005af1908115610acd575f916113c9575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f611337565b90506020813d6020116113fc575b816113e460209383611178565b810103126101c2575180151581036101c2575f6113a3565b3d91506113d7565b600a5f90815291505f516020611c255f395f51905f525b81831061143057505081016084016020611382565b80546084848801015285935060209092019160010161141b565b60ff191660848086019190915291151560051b8401909101915060209050611382565b50611479600a54611140565b1515611332565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af16114d4611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af161152a611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f80611324565b5060075460081c6001600160a01b031615158061131f57506008546001600160a01b0316151561131f565b506001611283565b50600161127d565b634b637e8f60e11b5f525f60045260245ffd5b5f8181526020818152604080832033845290915290205460ff16156115d85750565b63e2517d3f60e01b5f523360045260245260445ffd5b6115f88282611a2c565b918261160357505090565b5f91825260016020526040909120611624916001600160a01b031690611b3f565b5090565b9091906001600160a01b031680156115a35760ff600c54168061195d575b80611956575b6116b2575b805f52600260205260405f2054838110611698576020845f94955f516020611c855f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f5260606040518381525f6020820152856040820152a1600954801580158061192b575b611843575b5050600b5480151580611830575b611700575b50611651565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461172981611140565b908160648501526001811690815f1461180d57506001146117c7575b508190602093604483015203815f6108005af1908115610acd575f9161178c575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f6116fa565b90506020813d6020116117bf575b816117a760209383611178565b810103126101c2575180151581036101c2575f611766565b3d915061179a565b600a5f90815291505f516020611c255f395f51905f525b8183106117f357505081016084016020611745565b8054608484880101528593506020909201916001016117de565b60ff191660848086019190915291151560051b8401909101915060209050611745565b5061183c600a54611140565b15156116f5565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1611897611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af16118ed611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f806116e7565b5060075460081c6001600160a01b03161515806116e257506008546001600160a01b031615156116e2565b505f61164c565b506001611646565b3d1561199f573d9067ffffffffffffffff821161119a5760405191611994601f8201601f191660200184611178565b82523d5f602084013e565b606090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b8054821015611ac1575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611b38578054600160401b81101561119a57611b25611b0f826001879401855584611aac565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f14611bfc575f19810181811161096b5782545f1981019190821161096b57818103611bc7575b50505080548015611bb3575f190190611b948282611aac565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b611be7611bd7611b0f9386611aac565b90549060031b1c92839286611aac565b90555f528360205260405f20555f8080611b7b565b505050505f9056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a83d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3eff6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda2646970667358221220021c275c88ac512ab73c3cb65428514ac9f3661e398de15f80690f5d8a85904964736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", - "deployedBytecode": "0x608080604052600436101561001c575b50361561001a575f80fd5b005b5f3560e01c90816301ffc9a71461107d575080630688b1351461105557806306fdde0314610fb0578063095ea7b314610f0857806318160ddd14610eeb57806323b872dd14610eb3578063248a9ca314610e815780632f2ff15d14610e1c578063313ce56714610dfc57806336568abe14610db857806340c10f19146108b257806342966c6814610895578063504d27fd1461087857806370a082311461084057806379cc6790146108105780639010d07c146107cb57806391d148541461078357806395d89b41146106de5780639f35c7e714610617578063a217fddf146105fd578063a3246ad31461054e578063a9059cbb1461051d578063aa3744bd146104f1578063b64bdb34146104d4578063ba84e217146104b2578063bd3fddd71461026c578063ca15c87314610242578063d539139314610208578063d547741f146101c65763dd62ed3e14610172575f61000f565b346101c25760403660031901126101c25761018b611114565b61019361112a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b5f80fd5b346101c25760403660031901126101c25761001a6004356101e561112a565b906102036101fe825f525f602052600160405f20015490565b6115b6565b6115ee565b346101c2575f3660031901126101c25760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101c25760203660031901126101c2576004355f526001602052602060405f2054604051908152f35b346101c25760c03660031901126101c257610285611114565b61028d61112a565b906064359167ffffffffffffffff83116101c257366023840112156101c25782600401359067ffffffffffffffff82116101c25736602483860101116101c25760a435928315158094036101c257335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104765760078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a5461036290611140565b601f8111610426575b505f601f82116001146103bd578192935f926103af575b50508160011b915f199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c555f80f35b602492500101358380610382565b601f19821693600a5f5260205f20915f5b86811061040b57508360019596106103ef575b505050811b01600a55610397565b01602401355f19600384901b60f8161c191690558380806103e1565b909260206001819260248787010135815501940191016103ce565b600a5f525f516020611c255f395f51905f52601f830160051c8101916020841061046c575b601f0160051c01905b818110610461575061036b565b5f8155600101610454565b909150819061044b565b60405162461bcd60e51b81526020600482015260146024820152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b346101c2575f3660031901126101c257602060ff600c54166040519015158152f35b346101c2575f3660031901126101c2576020600b54604051908152f35b346101c2575f3660031901126101c25760075460405160089190911c6001600160a01b03168152602090f35b346101c25760403660031901126101c257610543610539611114565b6024359033611251565b602060405160018152f35b346101c25760203660031901126101c2576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106105e7575050508161059c910382611178565b604051918291602083019060208452518091526040830191905f5b8181106105c5575050500390f35b82516001600160a01b03168452859450602093840193909201916001016105b7565b8254845260209093019260019283019201610586565b346101c2575f3660031901126101c25760206040515f8152f35b346101c2575f3660031901126101c2576040515f600a5461063781611140565b80845290600181169081156106ba575060011461066f575b61066b8361065f81850382611178565b604051918291826110ea565b0390f35b600a5f9081525f516020611c255f395f51905f52939250905b8082106106a05750909150810160200161065f61064f565b919260018160209254838588010152019101909291610688565b60ff191660208086019190915291151560051b8401909101915061065f905061064f565b346101c2575f3660031901126101c2576040515f6006546106fe81611140565b80845290600181169081156106ba57506001146107255761066b8361065f81850382611178565b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b8082106107695750909150810160200161065f61064f565b919260018160209254838588010152019101909291610751565b346101c25760403660031901126101c25761079c61112a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101c25760403660031901126101c2576004355f52600160205260206107f760243560405f20611aac565b905460405160039290921b1c6001600160a01b03168152f35b346101c25760403660031901126101c25761001a61082c611114565b6024359061083b8233836111ae565b611628565b346101c25760203660031901126101c2576001600160a01b03610861611114565b165f526002602052602060405f2054604051908152f35b346101c2575f3660031901126101c2576020600954604051908152f35b346101c25760203660031901126101c25761001a60043533611628565b346101c25760403660031901126101c2576108cb611114565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff1615610d73576001600160a01b0316908115610d605760ff600c541680610d59575b80610d51575b61097f575b6004549080820180921161096b5760205f516020611c855f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b5f516020611c055f395f51905f5260606040515f8152846020820152836040820152a16009548015801580610d26575b610b54575b5050600b5480151580610b41575b6109cd575b5061092d565b604051906353266bbb60e01b825230600483015260606024830152815f600a546109f681611140565b908160648501526001811690815f14610b1e5750600114610ad8575b508190602093604483015203815f6108005af1908115610acd575f91610a92575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a1826109c7565b60405162461bcd60e51b815260206004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152606490fd5b90506020813d602011610ac5575b81610aad60209383611178565b810103126101c2575180151581036101c25783610a33565b3d9150610aa0565b6040513d5f823e3d90fd5b600a5f90815291505f516020611c255f395f51905f525b818310610b0457505081016084016020610a12565b805460848488010152859350602090920191600101610aef565b60ff191660848086019190915291151560051b8401909101915060209050610a12565b50610b4d600a54611140565b15156109c2565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1610ba8611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af1610bfe611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a182806109b4565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b60405162461bcd60e51b815260206004820152603260248201527f496e73756666696369656e7420636f6e74726163742062616c616e636520666f60448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c6001600160a01b03161515806109af57506008546001600160a01b031615156109af565b506001610928565b505f610922565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152606490fd5b346101c25760403660031901126101c257610dd161112a565b336001600160a01b03821603610ded5761001a906004356115ee565b63334bd91960e11b5f5260045ffd5b346101c2575f3660031901126101c257602060ff60075416604051908152f35b346101c25760403660031901126101c257600435610e3861112a565b610e506101fe835f525f602052600160405f20015490565b610e5a81836119a4565b610e6057005b5f9182526001602052604090912061001a916001600160a01b031690611ad5565b346101c25760203660031901126101c2576020610eab6004355f525f602052600160405f20015490565b604051908152f35b346101c25760603660031901126101c257610543610ecf611114565b610ed761112a565b60443591610ee68333836111ae565b611251565b346101c2575f3660031901126101c2576020600454604051908152f35b346101c25760403660031901126101c257610f21611114565b602435903315610f9d576001600160a01b0316908115610f8a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101c2575f3660031901126101c2576040515f600554610fd081611140565b80845290600181169081156106ba5750600114610ff75761066b8361065f81850382611178565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b80821061103b5750909150810160200161065f61064f565b919260018160209254838588010152019101909291611023565b346101c2575f3660031901126101c2576008546040516001600160a01b039091168152602090f35b346101c25760203660031901126101c2576004359063ffffffff60e01b82168092036101c257602091635a05180f60e01b81149081156110bf575b5015158152f35b637965db0b60e01b8114915081156110d9575b50836110b8565b6301ffc9a760e01b149050836110d2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c257565b602435906001600160a01b03821682036101c257565b90600182811c9216801561116e575b602083101461115a57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161114f565b90601f8019910116810190811067ffffffffffffffff82111761119a57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106111e8575b50505050565b82841061122e578015610f9d576001600160a01b03821615610f8a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806111e2565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b03169081156115a3576001600160a01b0316918215610d605760ff600c54168061159b575b80611593575b6112ef575b815f52600260205260405f20548181106112d657815f516020611c855f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f526060604051848152856020820152836040820152a16009548015801580611568575b611480575b5050600b548015158061146d575b61133d575b50611288565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461136681611140565b908160648501526001811690815f1461144a5750600114611404575b508190602093604483015203815f6108005af1908115610acd575f916113c9575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f611337565b90506020813d6020116113fc575b816113e460209383611178565b810103126101c2575180151581036101c2575f6113a3565b3d91506113d7565b600a5f90815291505f516020611c255f395f51905f525b81831061143057505081016084016020611382565b80546084848801015285935060209092019160010161141b565b60ff191660848086019190915291151560051b8401909101915060209050611382565b50611479600a54611140565b1515611332565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af16114d4611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af161152a611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f80611324565b5060075460081c6001600160a01b031615158061131f57506008546001600160a01b0316151561131f565b506001611283565b50600161127d565b634b637e8f60e11b5f525f60045260245ffd5b5f8181526020818152604080832033845290915290205460ff16156115d85750565b63e2517d3f60e01b5f523360045260245260445ffd5b6115f88282611a2c565b918261160357505090565b5f91825260016020526040909120611624916001600160a01b031690611b3f565b5090565b9091906001600160a01b031680156115a35760ff600c54168061195d575b80611956575b6116b2575b805f52600260205260405f2054838110611698576020845f94955f516020611c855f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f5260606040518381525f6020820152856040820152a1600954801580158061192b575b611843575b5050600b5480151580611830575b611700575b50611651565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461172981611140565b908160648501526001811690815f1461180d57506001146117c7575b508190602093604483015203815f6108005af1908115610acd575f9161178c575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f6116fa565b90506020813d6020116117bf575b816117a760209383611178565b810103126101c2575180151581036101c2575f611766565b3d915061179a565b600a5f90815291505f516020611c255f395f51905f525b8183106117f357505081016084016020611745565b8054608484880101528593506020909201916001016117de565b60ff191660848086019190915291151560051b8401909101915060209050611745565b5061183c600a54611140565b15156116f5565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1611897611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af16118ed611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f806116e7565b5060075460081c6001600160a01b03161515806116e257506008546001600160a01b031615156116e2565b505f61164c565b506001611646565b3d1561199f573d9067ffffffffffffffff821161119a5760405191611994601f8201601f191660200184611178565b82523d5f602084013e565b606090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b8054821015611ac1575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611b38578054600160401b81101561119a57611b25611b0f826001879401855584611aac565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f14611bfc575f19810181811161096b5782545f1981019190821161096b57818103611bc7575b50505080548015611bb3575f190190611b948282611aac565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b611be7611bd7611b0f9386611aac565b90549060031b1c92839286611aac565b90555f528360205260405f20555f8080611b7b565b505050505f9056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a83d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3eff6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda2646970667358221220021c275c88ac512ab73c3cb65428514ac9f3661e398de15f80690f5d8a85904964736f6c634300081c0033", + "bytecode": "0x6080604052346103ac5761230780380380610019816103b0565b9283398101906060818303126103ac5780516001600160401b0381116103ac57826100459183016103d5565b60208201519092906001600160401b0381116103ac576040916100699184016103d5565b91015160ff81168091036103ac5782516001600160401b0381116102da57600554600181811c911680156103a2575b60208210146102bc57601f811161035c575b506020601f82116001146102f957819293945f926102ee575b50508160011b915f199060031b1c1916176005555b81516001600160401b0381116102da57600654600181811c911680156102d0575b60208210146102bc57601f8111610259575b50602092601f82116001146101f857928192935f926101ed575b50508160011b915f199060031b1c1916176006555b61014333610426565b6101b5575b6101513361049c565b610170575b60ff196007541617600755604051611cfa908161058d8239f35b5f5160206122c75f395f51905f525f5260016020526101af337f64e21244e91af723e1b962171ed4828dcecc0d7b89872e516a5db8266da8000061051c565b50610156565b5f805260016020526101e7337fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4961051c565b50610148565b015190505f80610125565b601f1982169360065f52805f20915f5b8681106102415750836001959610610229575b505050811b0160065561013a565b01515f1960f88460031b161c191690555f808061021b565b91926020600181928685015181550194019201610208565b60065f527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f601f830160051c810191602084106102b2575b601f0160051c01905b8181106102a7575061010b565b5f815560010161029a565b9091508190610291565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f9565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c3565b601f1982169060055f52805f20915f5b8181106103445750958360019596971061032c575b505050811b016005556100d8565b01515f1960f88460031b161c191690555f808061031e565b9192602060018192868b015181550194019201610309565b60055f5260205f20601f830160051c81019160208410610398575b601f0160051c01905b81811061038d57506100aa565b5f8155600101610380565b9091508190610377565b90607f1690610098565b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176102da57604052565b81601f820112156103ac578051906001600160401b0382116102da57610404601f8301601f19166020016103b0565b92828452602083830101116103ac57815f9260208093018386015e8301015290565b6001600160a01b0381165f9081525f5160206122e75f395f51905f52602052604090205460ff16610497576001600160a01b03165f8181525f5160206122e75f395f51905f5260205260408120805460ff191660011790553391905f5160206122875f395f51905f528180a4600190565b505f90565b6001600160a01b0381165f9081525f5160206122a75f395f51905f52602052604090205460ff16610497576001600160a01b03165f8181525f5160206122a75f395f51905f5260205260408120805460ff191660011790553391905f5160206122c75f395f51905f52905f5160206122875f395f51905f529080a4600190565b6001810190825f528160205260405f2054155f14610585578054680100000000000000008110156102da5760018101808355811015610571578390825f5260205f20015554915f5260205260405f2055600190565b634e487b7160e01b5f52603260045260245ffd5b5050505f9056fe608080604052600436101561001c575b50361561001a575f80fd5b005b5f3560e01c90816301ffc9a71461107d575080630688b1351461105557806306fdde0314610fb0578063095ea7b314610f0857806318160ddd14610eeb57806323b872dd14610eb3578063248a9ca314610e815780632f2ff15d14610e1c578063313ce56714610dfc57806336568abe14610db857806340c10f19146108b257806342966c6814610895578063504d27fd1461087857806370a082311461084057806379cc6790146108105780639010d07c146107cb57806391d148541461078357806395d89b41146106de5780639f35c7e714610617578063a217fddf146105fd578063a3246ad31461054e578063a9059cbb1461051d578063aa3744bd146104f1578063b64bdb34146104d4578063ba84e217146104b2578063bd3fddd71461026c578063ca15c87314610242578063d539139314610208578063d547741f146101c65763dd62ed3e14610172575f61000f565b346101c25760403660031901126101c25761018b611114565b61019361112a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b5f80fd5b346101c25760403660031901126101c25761001a6004356101e561112a565b906102036101fe825f525f602052600160405f20015490565b6115b6565b6115ee565b346101c2575f3660031901126101c25760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101c25760203660031901126101c2576004355f526001602052602060405f2054604051908152f35b346101c25760c03660031901126101c257610285611114565b61028d61112a565b906064359167ffffffffffffffff83116101c257366023840112156101c25782600401359067ffffffffffffffff82116101c25736602483860101116101c25760a435928315158094036101c257335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104765760078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a5461036290611140565b601f8111610426575b505f601f82116001146103bd578192935f926103af575b50508160011b915f199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c555f80f35b602492500101358380610382565b601f19821693600a5f5260205f20915f5b86811061040b57508360019596106103ef575b505050811b01600a55610397565b01602401355f19600384901b60f8161c191690558380806103e1565b909260206001819260248787010135815501940191016103ce565b600a5f525f516020611c255f395f51905f52601f830160051c8101916020841061046c575b601f0160051c01905b818110610461575061036b565b5f8155600101610454565b909150819061044b565b60405162461bcd60e51b81526020600482015260146024820152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b346101c2575f3660031901126101c257602060ff600c54166040519015158152f35b346101c2575f3660031901126101c2576020600b54604051908152f35b346101c2575f3660031901126101c25760075460405160089190911c6001600160a01b03168152602090f35b346101c25760403660031901126101c257610543610539611114565b6024359033611251565b602060405160018152f35b346101c25760203660031901126101c2576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106105e7575050508161059c910382611178565b604051918291602083019060208452518091526040830191905f5b8181106105c5575050500390f35b82516001600160a01b03168452859450602093840193909201916001016105b7565b8254845260209093019260019283019201610586565b346101c2575f3660031901126101c25760206040515f8152f35b346101c2575f3660031901126101c2576040515f600a5461063781611140565b80845290600181169081156106ba575060011461066f575b61066b8361065f81850382611178565b604051918291826110ea565b0390f35b600a5f9081525f516020611c255f395f51905f52939250905b8082106106a05750909150810160200161065f61064f565b919260018160209254838588010152019101909291610688565b60ff191660208086019190915291151560051b8401909101915061065f905061064f565b346101c2575f3660031901126101c2576040515f6006546106fe81611140565b80845290600181169081156106ba57506001146107255761066b8361065f81850382611178565b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b8082106107695750909150810160200161065f61064f565b919260018160209254838588010152019101909291610751565b346101c25760403660031901126101c25761079c61112a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101c25760403660031901126101c2576004355f52600160205260206107f760243560405f20611aac565b905460405160039290921b1c6001600160a01b03168152f35b346101c25760403660031901126101c25761001a61082c611114565b6024359061083b8233836111ae565b611628565b346101c25760203660031901126101c2576001600160a01b03610861611114565b165f526002602052602060405f2054604051908152f35b346101c2575f3660031901126101c2576020600954604051908152f35b346101c25760203660031901126101c25761001a60043533611628565b346101c25760403660031901126101c2576108cb611114565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff1615610d73576001600160a01b0316908115610d605760ff600c541680610d59575b80610d51575b61097f575b6004549080820180921161096b5760205f516020611c855f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b5f516020611c055f395f51905f5260606040515f8152846020820152836040820152a16009548015801580610d26575b610b54575b5050600b5480151580610b41575b6109cd575b5061092d565b604051906353266bbb60e01b825230600483015260606024830152815f600a546109f681611140565b908160648501526001811690815f14610b1e5750600114610ad8575b508190602093604483015203815f6108005af1908115610acd575f91610a92575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a1826109c7565b60405162461bcd60e51b815260206004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152606490fd5b90506020813d602011610ac5575b81610aad60209383611178565b810103126101c2575180151581036101c25783610a33565b3d9150610aa0565b6040513d5f823e3d90fd5b600a5f90815291505f516020611c255f395f51905f525b818310610b0457505081016084016020610a12565b805460848488010152859350602090920191600101610aef565b60ff191660848086019190915291151560051b8401909101915060209050610a12565b50610b4d600a54611140565b15156109c2565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1610ba8611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af1610bfe611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a182806109b4565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b60405162461bcd60e51b815260206004820152603260248201527f496e73756666696369656e7420636f6e74726163742062616c616e636520666f60448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c6001600160a01b03161515806109af57506008546001600160a01b031615156109af565b506001610928565b505f610922565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152606490fd5b346101c25760403660031901126101c257610dd161112a565b336001600160a01b03821603610ded5761001a906004356115ee565b63334bd91960e11b5f5260045ffd5b346101c2575f3660031901126101c257602060ff60075416604051908152f35b346101c25760403660031901126101c257600435610e3861112a565b610e506101fe835f525f602052600160405f20015490565b610e5a81836119a4565b610e6057005b5f9182526001602052604090912061001a916001600160a01b031690611ad5565b346101c25760203660031901126101c2576020610eab6004355f525f602052600160405f20015490565b604051908152f35b346101c25760603660031901126101c257610543610ecf611114565b610ed761112a565b60443591610ee68333836111ae565b611251565b346101c2575f3660031901126101c2576020600454604051908152f35b346101c25760403660031901126101c257610f21611114565b602435903315610f9d576001600160a01b0316908115610f8a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101c2575f3660031901126101c2576040515f600554610fd081611140565b80845290600181169081156106ba5750600114610ff75761066b8361065f81850382611178565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b80821061103b5750909150810160200161065f61064f565b919260018160209254838588010152019101909291611023565b346101c2575f3660031901126101c2576008546040516001600160a01b039091168152602090f35b346101c25760203660031901126101c2576004359063ffffffff60e01b82168092036101c257602091635a05180f60e01b81149081156110bf575b5015158152f35b637965db0b60e01b8114915081156110d9575b50836110b8565b6301ffc9a760e01b149050836110d2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c257565b602435906001600160a01b03821682036101c257565b90600182811c9216801561116e575b602083101461115a57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161114f565b90601f8019910116810190811067ffffffffffffffff82111761119a57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106111e8575b50505050565b82841061122e578015610f9d576001600160a01b03821615610f8a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806111e2565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b03169081156115a3576001600160a01b0316918215610d605760ff600c54168061159b575b80611593575b6112ef575b815f52600260205260405f20548181106112d657815f516020611c855f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f526060604051848152856020820152836040820152a16009548015801580611568575b611480575b5050600b548015158061146d575b61133d575b50611288565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461136681611140565b908160648501526001811690815f1461144a5750600114611404575b508190602093604483015203815f6108005af1908115610acd575f916113c9575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f611337565b90506020813d6020116113fc575b816113e460209383611178565b810103126101c2575180151581036101c2575f6113a3565b3d91506113d7565b600a5f90815291505f516020611c255f395f51905f525b81831061143057505081016084016020611382565b80546084848801015285935060209092019160010161141b565b60ff191660848086019190915291151560051b8401909101915060209050611382565b50611479600a54611140565b1515611332565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af16114d4611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af161152a611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f80611324565b5060075460081c6001600160a01b031615158061131f57506008546001600160a01b0316151561131f565b506001611283565b50600161127d565b634b637e8f60e11b5f525f60045260245ffd5b5f8181526020818152604080832033845290915290205460ff16156115d85750565b63e2517d3f60e01b5f523360045260245260445ffd5b6115f88282611a2c565b918261160357505090565b5f91825260016020526040909120611624916001600160a01b031690611b3f565b5090565b9091906001600160a01b031680156115a35760ff600c54168061195d575b80611956575b6116b2575b805f52600260205260405f2054838110611698576020845f94955f516020611c855f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f5260606040518381525f6020820152856040820152a1600954801580158061192b575b611843575b5050600b5480151580611830575b611700575b50611651565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461172981611140565b908160648501526001811690815f1461180d57506001146117c7575b508190602093604483015203815f6108005af1908115610acd575f9161178c575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f6116fa565b90506020813d6020116117bf575b816117a760209383611178565b810103126101c2575180151581036101c2575f611766565b3d915061179a565b600a5f90815291505f516020611c255f395f51905f525b8183106117f357505081016084016020611745565b8054608484880101528593506020909201916001016117de565b60ff191660848086019190915291151560051b8401909101915060209050611745565b5061183c600a54611140565b15156116f5565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1611897611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af16118ed611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f806116e7565b5060075460081c6001600160a01b03161515806116e257506008546001600160a01b031615156116e2565b505f61164c565b506001611646565b3d1561199f573d9067ffffffffffffffff821161119a5760405191611994601f8201601f191660200184611178565b82523d5f602084013e565b606090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b8054821015611ac1575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611b38578054600160401b81101561119a57611b25611b0f826001879401855584611aac565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f14611bfc575f19810181811161096b5782545f1981019190821161096b57818103611bc7575b50505080548015611bb3575f190190611b948282611aac565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b611be7611bd7611b0f9386611aac565b90549060031b1c92839286611aac565b90555f528360205260405f20555f8080611b7b565b505050505f9056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a83d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3eff6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda26469706673582212207609a9576cb1aae410a36b0a3e4d9dc682d28afdf6c41faec2af2156e922e26f64736f6c634300081c00332f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6ad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5", + "deployedBytecode": "0x608080604052600436101561001c575b50361561001a575f80fd5b005b5f3560e01c90816301ffc9a71461107d575080630688b1351461105557806306fdde0314610fb0578063095ea7b314610f0857806318160ddd14610eeb57806323b872dd14610eb3578063248a9ca314610e815780632f2ff15d14610e1c578063313ce56714610dfc57806336568abe14610db857806340c10f19146108b257806342966c6814610895578063504d27fd1461087857806370a082311461084057806379cc6790146108105780639010d07c146107cb57806391d148541461078357806395d89b41146106de5780639f35c7e714610617578063a217fddf146105fd578063a3246ad31461054e578063a9059cbb1461051d578063aa3744bd146104f1578063b64bdb34146104d4578063ba84e217146104b2578063bd3fddd71461026c578063ca15c87314610242578063d539139314610208578063d547741f146101c65763dd62ed3e14610172575f61000f565b346101c25760403660031901126101c25761018b611114565b61019361112a565b6001600160a01b039182165f908152600360209081526040808320949093168252928352819020549051908152f35b5f80fd5b346101c25760403660031901126101c25761001a6004356101e561112a565b906102036101fe825f525f602052600160405f20015490565b6115b6565b6115ee565b346101c2575f3660031901126101c25760206040517f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68152f35b346101c25760203660031901126101c2576004355f526001602052602060405f2054604051908152f35b346101c25760c03660031901126101c257610285611114565b61028d61112a565b906064359167ffffffffffffffff83116101c257366023840112156101c25782600401359067ffffffffffffffff82116101c25736602483860101116101c25760a435928315158094036101c257335f9081527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604090205460ff16156104765760078054610100600160a81b031916600892831b610100600160a81b031617905580546001600160a01b0319166001600160a01b0392909216919091179055604435600955600a5461036290611140565b601f8111610426575b505f601f82116001146103bd578192935f926103af575b50508160011b915f199060031b1c191617600a555b608435600b5560ff8019600c5416911617600c555f80f35b602492500101358380610382565b601f19821693600a5f5260205f20915f5b86811061040b57508360019596106103ef575b505050811b01600a55610397565b01602401355f19600384901b60f8161c191690558380806103e1565b909260206001819260248787010135815501940191016103ce565b600a5f525f516020611c255f395f51905f52601f830160051c8101916020841061046c575b601f0160051c01905b818110610461575061036b565b5f8155600101610454565b909150819061044b565b60405162461bcd60e51b81526020600482015260146024820152734d75737420686176652061646d696e20726f6c6560601b6044820152606490fd5b346101c2575f3660031901126101c257602060ff600c54166040519015158152f35b346101c2575f3660031901126101c2576020600b54604051908152f35b346101c2575f3660031901126101c25760075460405160089190911c6001600160a01b03168152602090f35b346101c25760403660031901126101c257610543610539611114565b6024359033611251565b602060405160018152f35b346101c25760203660031901126101c2576004355f52600160205260405f20604051806020835491828152019081935f5260205f20905f5b8181106105e7575050508161059c910382611178565b604051918291602083019060208452518091526040830191905f5b8181106105c5575050500390f35b82516001600160a01b03168452859450602093840193909201916001016105b7565b8254845260209093019260019283019201610586565b346101c2575f3660031901126101c25760206040515f8152f35b346101c2575f3660031901126101c2576040515f600a5461063781611140565b80845290600181169081156106ba575060011461066f575b61066b8361065f81850382611178565b604051918291826110ea565b0390f35b600a5f9081525f516020611c255f395f51905f52939250905b8082106106a05750909150810160200161065f61064f565b919260018160209254838588010152019101909291610688565b60ff191660208086019190915291151560051b8401909101915061065f905061064f565b346101c2575f3660031901126101c2576040515f6006546106fe81611140565b80845290600181169081156106ba57506001146107255761066b8361065f81850382611178565b60065f9081527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f939250905b8082106107695750909150810160200161065f61064f565b919260018160209254838588010152019101909291610751565b346101c25760403660031901126101c25761079c61112a565b6004355f525f60205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b346101c25760403660031901126101c2576004355f52600160205260206107f760243560405f20611aac565b905460405160039290921b1c6001600160a01b03168152f35b346101c25760403660031901126101c25761001a61082c611114565b6024359061083b8233836111ae565b611628565b346101c25760203660031901126101c2576001600160a01b03610861611114565b165f526002602052602060405f2054604051908152f35b346101c2575f3660031901126101c2576020600954604051908152f35b346101c25760203660031901126101c25761001a60043533611628565b346101c25760403660031901126101c2576108cb611114565b335f9081527f0781d7cac9c378efa22a7481e4d4d29704a680ddf504b3bc50b517700ee11e6c6020526040902054602435919060ff1615610d73576001600160a01b0316908115610d605760ff600c541680610d59575b80610d51575b61097f575b6004549080820180921161096b5760205f516020611c855f395f51905f52915f936004558484526002825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b5f516020611c055f395f51905f5260606040515f8152846020820152836040820152a16009548015801580610d26575b610b54575b5050600b5480151580610b41575b6109cd575b5061092d565b604051906353266bbb60e01b825230600483015260606024830152815f600a546109f681611140565b908160648501526001811690815f14610b1e5750600114610ad8575b508190602093604483015203815f6108005af1908115610acd575f91610a92575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a1826109c7565b60405162461bcd60e51b815260206004820152601160248201527011195b1959d85d1a5bdb8819985a5b1959607a1b6044820152606490fd5b90506020813d602011610ac5575b81610aad60209383611178565b810103126101c2575180151581036101c25783610a33565b3d9150610aa0565b6040513d5f823e3d90fd5b600a5f90815291505f516020611c255f395f51905f525b818310610b0457505081016084016020610a12565b805460848488010152859350602090920191600101610aef565b60ff191660848086019190915291151560051b8401909101915060209050610a12565b50610b4d600a54611140565b15156109c2565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1610ba8611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af1610bfe611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a182806109b4565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fd5b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b60405162461bcd60e51b815260206004820152603260248201527f496e73756666696369656e7420636f6e74726163742062616c616e636520666f60448201527172206e6174697665207472616e736665727360701b6064820152608490fd5b5060075460081c6001600160a01b03161515806109af57506008546001600160a01b031615156109af565b506001610928565b505f610922565b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f4d7573742068617665206d696e74657220726f6c6520746f206d696e740000006044820152606490fd5b346101c25760403660031901126101c257610dd161112a565b336001600160a01b03821603610ded5761001a906004356115ee565b63334bd91960e11b5f5260045ffd5b346101c2575f3660031901126101c257602060ff60075416604051908152f35b346101c25760403660031901126101c257600435610e3861112a565b610e506101fe835f525f602052600160405f20015490565b610e5a81836119a4565b610e6057005b5f9182526001602052604090912061001a916001600160a01b031690611ad5565b346101c25760203660031901126101c2576020610eab6004355f525f602052600160405f20015490565b604051908152f35b346101c25760603660031901126101c257610543610ecf611114565b610ed761112a565b60443591610ee68333836111ae565b611251565b346101c2575f3660031901126101c2576020600454604051908152f35b346101c25760403660031901126101c257610f21611114565b602435903315610f9d576001600160a01b0316908115610f8a57335f52600360205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346101c2575f3660031901126101c2576040515f600554610fd081611140565b80845290600181169081156106ba5750600114610ff75761066b8361065f81850382611178565b60055f9081527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0939250905b80821061103b5750909150810160200161065f61064f565b919260018160209254838588010152019101909291611023565b346101c2575f3660031901126101c2576008546040516001600160a01b039091168152602090f35b346101c25760203660031901126101c2576004359063ffffffff60e01b82168092036101c257602091635a05180f60e01b81149081156110bf575b5015158152f35b637965db0b60e01b8114915081156110d9575b50836110b8565b6301ffc9a760e01b149050836110d2565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036101c257565b602435906001600160a01b03821682036101c257565b90600182811c9216801561116e575b602083101461115a57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161114f565b90601f8019910116810190811067ffffffffffffffff82111761119a57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160a01b039081165f818152600360209081526040808320948616835293905291909120549291905f1984106111e8575b50505050565b82841061122e578015610f9d576001600160a01b03821615610f8a575f52600360205260405f209060018060a01b03165f5260205260405f20910390555f8080806111e2565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b03169081156115a3576001600160a01b0316918215610d605760ff600c54168061159b575b80611593575b6112ef575b815f52600260205260405f20548181106112d657815f516020611c855f395f51905f5292602092855f52600284520360405f2055845f526002825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f526060604051848152856020820152836040820152a16009548015801580611568575b611480575b5050600b548015158061146d575b61133d575b50611288565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461136681611140565b908160648501526001811690815f1461144a5750600114611404575b508190602093604483015203815f6108005af1908115610acd575f916113c9575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f611337565b90506020813d6020116113fc575b816113e460209383611178565b810103126101c2575180151581036101c2575f6113a3565b3d91506113d7565b600a5f90815291505f516020611c255f395f51905f525b81831061143057505081016084016020611382565b80546084848801015285935060209092019160010161141b565b60ff191660848086019190915291151560051b8401909101915060209050611382565b50611479600a54611140565b1515611332565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af16114d4611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af161152a611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f80611324565b5060075460081c6001600160a01b031615158061131f57506008546001600160a01b0316151561131f565b506001611283565b50600161127d565b634b637e8f60e11b5f525f60045260245ffd5b5f8181526020818152604080832033845290915290205460ff16156115d85750565b63e2517d3f60e01b5f523360045260245260445ffd5b6115f88282611a2c565b918261160357505090565b5f91825260016020526040909120611624916001600160a01b031690611b3f565b5090565b9091906001600160a01b031680156115a35760ff600c54168061195d575b80611956575b6116b2575b805f52600260205260405f2054838110611698576020845f94955f516020611c855f395f51905f5293858752600284520360408620558060045403600455604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b5f516020611c055f395f51905f5260606040518381525f6020820152856040820152a1600954801580158061192b575b611843575b5050600b5480151580611830575b611700575b50611651565b604051906353266bbb60e01b825230600483015260606024830152815f600a5461172981611140565b908160648501526001811690815f1461180d57506001146117c7575b508190602093604483015203815f6108005af1908115610acd575f9161178c575b5015610a59575f516020611ca55f395f51905f526020600b54604051908152a15f6116fa565b90506020813d6020116117bf575b816117a760209383611178565b810103126101c2575180151581036101c2575f611766565b3d915061179a565b600a5f90815291505f516020611c255f395f51905f525b8183106117f357505081016084016020611745565b8054608484880101528593506020909201916001016117de565b60ff191660848086019190915291151560051b8401909101915060209050611745565b5061183c600a54611140565b15156116f5565b8160011b90828204600214171561096b57475f516020611c455f395f51905f5260408051838152846020820152a110610cc6576007545f9182918291829160081c6001600160a01b03165af1611897611965565b5015610c81575f80808060018060a01b0360075460081c165f516020611c655f395f51905f5260606009549260405190815283602082015260016040820152a16008546001600160a01b03165af16118ed611965565b5015610c3c575f516020611c655f395f51905f52606060018060a01b0360085416600954604051918252602082015260026040820152a15f806116e7565b5060075460081c6001600160a01b03161515806116e257506008546001600160a01b031615156116e2565b505f61164c565b506001611646565b3d1561199f573d9067ffffffffffffffff821161119a5760405191611994601f8201601f191660200184611178565b82523d5f602084013e565b606090565b5f818152602081815260408083206001600160a01b038616845290915290205460ff16611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f818152602081815260408083206001600160a01b038616845290915290205460ff1615611a26575f818152602081815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b8054821015611ac1575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b6001810190825f528160205260405f2054155f14611b38578054600160401b81101561119a57611b25611b0f826001879401855584611aac565b819391549060031b91821b915f19901b19161790565b905554915f5260205260405f2055600190565b5050505f90565b906001820191815f528260205260405f20548015155f14611bfc575f19810181811161096b5782545f1981019190821161096b57818103611bc7575b50505080548015611bb3575f190190611b948282611aac565b8154905f199060031b1b19169055555f526020525f6040812055600190565b634e487b7160e01b5f52603160045260245ffd5b611be7611bd7611b0f9386611aac565b90549060031b1c92839286611aac565b90555f528360205260405f20555f8080611b7b565b505050505f9056fef8c99ceb8ca6b64b60019ae7ba043e6753f3aeb6d4d6da4632448e2f0ce24c7fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a83d9cb59aaaabeafebf96f5927674f7bdb281620132fb370f5486016f4557699709374e11d36c216b990e8a6a68cb669a6233bad8bc3abc452666829b8cc0ea25ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3eff6b9808ab5f93046dc92bff4d681788d48019c7bb71644624464cc99b51f15bda26469706673582212207609a9576cb1aae410a36b0a3e4d9dc682d28afdf6c41faec2af2156e922e26f64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/ERC20WithNativeTransfers.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/ICS20TransferTester.json b/contracts/solidity/ICS20TransferTester.json index 5100815e3..4355ad9c4 100644 --- a/contracts/solidity/ICS20TransferTester.json +++ b/contracts/solidity/ICS20TransferTester.json @@ -210,11 +210,11 @@ "type": "receive" } ], - "bytecode": "0x6080806040523460155761073c908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063339b204d146102d25780635627cd7d146100f15763c489744b0361000e57346100da5760403660031901126100da576004356001600160a01b038116908190036100da576024356001600160a01b038116908190036100da576020906024604051809481936370a0823160e01b835260048301525afa80156100e6575f906100af575b602090604051908152f35b506020813d6020116100de575b816100c9602093836103c9565b810103126100da57602090516100a4565b5f80fd5b3d91506100bc565b6040513d5f823e3d90fd5b346100da5761019f60206101488161010836610453565b95929c96829b9294998e9d9296995f60405180968195829463a9059cbb60e01b84526004840160209093929193604081019460018060a01b031681520152565b03926001600160a01b03165af15f91816102a3575b5061026057505f5160206106e75f395f51905f526040518061017e816105c3565b0390a15b60405163632535b960e01b81529a8b978897309360048a01610635565b03815f6108025af19283156100e6577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393610233575b506101e5604051928392836106ca565b0390a15f5160206106e75f395f51905f526040518061022e819060408252600e60408301526d34b1b999182fba3930b739b332b960911b60608301526001602060808401930152565b0390a1005b6102549060203d602011610259575b61024c81836103c9565b8101906105f2565b6101d5565b503d610242565b15610288575f5160206106e75f395f51905f526040518061028081610593565b0390a1610182565b5f5160206106e75f395f51905f5260405180610280816105c3565b6102c49192508a3d8c116102cb575b6102bc81836103c9565b81019061057b565b908d61015d565b503d6102b2565b346100da5760206103276102e536610453565b60405163a9059cbb60e01b81526001600160a01b0390991660048a015260248901979097529199959890979196929593949391839182905f9082906044820190565b03926001600160a01b03165af19081156100e6575f916103aa575b501561036d5786956020948661019f935f5160206106e75f395f51905f526040518061017e81610593565b60405162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6103c3915060203d6020116102cb576102bc81836103c9565b88610342565b90601f801991011681019081106001600160401b038211176103ea57604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156100da578035906001600160401b0382116103ea5760405192610432601f8401601f1916602001856103c9565b828452602083830101116100da57815f926020809301838601378301015290565b6101606003198201126100da576004356001600160a01b03811681036100da57916024356001600160a01b03811681036100da5791604435916064356001600160401b0381116100da57826104aa916004016103fe565b916084356001600160401b0381116100da57816104c9916004016103fe565b9160a4356001600160401b0381116100da57826104e8916004016103fe565b9160c4359160e4356001600160401b0381116100da5761050d836040926004016103fe565b926101031901126100da57604051604081018181106001600160401b038211176103ea57604052610104356001600160401b03811681036100da578152610124356001600160401b03811681036100da57602082015290610144356001600160401b03811681036100da5790565b908160209103126100da575180151581036100da5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301525f602060808401930152565b908160209103126100da57516001600160401b03811681036100da5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9593602098946001600160401b039661067e88966106708d976106636106a1986101408f8181520190610611565b8d81038a8f015290610611565b908b820360408d0152610611565b60608a01939093526001600160a01b0316608089015287820360a0890152610611565b958281511660c087015201511660e0840152166101008201526101208183039101525f81520190565b9291906106e1602091604086526040860190610611565b93015256fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220e3106dc4de5b4d8b1ae5f10d4f67c4bb8026436e39b417524c519ba33ef304e164736f6c634300081c0033", - "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063339b204d146102d25780635627cd7d146100f15763c489744b0361000e57346100da5760403660031901126100da576004356001600160a01b038116908190036100da576024356001600160a01b038116908190036100da576020906024604051809481936370a0823160e01b835260048301525afa80156100e6575f906100af575b602090604051908152f35b506020813d6020116100de575b816100c9602093836103c9565b810103126100da57602090516100a4565b5f80fd5b3d91506100bc565b6040513d5f823e3d90fd5b346100da5761019f60206101488161010836610453565b95929c96829b9294998e9d9296995f60405180968195829463a9059cbb60e01b84526004840160209093929193604081019460018060a01b031681520152565b03926001600160a01b03165af15f91816102a3575b5061026057505f5160206106e75f395f51905f526040518061017e816105c3565b0390a15b60405163632535b960e01b81529a8b978897309360048a01610635565b03815f6108025af19283156100e6577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393610233575b506101e5604051928392836106ca565b0390a15f5160206106e75f395f51905f526040518061022e819060408252600e60408301526d34b1b999182fba3930b739b332b960911b60608301526001602060808401930152565b0390a1005b6102549060203d602011610259575b61024c81836103c9565b8101906105f2565b6101d5565b503d610242565b15610288575f5160206106e75f395f51905f526040518061028081610593565b0390a1610182565b5f5160206106e75f395f51905f5260405180610280816105c3565b6102c49192508a3d8c116102cb575b6102bc81836103c9565b81019061057b565b908d61015d565b503d6102b2565b346100da5760206103276102e536610453565b60405163a9059cbb60e01b81526001600160a01b0390991660048a015260248901979097529199959890979196929593949391839182905f9082906044820190565b03926001600160a01b03165af19081156100e6575f916103aa575b501561036d5786956020948661019f935f5160206106e75f395f51905f526040518061017e81610593565b60405162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6103c3915060203d6020116102cb576102bc81836103c9565b88610342565b90601f801991011681019081106001600160401b038211176103ea57604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156100da578035906001600160401b0382116103ea5760405192610432601f8401601f1916602001856103c9565b828452602083830101116100da57815f926020809301838601378301015290565b6101606003198201126100da576004356001600160a01b03811681036100da57916024356001600160a01b03811681036100da5791604435916064356001600160401b0381116100da57826104aa916004016103fe565b916084356001600160401b0381116100da57816104c9916004016103fe565b9160a4356001600160401b0381116100da57826104e8916004016103fe565b9160c4359160e4356001600160401b0381116100da5761050d836040926004016103fe565b926101031901126100da57604051604081018181106001600160401b038211176103ea57604052610104356001600160401b03811681036100da578152610124356001600160401b03811681036100da57602082015290610144356001600160401b03811681036100da5790565b908160209103126100da575180151581036100da5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301525f602060808401930152565b908160209103126100da57516001600160401b03811681036100da5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9593602098946001600160401b039661067e88966106708d976106636106a1986101408f8181520190610611565b8d81038a8f015290610611565b908b820360408d0152610611565b60608a01939093526001600160a01b0316608089015287820360a0890152610611565b958281511660c087015201511660e0840152166101008201526101208183039101525f81520190565b9291906106e1602091604086526040860190610611565b93015256fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220e3106dc4de5b4d8b1ae5f10d4f67c4bb8026436e39b417524c519ba33ef304e164736f6c634300081c0033", + "bytecode": "0x6080806040523460155761073c908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063339b204d146102d25780635627cd7d146100f15763c489744b0361000e57346100da5760403660031901126100da576004356001600160a01b038116908190036100da576024356001600160a01b038116908190036100da576020906024604051809481936370a0823160e01b835260048301525afa80156100e6575f906100af575b602090604051908152f35b506020813d6020116100de575b816100c9602093836103c9565b810103126100da57602090516100a4565b5f80fd5b3d91506100bc565b6040513d5f823e3d90fd5b346100da5761019f60206101488161010836610453565b95929c96829b9294998e9d9296995f60405180968195829463a9059cbb60e01b84526004840160209093929193604081019460018060a01b031681520152565b03926001600160a01b03165af15f91816102a3575b5061026057505f5160206106e75f395f51905f526040518061017e816105c3565b0390a15b60405163632535b960e01b81529a8b978897309360048a01610635565b03815f6108025af19283156100e6577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393610233575b506101e5604051928392836106ca565b0390a15f5160206106e75f395f51905f526040518061022e819060408252600e60408301526d34b1b999182fba3930b739b332b960911b60608301526001602060808401930152565b0390a1005b6102549060203d602011610259575b61024c81836103c9565b8101906105f2565b6101d5565b503d610242565b15610288575f5160206106e75f395f51905f526040518061028081610593565b0390a1610182565b5f5160206106e75f395f51905f5260405180610280816105c3565b6102c49192508a3d8c116102cb575b6102bc81836103c9565b81019061057b565b908d61015d565b503d6102b2565b346100da5760206103276102e536610453565b60405163a9059cbb60e01b81526001600160a01b0390991660048a015260248901979097529199959890979196929593949391839182905f9082906044820190565b03926001600160a01b03165af19081156100e6575f916103aa575b501561036d5786956020948661019f935f5160206106e75f395f51905f526040518061017e81610593565b60405162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6103c3915060203d6020116102cb576102bc81836103c9565b88610342565b90601f801991011681019081106001600160401b038211176103ea57604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156100da578035906001600160401b0382116103ea5760405192610432601f8401601f1916602001856103c9565b828452602083830101116100da57815f926020809301838601378301015290565b6101606003198201126100da576004356001600160a01b03811681036100da57916024356001600160a01b03811681036100da5791604435916064356001600160401b0381116100da57826104aa916004016103fe565b916084356001600160401b0381116100da57816104c9916004016103fe565b9160a4356001600160401b0381116100da57826104e8916004016103fe565b9160c4359160e4356001600160401b0381116100da5761050d836040926004016103fe565b926101031901126100da57604051604081018181106001600160401b038211176103ea57604052610104356001600160401b03811681036100da578152610124356001600160401b03811681036100da57602082015290610144356001600160401b03811681036100da5790565b908160209103126100da575180151581036100da5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301525f602060808401930152565b908160209103126100da57516001600160401b03811681036100da5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9593602098946001600160401b039661067e88966106708d976106636106a1986101408f8181520190610611565b8d81038a8f015290610611565b908b820360408d0152610611565b60608a01939093526001600160a01b0316608089015287820360a0890152610611565b958281511660c087015201511660e0840152166101008201526101208183039101525f81520190565b9291906106e1602091604086526040860190610611565b93015256fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220c11ab3490ad331023ac0782d214bca89aa72d7e63b16920ba0d06d9bdc8dbfcf64736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063339b204d146102d25780635627cd7d146100f15763c489744b0361000e57346100da5760403660031901126100da576004356001600160a01b038116908190036100da576024356001600160a01b038116908190036100da576020906024604051809481936370a0823160e01b835260048301525afa80156100e6575f906100af575b602090604051908152f35b506020813d6020116100de575b816100c9602093836103c9565b810103126100da57602090516100a4565b5f80fd5b3d91506100bc565b6040513d5f823e3d90fd5b346100da5761019f60206101488161010836610453565b95929c96829b9294998e9d9296995f60405180968195829463a9059cbb60e01b84526004840160209093929193604081019460018060a01b031681520152565b03926001600160a01b03165af15f91816102a3575b5061026057505f5160206106e75f395f51905f526040518061017e816105c3565b0390a15b60405163632535b960e01b81529a8b978897309360048a01610635565b03815f6108025af19283156100e6577f6584ffa41ce5e25ea3ea0164e8171d3c01993df4e6a56d6a8bc2e731d6ea641393610233575b506101e5604051928392836106ca565b0390a15f5160206106e75f395f51905f526040518061022e819060408252600e60408301526d34b1b999182fba3930b739b332b960911b60608301526001602060808401930152565b0390a1005b6102549060203d602011610259575b61024c81836103c9565b8101906105f2565b6101d5565b503d610242565b15610288575f5160206106e75f395f51905f526040518061028081610593565b0390a1610182565b5f5160206106e75f395f51905f5260405180610280816105c3565b6102c49192508a3d8c116102cb575b6102bc81836103c9565b81019061057b565b908d61015d565b503d6102b2565b346100da5760206103276102e536610453565b60405163a9059cbb60e01b81526001600160a01b0390991660048a015260248901979097529199959890979196929593949391839182905f9082906044820190565b03926001600160a01b03165af19081156100e6575f916103aa575b501561036d5786956020948661019f935f5160206106e75f395f51905f526040518061017e81610593565b60405162461bcd60e51b8152602060048201526015602482015274115490cc8c081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b6103c3915060203d6020116102cb576102bc81836103c9565b88610342565b90601f801991011681019081106001600160401b038211176103ea57604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156100da578035906001600160401b0382116103ea5760405192610432601f8401601f1916602001856103c9565b828452602083830101116100da57815f926020809301838601378301015290565b6101606003198201126100da576004356001600160a01b03811681036100da57916024356001600160a01b03811681036100da5791604435916064356001600160401b0381116100da57826104aa916004016103fe565b916084356001600160401b0381116100da57816104c9916004016103fe565b9160a4356001600160401b0381116100da57826104e8916004016103fe565b9160c4359160e4356001600160401b0381116100da5761050d836040926004016103fe565b926101031901126100da57604051604081018181106001600160401b038211176103ea57604052610104356001600160401b03811681036100da578152610124356001600160401b03811681036100da57602082015290610144356001600160401b03811681036100da5790565b908160209103126100da575180151581036100da5790565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301526001602060808401930152565b9060408252600e60408301526d32b93199182fba3930b739b332b960911b60608301525f602060808401930152565b908160209103126100da57516001600160401b03811681036100da5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9593602098946001600160401b039661067e88966106708d976106636106a1986101408f8181520190610611565b8d81038a8f015290610611565b908b820360408d0152610611565b60608a01939093526001600160a01b0316608089015287820360a0890152610611565b958281511660c087015201511660e0840152166101008201526101208183039101525f81520190565b9291906106e1602091604086526040860190610611565b93015256fe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220c11ab3490ad331023ac0782d214bca89aa72d7e63b16920ba0d06d9bdc8dbfcf64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/ICS20TransferTester.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/SequentialICS20Sender.json b/contracts/solidity/SequentialICS20Sender.json index 3401b20e7..504037afe 100644 --- a/contracts/solidity/SequentialICS20Sender.json +++ b/contracts/solidity/SequentialICS20Sender.json @@ -161,11 +161,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523460155761054a908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c806365ab4537146100c85763f8b2cb4f1461002f575f80fd5b346100b15760203660031901126100b157602460206001600160a01b03610054610380565b16604051928380926370a0823160e01b82523060048301525afa80156100bd575f90610086575b602090604051908152f35b506020813d6020116100b5575b816100a0602093836103c5565b810103126100b1576020905161007b565b5f80fd5b3d9150610093565b6040513d5f823e3d90fd5b346100b15760e03660031901126100b1576100e1610380565b6024356001600160401b0381116100b1576101009036906004016103e6565b6044356001600160401b0381116100b15761011f9036906004016103e6565b6064356001600160401b0381116100b15761013e9036906004016103e6565b906084356001600160401b0381116100b15761015e9036906004016103e6565b60a4356001600160401b0381168091036100b1576040516323b872dd60e01b815233600482015230602482015260c43560448201819052966001600160a01b031692906020816064815f885af19081156100bd575f91610345575b501561030b576020957f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d604061026f9581519081528a8a820152a18487898861022f60405161020781610396565b60018152888582015287604051968795869563632535b960e01b875230928b6004890161047e565b03815f6108025af16102f0575b506040519261024a84610396565b600184528784015260405163632535b960e01b8152978896879630936004890161047e565b03815f6108025af190816102c3575b506102c15760405162461bcd60e51b815260206004820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b6044820152606490fd5b005b6102e49060203d6020116102e9575b6102dc81836103c5565b81019061043b565b61027e565b503d6102d2565b61030690883d8a116102e9576102dc81836103c5565b61023c565b60405162461bcd60e51b8152602060048201526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90506020813d602011610378575b81610360602093836103c5565b810103126100b1575180151581036100b157886101b9565b3d9150610353565b600435906001600160a01b03821682036100b157565b604081019081106001600160401b038211176103b157604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b038211176103b157604052565b81601f820112156100b1578035906001600160401b0382116103b1576040519261041a601f8401601f1916602001856103c5565b828452602083830101116100b157815f926020809301838601378301015290565b908160209103126100b157516001600160401b03811681036100b15790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9495602097966104c889956104ba6104eb966104ad6001600160401b039a976101408d526101408d019061045a565b908b82038a8d015261045a565b9089820360408b015261045a565b60608801939093526001600160a01b0316608087015285820360a087015261045a565b938281511660c085015201511660e08201525f6101008201526101208183039101525f8152019056fea26469706673582212203236623972e330707ffc91517054172b187da60032bec9cc2cc5572f4459efe264736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c806365ab4537146100c85763f8b2cb4f1461002f575f80fd5b346100b15760203660031901126100b157602460206001600160a01b03610054610380565b16604051928380926370a0823160e01b82523060048301525afa80156100bd575f90610086575b602090604051908152f35b506020813d6020116100b5575b816100a0602093836103c5565b810103126100b1576020905161007b565b5f80fd5b3d9150610093565b6040513d5f823e3d90fd5b346100b15760e03660031901126100b1576100e1610380565b6024356001600160401b0381116100b1576101009036906004016103e6565b6044356001600160401b0381116100b15761011f9036906004016103e6565b6064356001600160401b0381116100b15761013e9036906004016103e6565b906084356001600160401b0381116100b15761015e9036906004016103e6565b60a4356001600160401b0381168091036100b1576040516323b872dd60e01b815233600482015230602482015260c43560448201819052966001600160a01b031692906020816064815f885af19081156100bd575f91610345575b501561030b576020957f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d604061026f9581519081528a8a820152a18487898861022f60405161020781610396565b60018152888582015287604051968795869563632535b960e01b875230928b6004890161047e565b03815f6108025af16102f0575b506040519261024a84610396565b600184528784015260405163632535b960e01b8152978896879630936004890161047e565b03815f6108025af190816102c3575b506102c15760405162461bcd60e51b815260206004820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b6044820152606490fd5b005b6102e49060203d6020116102e9575b6102dc81836103c5565b81019061043b565b61027e565b503d6102d2565b61030690883d8a116102e9576102dc81836103c5565b61023c565b60405162461bcd60e51b8152602060048201526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90506020813d602011610378575b81610360602093836103c5565b810103126100b1575180151581036100b157886101b9565b3d9150610353565b600435906001600160a01b03821682036100b157565b604081019081106001600160401b038211176103b157604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b038211176103b157604052565b81601f820112156100b1578035906001600160401b0382116103b1576040519261041a601f8401601f1916602001856103c5565b828452602083830101116100b157815f926020809301838601378301015290565b908160209103126100b157516001600160401b03811681036100b15790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9495602097966104c889956104ba6104eb966104ad6001600160401b039a976101408d526101408d019061045a565b908b82038a8d015261045a565b9089820360408b015261045a565b60608801939093526001600160a01b0316608087015285820360a087015261045a565b938281511660c085015201511660e08201525f6101008201526101208183039101525f8152019056fea26469706673582212203236623972e330707ffc91517054172b187da60032bec9cc2cc5572f4459efe264736f6c634300081c0033", + "bytecode": "0x6080806040523460155761054a908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c806365ab4537146100c85763f8b2cb4f1461002f575f80fd5b346100b15760203660031901126100b157602460206001600160a01b03610054610380565b16604051928380926370a0823160e01b82523060048301525afa80156100bd575f90610086575b602090604051908152f35b506020813d6020116100b5575b816100a0602093836103c5565b810103126100b1576020905161007b565b5f80fd5b3d9150610093565b6040513d5f823e3d90fd5b346100b15760e03660031901126100b1576100e1610380565b6024356001600160401b0381116100b1576101009036906004016103e6565b6044356001600160401b0381116100b15761011f9036906004016103e6565b6064356001600160401b0381116100b15761013e9036906004016103e6565b906084356001600160401b0381116100b15761015e9036906004016103e6565b60a4356001600160401b0381168091036100b1576040516323b872dd60e01b815233600482015230602482015260c43560448201819052966001600160a01b031692906020816064815f885af19081156100bd575f91610345575b501561030b576020957f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d604061026f9581519081528a8a820152a18487898861022f60405161020781610396565b60018152888582015287604051968795869563632535b960e01b875230928b6004890161047e565b03815f6108025af16102f0575b506040519261024a84610396565b600184528784015260405163632535b960e01b8152978896879630936004890161047e565b03815f6108025af190816102c3575b506102c15760405162461bcd60e51b815260206004820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b6044820152606490fd5b005b6102e49060203d6020116102e9575b6102dc81836103c5565b81019061043b565b61027e565b503d6102d2565b61030690883d8a116102e9576102dc81836103c5565b61023c565b60405162461bcd60e51b8152602060048201526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90506020813d602011610378575b81610360602093836103c5565b810103126100b1575180151581036100b157886101b9565b3d9150610353565b600435906001600160a01b03821682036100b157565b604081019081106001600160401b038211176103b157604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b038211176103b157604052565b81601f820112156100b1578035906001600160401b0382116103b1576040519261041a601f8401601f1916602001856103c5565b828452602083830101116100b157815f926020809301838601378301015290565b908160209103126100b157516001600160401b03811681036100b15790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9495602097966104c889956104ba6104eb966104ad6001600160401b039a976101408d526101408d019061045a565b908b82038a8d015261045a565b9089820360408b015261045a565b60608801939093526001600160a01b0316608087015285820360a087015261045a565b938281511660c085015201511660e08201525f6101008201526101208183039101525f8152019056fea2646970667358221220154d53ebb469c463c8181740dafe388e204eeb54f56838dbe9f007470cce066f64736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c806365ab4537146100c85763f8b2cb4f1461002f575f80fd5b346100b15760203660031901126100b157602460206001600160a01b03610054610380565b16604051928380926370a0823160e01b82523060048301525afa80156100bd575f90610086575b602090604051908152f35b506020813d6020116100b5575b816100a0602093836103c5565b810103126100b1576020905161007b565b5f80fd5b3d9150610093565b6040513d5f823e3d90fd5b346100b15760e03660031901126100b1576100e1610380565b6024356001600160401b0381116100b1576101009036906004016103e6565b6044356001600160401b0381116100b15761011f9036906004016103e6565b6064356001600160401b0381116100b15761013e9036906004016103e6565b906084356001600160401b0381116100b15761015e9036906004016103e6565b60a4356001600160401b0381168091036100b1576040516323b872dd60e01b815233600482015230602482015260c43560448201819052966001600160a01b031692906020816064815f885af19081156100bd575f91610345575b501561030b576020957f5a0ebf9442637ca6e817894481a6de0c29715a73efc9e02bb7ef4ed52843362d604061026f9581519081528a8a820152a18487898861022f60405161020781610396565b60018152888582015287604051968795869563632535b960e01b875230928b6004890161047e565b03815f6108025af16102f0575b506040519261024a84610396565b600184528784015260405163632535b960e01b8152978896879630936004890161047e565b03815f6108025af190816102c3575b506102c15760405162461bcd60e51b815260206004820152601660248201527514d958dbdb9908151c985b9cd9995c8811985a5b195960521b6044820152606490fd5b005b6102e49060203d6020116102e9575b6102dc81836103c5565b81019061043b565b61027e565b503d6102d2565b61030690883d8a116102e9576102dc81836103c5565b61023c565b60405162461bcd60e51b8152602060048201526012602482015271151c985b9cd9995c881a5b8819985a5b195960721b6044820152606490fd5b90506020813d602011610378575b81610360602093836103c5565b810103126100b1575180151581036100b157886101b9565b3d9150610353565b600435906001600160a01b03821682036100b157565b604081019081106001600160401b038211176103b157604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b038211176103b157604052565b81601f820112156100b1578035906001600160401b0382116103b1576040519261041a601f8401601f1916602001856103c5565b828452602083830101116100b157815f926020809301838601378301015290565b908160209103126100b157516001600160401b03811681036100b15790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9495602097966104c889956104ba6104eb966104ad6001600160401b039a976101408d526101408d019061045a565b908b82038a8d015261045a565b9089820360408b015261045a565b60608801939093526001600160a01b0316608087015285820360a087015261045a565b938281511660c085015201511660e08201525f6101008201526101208183039101525f8152019056fea2646970667358221220154d53ebb469c463c8181740dafe388e204eeb54f56838dbe9f007470cce066f64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/SequentialICS20Sender.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/SequentialOperationsTester.json b/contracts/solidity/SequentialOperationsTester.json index 603c9922d..796da1423 100644 --- a/contracts/solidity/SequentialOperationsTester.json +++ b/contracts/solidity/SequentialOperationsTester.json @@ -267,11 +267,11 @@ "type": "receive" } ], - "bytecode": "0x60808060405234601557610aca908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063456503c8146105805780635b3d97d5146104bd5780635c3f86c9146103765780636e348ad6146101a45780636f9fb98a14610189578063c489744b146100da578063e1f756c31461009e5763efd8be620361000e573461009a57602036600319011261009a5760206100916106c4565b31604051908152f35b5f80fd5b604036600319011261009a5760205f8080806100b86106c4565b602435906001600160a01b03165af16100cf61097b565b506040519015158152f35b3461009a57604036600319011261009a576100f36106c4565b6024356001600160a01b0381169081900361009a576040516370a0823160e01b8152600481019190915290602090829060249082906001600160a01b03165afa801561017e575f9061014b575b602090604051908152f35b506020813d602011610176575b81610165602093836106da565b8101031261009a5760209051610140565b3d9150610158565b6040513d5f823e3d90fd5b3461009a575f36600319011261009a57602047604051908152f35b3461009a576101b236610772565b60405163a9059cbb60e01b81526001600160a01b0385811660048301526024820185905290951691906020866044815f875af191821561017e5761020360209361023d985f91610359575b50610833565b5f516020610a755f395f51905f526040518061021e81610877565b0390a16040516353266bbb60e01b8152968792839230600485016108a2565b03815f6108005af192831561017e576102ae9460209461033e575b505f516020610a755f395f51905f5260405180610274816108e3565b0390a160405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b03925af1801561017e576102c9915f9161030f575b50610936565b5f516020610a755f395f51905f526040518061030a81906040825260096040830152683a3930b739b332b91960b91b60608301526001602060808401930152565b0390a1005b610331915060203d602011610337575b61032981836106da565b81019061081b565b826102c3565b503d61031f565b61035490853d87116103375761032981836106da565b610258565b6103709150853d87116103375761032981836106da565b896101fd565b6104355f80808060206103ef61038b366107d1565b91946001600160a01b03909316939291906103b5878080808a8a5af16103af61097b565b506109aa565b5f516020610a755f395f51905f52604051806103d0816109f6565b0390a16040516353266bbb60e01b8152938492839230600485016108a2565b0381876108005af190816104a0575b5015831461047d575f516020610a755f395f51905f52604051806104218161090d565b0390a15b5af161042f61097b565b50610a28565b5f516020610a755f395f51905f526040518061030a819060408252601060408301526f3730ba34bb32afba3930b739b332b91960811b60608301526001602060808401930152565b5f516020610a755f395f51905f5260405180610498816108e3565b0390a1610425565b6104b89060203d6020116103375761032981836106da565b6103fe565b61052860206104cb366107d1565b91936001600160a01b039093169291906104ee5f80808089895af16103af61097b565b5f516020610a755f395f51905f5260405180610509816109f6565b0390a16040516353266bbb60e01b8152958692839230600485016108a2565b03815f6108005af192831561017e575f80938193829361043597610563575b505f516020610a755f395f51905f5260405180610421816108e3565b61057b9060203d6020116103375761032981836106da565b610547565b3461009a5761058e36610772565b60405163a9059cbb60e01b81526001600160a01b03858116600483015260248201859052919592949290911691906020816044815f875af1801561017e576102ae966020966105e88893610603955f916106a75750610833565b5f516020610a755f395f51905f52604051806103d081610877565b03815f6108005af1908161068c575b50610669575f516020610a755f395f51905f52604051806102748161090d565b60405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b5f516020610a755f395f51905f5260405180610684816108e3565b0390a1610632565b6106a290863d88116103375761032981836106da565b610612565b6106be9150853d87116103375761032981836106da565b8b6101fd565b600435906001600160a01b038216820361009a57565b90601f8019910116810190811067ffffffffffffffff8211176106fc57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106fc57601f01601f191660200190565b81601f8201121561009a5780359061074382610710565b9261075160405194856106da565b8284526020838301011161009a57815f926020809301838601378301015290565b9060a060031983011261009a576004356001600160a01b038116810361009a57916024356001600160a01b038116810361009a5791604435916064359067ffffffffffffffff821161009a576107ca9160040161072c565b9060843590565b608060031982011261009a576004356001600160a01b038116810361009a5791602435916044359067ffffffffffffffff821161009a576108149160040161072c565b9060643590565b9081602091031261009a5751801515810361009a5790565b1561083a57565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561093d57565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d156109a5573d9061098c82610710565b9161099a60405193846106da565b82523d5f602084013e565b606090565b156109b157565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a2f57565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212206f0fe7b19e0db887c92d2d03cc0836fdd5b1786bdb94dfbd08ae4ef1af86d1a164736f6c634300081c0033", - "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063456503c8146105805780635b3d97d5146104bd5780635c3f86c9146103765780636e348ad6146101a45780636f9fb98a14610189578063c489744b146100da578063e1f756c31461009e5763efd8be620361000e573461009a57602036600319011261009a5760206100916106c4565b31604051908152f35b5f80fd5b604036600319011261009a5760205f8080806100b86106c4565b602435906001600160a01b03165af16100cf61097b565b506040519015158152f35b3461009a57604036600319011261009a576100f36106c4565b6024356001600160a01b0381169081900361009a576040516370a0823160e01b8152600481019190915290602090829060249082906001600160a01b03165afa801561017e575f9061014b575b602090604051908152f35b506020813d602011610176575b81610165602093836106da565b8101031261009a5760209051610140565b3d9150610158565b6040513d5f823e3d90fd5b3461009a575f36600319011261009a57602047604051908152f35b3461009a576101b236610772565b60405163a9059cbb60e01b81526001600160a01b0385811660048301526024820185905290951691906020866044815f875af191821561017e5761020360209361023d985f91610359575b50610833565b5f516020610a755f395f51905f526040518061021e81610877565b0390a16040516353266bbb60e01b8152968792839230600485016108a2565b03815f6108005af192831561017e576102ae9460209461033e575b505f516020610a755f395f51905f5260405180610274816108e3565b0390a160405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b03925af1801561017e576102c9915f9161030f575b50610936565b5f516020610a755f395f51905f526040518061030a81906040825260096040830152683a3930b739b332b91960b91b60608301526001602060808401930152565b0390a1005b610331915060203d602011610337575b61032981836106da565b81019061081b565b826102c3565b503d61031f565b61035490853d87116103375761032981836106da565b610258565b6103709150853d87116103375761032981836106da565b896101fd565b6104355f80808060206103ef61038b366107d1565b91946001600160a01b03909316939291906103b5878080808a8a5af16103af61097b565b506109aa565b5f516020610a755f395f51905f52604051806103d0816109f6565b0390a16040516353266bbb60e01b8152938492839230600485016108a2565b0381876108005af190816104a0575b5015831461047d575f516020610a755f395f51905f52604051806104218161090d565b0390a15b5af161042f61097b565b50610a28565b5f516020610a755f395f51905f526040518061030a819060408252601060408301526f3730ba34bb32afba3930b739b332b91960811b60608301526001602060808401930152565b5f516020610a755f395f51905f5260405180610498816108e3565b0390a1610425565b6104b89060203d6020116103375761032981836106da565b6103fe565b61052860206104cb366107d1565b91936001600160a01b039093169291906104ee5f80808089895af16103af61097b565b5f516020610a755f395f51905f5260405180610509816109f6565b0390a16040516353266bbb60e01b8152958692839230600485016108a2565b03815f6108005af192831561017e575f80938193829361043597610563575b505f516020610a755f395f51905f5260405180610421816108e3565b61057b9060203d6020116103375761032981836106da565b610547565b3461009a5761058e36610772565b60405163a9059cbb60e01b81526001600160a01b03858116600483015260248201859052919592949290911691906020816044815f875af1801561017e576102ae966020966105e88893610603955f916106a75750610833565b5f516020610a755f395f51905f52604051806103d081610877565b03815f6108005af1908161068c575b50610669575f516020610a755f395f51905f52604051806102748161090d565b60405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b5f516020610a755f395f51905f5260405180610684816108e3565b0390a1610632565b6106a290863d88116103375761032981836106da565b610612565b6106be9150853d87116103375761032981836106da565b8b6101fd565b600435906001600160a01b038216820361009a57565b90601f8019910116810190811067ffffffffffffffff8211176106fc57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106fc57601f01601f191660200190565b81601f8201121561009a5780359061074382610710565b9261075160405194856106da565b8284526020838301011161009a57815f926020809301838601378301015290565b9060a060031983011261009a576004356001600160a01b038116810361009a57916024356001600160a01b038116810361009a5791604435916064359067ffffffffffffffff821161009a576107ca9160040161072c565b9060843590565b608060031982011261009a576004356001600160a01b038116810361009a5791602435916044359067ffffffffffffffff821161009a576108149160040161072c565b9060643590565b9081602091031261009a5751801515810361009a5790565b1561083a57565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561093d57565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d156109a5573d9061098c82610710565b9161099a60405193846106da565b82523d5f602084013e565b606090565b156109b157565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a2f57565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a26469706673582212206f0fe7b19e0db887c92d2d03cc0836fdd5b1786bdb94dfbd08ae4ef1af86d1a164736f6c634300081c0033", + "bytecode": "0x60808060405234601557610aca908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063456503c8146105805780635b3d97d5146104bd5780635c3f86c9146103765780636e348ad6146101a45780636f9fb98a14610189578063c489744b146100da578063e1f756c31461009e5763efd8be620361000e573461009a57602036600319011261009a5760206100916106c4565b31604051908152f35b5f80fd5b604036600319011261009a5760205f8080806100b86106c4565b602435906001600160a01b03165af16100cf61097b565b506040519015158152f35b3461009a57604036600319011261009a576100f36106c4565b6024356001600160a01b0381169081900361009a576040516370a0823160e01b8152600481019190915290602090829060249082906001600160a01b03165afa801561017e575f9061014b575b602090604051908152f35b506020813d602011610176575b81610165602093836106da565b8101031261009a5760209051610140565b3d9150610158565b6040513d5f823e3d90fd5b3461009a575f36600319011261009a57602047604051908152f35b3461009a576101b236610772565b60405163a9059cbb60e01b81526001600160a01b0385811660048301526024820185905290951691906020866044815f875af191821561017e5761020360209361023d985f91610359575b50610833565b5f516020610a755f395f51905f526040518061021e81610877565b0390a16040516353266bbb60e01b8152968792839230600485016108a2565b03815f6108005af192831561017e576102ae9460209461033e575b505f516020610a755f395f51905f5260405180610274816108e3565b0390a160405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b03925af1801561017e576102c9915f9161030f575b50610936565b5f516020610a755f395f51905f526040518061030a81906040825260096040830152683a3930b739b332b91960b91b60608301526001602060808401930152565b0390a1005b610331915060203d602011610337575b61032981836106da565b81019061081b565b826102c3565b503d61031f565b61035490853d87116103375761032981836106da565b610258565b6103709150853d87116103375761032981836106da565b896101fd565b6104355f80808060206103ef61038b366107d1565b91946001600160a01b03909316939291906103b5878080808a8a5af16103af61097b565b506109aa565b5f516020610a755f395f51905f52604051806103d0816109f6565b0390a16040516353266bbb60e01b8152938492839230600485016108a2565b0381876108005af190816104a0575b5015831461047d575f516020610a755f395f51905f52604051806104218161090d565b0390a15b5af161042f61097b565b50610a28565b5f516020610a755f395f51905f526040518061030a819060408252601060408301526f3730ba34bb32afba3930b739b332b91960811b60608301526001602060808401930152565b5f516020610a755f395f51905f5260405180610498816108e3565b0390a1610425565b6104b89060203d6020116103375761032981836106da565b6103fe565b61052860206104cb366107d1565b91936001600160a01b039093169291906104ee5f80808089895af16103af61097b565b5f516020610a755f395f51905f5260405180610509816109f6565b0390a16040516353266bbb60e01b8152958692839230600485016108a2565b03815f6108005af192831561017e575f80938193829361043597610563575b505f516020610a755f395f51905f5260405180610421816108e3565b61057b9060203d6020116103375761032981836106da565b610547565b3461009a5761058e36610772565b60405163a9059cbb60e01b81526001600160a01b03858116600483015260248201859052919592949290911691906020816044815f875af1801561017e576102ae966020966105e88893610603955f916106a75750610833565b5f516020610a755f395f51905f52604051806103d081610877565b03815f6108005af1908161068c575b50610669575f516020610a755f395f51905f52604051806102748161090d565b60405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b5f516020610a755f395f51905f5260405180610684816108e3565b0390a1610632565b6106a290863d88116103375761032981836106da565b610612565b6106be9150853d87116103375761032981836106da565b8b6101fd565b600435906001600160a01b038216820361009a57565b90601f8019910116810190811067ffffffffffffffff8211176106fc57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106fc57601f01601f191660200190565b81601f8201121561009a5780359061074382610710565b9261075160405194856106da565b8284526020838301011161009a57815f926020809301838601378301015290565b9060a060031983011261009a576004356001600160a01b038116810361009a57916024356001600160a01b038116810361009a5791604435916064359067ffffffffffffffff821161009a576107ca9160040161072c565b9060843590565b608060031982011261009a576004356001600160a01b038116810361009a5791602435916044359067ffffffffffffffff821161009a576108149160040161072c565b9060643590565b9081602091031261009a5751801515810361009a5790565b1561083a57565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561093d57565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d156109a5573d9061098c82610710565b9161099a60405193846106da565b82523d5f602084013e565b606090565b156109b157565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a2f57565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220c7402fc8a4c34b286ec94837561a74c46cc36764a761edc4a23e3b957e1bbd3364736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c8063456503c8146105805780635b3d97d5146104bd5780635c3f86c9146103765780636e348ad6146101a45780636f9fb98a14610189578063c489744b146100da578063e1f756c31461009e5763efd8be620361000e573461009a57602036600319011261009a5760206100916106c4565b31604051908152f35b5f80fd5b604036600319011261009a5760205f8080806100b86106c4565b602435906001600160a01b03165af16100cf61097b565b506040519015158152f35b3461009a57604036600319011261009a576100f36106c4565b6024356001600160a01b0381169081900361009a576040516370a0823160e01b8152600481019190915290602090829060249082906001600160a01b03165afa801561017e575f9061014b575b602090604051908152f35b506020813d602011610176575b81610165602093836106da565b8101031261009a5760209051610140565b3d9150610158565b6040513d5f823e3d90fd5b3461009a575f36600319011261009a57602047604051908152f35b3461009a576101b236610772565b60405163a9059cbb60e01b81526001600160a01b0385811660048301526024820185905290951691906020866044815f875af191821561017e5761020360209361023d985f91610359575b50610833565b5f516020610a755f395f51905f526040518061021e81610877565b0390a16040516353266bbb60e01b8152968792839230600485016108a2565b03815f6108005af192831561017e576102ae9460209461033e575b505f516020610a755f395f51905f5260405180610274816108e3565b0390a160405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b03925af1801561017e576102c9915f9161030f575b50610936565b5f516020610a755f395f51905f526040518061030a81906040825260096040830152683a3930b739b332b91960b91b60608301526001602060808401930152565b0390a1005b610331915060203d602011610337575b61032981836106da565b81019061081b565b826102c3565b503d61031f565b61035490853d87116103375761032981836106da565b610258565b6103709150853d87116103375761032981836106da565b896101fd565b6104355f80808060206103ef61038b366107d1565b91946001600160a01b03909316939291906103b5878080808a8a5af16103af61097b565b506109aa565b5f516020610a755f395f51905f52604051806103d0816109f6565b0390a16040516353266bbb60e01b8152938492839230600485016108a2565b0381876108005af190816104a0575b5015831461047d575f516020610a755f395f51905f52604051806104218161090d565b0390a15b5af161042f61097b565b50610a28565b5f516020610a755f395f51905f526040518061030a819060408252601060408301526f3730ba34bb32afba3930b739b332b91960811b60608301526001602060808401930152565b5f516020610a755f395f51905f5260405180610498816108e3565b0390a1610425565b6104b89060203d6020116103375761032981836106da565b6103fe565b61052860206104cb366107d1565b91936001600160a01b039093169291906104ee5f80808089895af16103af61097b565b5f516020610a755f395f51905f5260405180610509816109f6565b0390a16040516353266bbb60e01b8152958692839230600485016108a2565b03815f6108005af192831561017e575f80938193829361043597610563575b505f516020610a755f395f51905f5260405180610421816108e3565b61057b9060203d6020116103375761032981836106da565b610547565b3461009a5761058e36610772565b60405163a9059cbb60e01b81526001600160a01b03858116600483015260248201859052919592949290911691906020816044815f875af1801561017e576102ae966020966105e88893610603955f916106a75750610833565b5f516020610a755f395f51905f52604051806103d081610877565b03815f6108005af1908161068c575b50610669575f516020610a755f395f51905f52604051806102748161090d565b60405163a9059cbb60e01b81526001600160a01b0390911660048201526024810192909252909283919082905f9082906044820190565b5f516020610a755f395f51905f5260405180610684816108e3565b0390a1610632565b6106a290863d88116103375761032981836106da565b610612565b6106be9150853d87116103375761032981836106da565b8b6101fd565b600435906001600160a01b038216820361009a57565b90601f8019910116810190811067ffffffffffffffff8211176106fc57604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116106fc57601f01601f191660200190565b81601f8201121561009a5780359061074382610710565b9261075160405194856106da565b8284526020838301011161009a57815f926020809301838601378301015290565b9060a060031983011261009a576004356001600160a01b038116810361009a57916024356001600160a01b038116810361009a5791604435916064359067ffffffffffffffff821161009a576107ca9160040161072c565b9060843590565b608060031982011261009a576004356001600160a01b038116810361009a5791602435916044359067ffffffffffffffff821161009a576108149160040161072c565b9060643590565b9081602091031261009a5751801515810361009a5790565b1561083a57565b60405162461bcd60e51b8152602060048201526015602482015274119a5c9cdd081d1c985b9cd9995c8819985a5b1959605a1b6044820152606490fd5b906040825260096040830152687472616e736665723160b81b60608301526001602060808401930152565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b9060408252600860408301526764656c656761746560c01b60608301526001602060808401930152565b9060408252600860408301526764656c656761746560c01b60608301525f602060808401930152565b1561093d57565b60405162461bcd60e51b815260206004820152601660248201527514d958dbdb99081d1c985b9cd9995c8819985a5b195960521b6044820152606490fd5b3d156109a5573d9061098c82610710565b9161099a60405193846106da565b82523d5f602084013e565b606090565b156109b157565b60405162461bcd60e51b815260206004820152601c60248201527f4669727374206e6174697665207472616e73666572206661696c6564000000006044820152606490fd5b9060408252601060408301526f6e61746976655f7472616e736665723160801b60608301526001602060808401930152565b15610a2f57565b60405162461bcd60e51b815260206004820152601d60248201527f5365636f6e64206e6174697665207472616e73666572206661696c65640000006044820152606490fdfe9f4d25774676d497fe3d8c1e43709b68b186fad01b05798c1410a178ff4ed7d0a2646970667358221220c7402fc8a4c34b286ec94837561a74c46cc36764a761edc4a23e3b957e1bbd3364736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/SequentialOperationsTester.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/StaticCallTester.json b/contracts/solidity/StaticCallTester.json index 67b363154..098d712b8 100644 --- a/contracts/solidity/StaticCallTester.json +++ b/contracts/solidity/StaticCallTester.json @@ -165,11 +165,11 @@ "type": "function" } ], - "bytecode": "0x608034606f57601f6103c438819003918201601f19168301916001600160401b03831184841017607357808492602094604052833981010312606f57516001600160a01b03811690819003606f575f80546001600160a01b03191691909117905560405161033c90816100888239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80631cfa8b10146101455780634d751fbf146101715780634ebbe1cf146101715780635741229c1461014a57806361bc221a14610128578063677d4eca146101455780638ada066e14610128578063dfe9a695146100cc5763eae6bdeb1461007c575f80fd5b346100c8575f3660031901126100c85760205f8060405183810190634ebbe1cf60e01b8252600481526100b0602482610291565b5190305afa6100bd6102c7565b506040519015158152f35b5f80fd5b346100c85760205f806100b061011a6100e436610176565b6040516301cfa8b160e41b8882019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f198101835282610291565b346100c8575f3660031901126100c8576020600154604051908152f35b61019c565b346100c8575f3660031901126100c8575f546040516001600160a01b039091168152602090f35b610250565b60409060031901126100c8576004356001600160a01b03811681036100c8579060243590565b346100c8576101eb60206101af36610176565b5f805460405163a9059cbb60e01b81526001600160a01b0394851660048201526024810193909352919485939092169183919082906044820190565b03925af18015610245575f90610209575b6040519015158152602090f35b506020813d60201161023d575b8161022360209383610291565b810103126100c8575180151581036100c8576020906101fc565b3d9150610216565b6040513d5f823e3d90fd5b346100c8575f3660031901126100c8576001545f19811461027d5760016020910180600155604051908152f35b634e487b7160e01b5f52601160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b357604052565b634e487b7160e01b5f52604160045260245ffd5b3d15610301573d9067ffffffffffffffff82116102b357604051916102f6601f8201601f191660200184610291565b82523d5f602084013e565b60609056fea2646970667358221220d1130315c4f213c3e4e687388ce19556922312ebae3c44ef78b223ef6ddbc15264736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631cfa8b10146101455780634d751fbf146101715780634ebbe1cf146101715780635741229c1461014a57806361bc221a14610128578063677d4eca146101455780638ada066e14610128578063dfe9a695146100cc5763eae6bdeb1461007c575f80fd5b346100c8575f3660031901126100c85760205f8060405183810190634ebbe1cf60e01b8252600481526100b0602482610291565b5190305afa6100bd6102c7565b506040519015158152f35b5f80fd5b346100c85760205f806100b061011a6100e436610176565b6040516301cfa8b160e41b8882019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f198101835282610291565b346100c8575f3660031901126100c8576020600154604051908152f35b61019c565b346100c8575f3660031901126100c8575f546040516001600160a01b039091168152602090f35b610250565b60409060031901126100c8576004356001600160a01b03811681036100c8579060243590565b346100c8576101eb60206101af36610176565b5f805460405163a9059cbb60e01b81526001600160a01b0394851660048201526024810193909352919485939092169183919082906044820190565b03925af18015610245575f90610209575b6040519015158152602090f35b506020813d60201161023d575b8161022360209383610291565b810103126100c8575180151581036100c8576020906101fc565b3d9150610216565b6040513d5f823e3d90fd5b346100c8575f3660031901126100c8576001545f19811461027d5760016020910180600155604051908152f35b634e487b7160e01b5f52601160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b357604052565b634e487b7160e01b5f52604160045260245ffd5b3d15610301573d9067ffffffffffffffff82116102b357604051916102f6601f8201601f191660200184610291565b82523d5f602084013e565b60609056fea2646970667358221220d1130315c4f213c3e4e687388ce19556922312ebae3c44ef78b223ef6ddbc15264736f6c634300081c0033", + "bytecode": "0x608034606f57601f6103c438819003918201601f19168301916001600160401b03831184841017607357808492602094604052833981010312606f57516001600160a01b03811690819003606f575f80546001600160a01b03191691909117905560405161033c90816100888239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c80631cfa8b10146101455780634d751fbf146101715780634ebbe1cf146101715780635741229c1461014a57806361bc221a14610128578063677d4eca146101455780638ada066e14610128578063dfe9a695146100cc5763eae6bdeb1461007c575f80fd5b346100c8575f3660031901126100c85760205f8060405183810190634ebbe1cf60e01b8252600481526100b0602482610291565b5190305afa6100bd6102c7565b506040519015158152f35b5f80fd5b346100c85760205f806100b061011a6100e436610176565b6040516301cfa8b160e41b8882019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f198101835282610291565b346100c8575f3660031901126100c8576020600154604051908152f35b61019c565b346100c8575f3660031901126100c8575f546040516001600160a01b039091168152602090f35b610250565b60409060031901126100c8576004356001600160a01b03811681036100c8579060243590565b346100c8576101eb60206101af36610176565b5f805460405163a9059cbb60e01b81526001600160a01b0394851660048201526024810193909352919485939092169183919082906044820190565b03925af18015610245575f90610209575b6040519015158152602090f35b506020813d60201161023d575b8161022360209383610291565b810103126100c8575180151581036100c8576020906101fc565b3d9150610216565b6040513d5f823e3d90fd5b346100c8575f3660031901126100c8576001545f19811461027d5760016020910180600155604051908152f35b634e487b7160e01b5f52601160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b357604052565b634e487b7160e01b5f52604160045260245ffd5b3d15610301573d9067ffffffffffffffff82116102b357604051916102f6601f8201601f191660200184610291565b82523d5f602084013e565b60609056fea2646970667358221220784409a612f09146bf3858554a596a7578e8c75cb93e3a1f4b93729b401c026464736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631cfa8b10146101455780634d751fbf146101715780634ebbe1cf146101715780635741229c1461014a57806361bc221a14610128578063677d4eca146101455780638ada066e14610128578063dfe9a695146100cc5763eae6bdeb1461007c575f80fd5b346100c8575f3660031901126100c85760205f8060405183810190634ebbe1cf60e01b8252600481526100b0602482610291565b5190305afa6100bd6102c7565b506040519015158152f35b5f80fd5b346100c85760205f806100b061011a6100e436610176565b6040516301cfa8b160e41b8882019081526001600160a01b03909316602482015260448101919091529092909182906064820190565b03601f198101835282610291565b346100c8575f3660031901126100c8576020600154604051908152f35b61019c565b346100c8575f3660031901126100c8575f546040516001600160a01b039091168152602090f35b610250565b60409060031901126100c8576004356001600160a01b03811681036100c8579060243590565b346100c8576101eb60206101af36610176565b5f805460405163a9059cbb60e01b81526001600160a01b0394851660048201526024810193909352919485939092169183919082906044820190565b03925af18015610245575f90610209575b6040519015158152602090f35b506020813d60201161023d575b8161022360209383610291565b810103126100c8575180151581036100c8576020906101fc565b3d9150610216565b6040513d5f823e3d90fd5b346100c8575f3660031901126100c8576001545f19811461027d5760016020910180600155604051908152f35b634e487b7160e01b5f52601160045260245ffd5b90601f8019910116810190811067ffffffffffffffff8211176102b357604052565b634e487b7160e01b5f52604160045260245ffd5b3d15610301573d9067ffffffffffffffff82116102b357604051916102f6601f8201601f191660200184610291565b82523d5f602084013e565b60609056fea2646970667358221220784409a612f09146bf3858554a596a7578e8c75cb93e3a1f4b93729b401c026464736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/StaticCallTester.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/solidity/WATOM.json b/contracts/solidity/WATOM.json index a2e7df2b7..6b03674bd 100644 --- a/contracts/solidity/WATOM.json +++ b/contracts/solidity/WATOM.json @@ -173,11 +173,11 @@ "type": "receive" } ], - "bytecode": "0x60806040523461010f576100135f54610113565b601f81116100c8575b507f577261707065642041746f6d00000000000000000000000000000000000000185f5560015461004c90610113565b601f8111610080575b600a645741544f4d60d81b016001556002805460ff191660121790556040516105ab908161014c8239f35b60015f52601f0160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6908101905b8181106100bd5750610055565b5f81556001016100b0565b5f8052601f0160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563908101905b818110610104575061001c565b5f81556001016100f7565b5f80fd5b90600182811c92168015610141575b602083101461012d57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161012256fe60806040526004361015610022575b3615610018575f80fd5b61002061052e565b005b5f3560e01c806306fdde03146103a35780632e1a7d4d1461028d578063313ce5671461026d57806370a082311461023557806395d89b4114610131578063a9059cbb1461008a5763d0e30db00361000e575f3660031901126100865761002061052e565b5f80fd5b34610086576040366003190112610086576100a36104a7565b60243590335f5260036020526100bf8260405f205410156104bd565b335f52600360205260405f206100d6838254610500565b905560018060a01b031690815f52600360205260405f206100f8828254610521565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610086575f366003190112610086576040515f6001548060011c9060018116801561022b575b602083108114610217578285529081156101f35750600114610195575b610191836101858185038261045b565b6040519182918261047d565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b8082106101d957509091508101602001610185610175565b9192600181602092548385880101520191019092916101c1565b60ff191660208086019190915291151560051b840190910191506101859050610175565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610158565b34610086576020366003190112610086576001600160a01b036102566104a7565b165f526003602052602060405f2054604051908152f35b34610086575f36600319011261008657602060ff60025416604051908152f35b3461008657602036600319011261008657600435335f5260036020526102b98160405f205410156104bd565b335f52600360205260405f206102d0828254610500565b90555f80808084335af13d1561039e573d67ffffffffffffffff811161038a5760405190610308601f8201601f19166020018361045b565b81525f60203d92013e5b15610345576040519081527f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6560203392a2005b60405162461bcd60e51b815260206004820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b610312565b34610086575f366003190112610086576040515f5f548060011c90600181168015610451575b602083108114610217578285529081156101f357506001146103f557610191836101858185038261045b565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061043757509091508101602001610185610175565b91926001816020925483858801015201910190929161041f565b91607f16916103c9565b90601f8019910116810190811067ffffffffffffffff82111761038a57604052565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361008657565b156104c457565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161050d57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161050d57565b335f52600360205260405f20610545348254610521565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a256fea2646970667358221220cffe89ffb3b788be8a1b111b4a554c880c037b094c120e80b3d7d982103b362464736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610022575b3615610018575f80fd5b61002061052e565b005b5f3560e01c806306fdde03146103a35780632e1a7d4d1461028d578063313ce5671461026d57806370a082311461023557806395d89b4114610131578063a9059cbb1461008a5763d0e30db00361000e575f3660031901126100865761002061052e565b5f80fd5b34610086576040366003190112610086576100a36104a7565b60243590335f5260036020526100bf8260405f205410156104bd565b335f52600360205260405f206100d6838254610500565b905560018060a01b031690815f52600360205260405f206100f8828254610521565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610086575f366003190112610086576040515f6001548060011c9060018116801561022b575b602083108114610217578285529081156101f35750600114610195575b610191836101858185038261045b565b6040519182918261047d565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b8082106101d957509091508101602001610185610175565b9192600181602092548385880101520191019092916101c1565b60ff191660208086019190915291151560051b840190910191506101859050610175565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610158565b34610086576020366003190112610086576001600160a01b036102566104a7565b165f526003602052602060405f2054604051908152f35b34610086575f36600319011261008657602060ff60025416604051908152f35b3461008657602036600319011261008657600435335f5260036020526102b98160405f205410156104bd565b335f52600360205260405f206102d0828254610500565b90555f80808084335af13d1561039e573d67ffffffffffffffff811161038a5760405190610308601f8201601f19166020018361045b565b81525f60203d92013e5b15610345576040519081527f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6560203392a2005b60405162461bcd60e51b815260206004820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b610312565b34610086575f366003190112610086576040515f5f548060011c90600181168015610451575b602083108114610217578285529081156101f357506001146103f557610191836101858185038261045b565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061043757509091508101602001610185610175565b91926001816020925483858801015201910190929161041f565b91607f16916103c9565b90601f8019910116810190811067ffffffffffffffff82111761038a57604052565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361008657565b156104c457565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161050d57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161050d57565b335f52600360205260405f20610545348254610521565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a256fea2646970667358221220cffe89ffb3b788be8a1b111b4a554c880c037b094c120e80b3d7d982103b362464736f6c634300081c0033", + "bytecode": "0x60806040523461010f576100135f54610113565b601f81116100c8575b507f577261707065642041746f6d00000000000000000000000000000000000000185f5560015461004c90610113565b601f8111610080575b600a645741544f4d60d81b016001556002805460ff191660121790556040516105ab908161014c8239f35b60015f52601f0160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6908101905b8181106100bd5750610055565b5f81556001016100b0565b5f8052601f0160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563908101905b818110610104575061001c565b5f81556001016100f7565b5f80fd5b90600182811c92168015610141575b602083101461012d57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161012256fe60806040526004361015610022575b3615610018575f80fd5b61002061052e565b005b5f3560e01c806306fdde03146103a35780632e1a7d4d1461028d578063313ce5671461026d57806370a082311461023557806395d89b4114610131578063a9059cbb1461008a5763d0e30db00361000e575f3660031901126100865761002061052e565b5f80fd5b34610086576040366003190112610086576100a36104a7565b60243590335f5260036020526100bf8260405f205410156104bd565b335f52600360205260405f206100d6838254610500565b905560018060a01b031690815f52600360205260405f206100f8828254610521565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610086575f366003190112610086576040515f6001548060011c9060018116801561022b575b602083108114610217578285529081156101f35750600114610195575b610191836101858185038261045b565b6040519182918261047d565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b8082106101d957509091508101602001610185610175565b9192600181602092548385880101520191019092916101c1565b60ff191660208086019190915291151560051b840190910191506101859050610175565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610158565b34610086576020366003190112610086576001600160a01b036102566104a7565b165f526003602052602060405f2054604051908152f35b34610086575f36600319011261008657602060ff60025416604051908152f35b3461008657602036600319011261008657600435335f5260036020526102b98160405f205410156104bd565b335f52600360205260405f206102d0828254610500565b90555f80808084335af13d1561039e573d67ffffffffffffffff811161038a5760405190610308601f8201601f19166020018361045b565b81525f60203d92013e5b15610345576040519081527f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6560203392a2005b60405162461bcd60e51b815260206004820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b610312565b34610086575f366003190112610086576040515f5f548060011c90600181168015610451575b602083108114610217578285529081156101f357506001146103f557610191836101858185038261045b565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061043757509091508101602001610185610175565b91926001816020925483858801015201910190929161041f565b91607f16916103c9565b90601f8019910116810190811067ffffffffffffffff82111761038a57604052565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361008657565b156104c457565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161050d57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161050d57565b335f52600360205260405f20610545348254610521565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a256fea264697066735822122082f1891ea18bd19eece65d8f94a34104f9927661a4c01c7136b983fb66dfb79964736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610022575b3615610018575f80fd5b61002061052e565b005b5f3560e01c806306fdde03146103a35780632e1a7d4d1461028d578063313ce5671461026d57806370a082311461023557806395d89b4114610131578063a9059cbb1461008a5763d0e30db00361000e575f3660031901126100865761002061052e565b5f80fd5b34610086576040366003190112610086576100a36104a7565b60243590335f5260036020526100bf8260405f205410156104bd565b335f52600360205260405f206100d6838254610500565b905560018060a01b031690815f52600360205260405f206100f8828254610521565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b34610086575f366003190112610086576040515f6001548060011c9060018116801561022b575b602083108114610217578285529081156101f35750600114610195575b610191836101858185038261045b565b6040519182918261047d565b0390f35b60015f9081527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6939250905b8082106101d957509091508101602001610185610175565b9192600181602092548385880101520191019092916101c1565b60ff191660208086019190915291151560051b840190910191506101859050610175565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610158565b34610086576020366003190112610086576001600160a01b036102566104a7565b165f526003602052602060405f2054604051908152f35b34610086575f36600319011261008657602060ff60025416604051908152f35b3461008657602036600319011261008657600435335f5260036020526102b98160405f205410156104bd565b335f52600360205260405f206102d0828254610500565b90555f80808084335af13d1561039e573d67ffffffffffffffff811161038a5760405190610308601f8201601f19166020018361045b565b81525f60203d92013e5b15610345576040519081527f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b6560203392a2005b60405162461bcd60e51b815260206004820152601c60248201527f6661696c656420746f20776974686472617720746f2073656e646572000000006044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b610312565b34610086575f366003190112610086576040515f5f548060011c90600181168015610451575b602083108114610217578285529081156101f357506001146103f557610191836101858185038261045b565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061043757509091508101602001610185610175565b91926001816020925483858801015201910190929161041f565b91607f16916103c9565b90601f8019910116810190811067ffffffffffffffff82111761038a57604052565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361008657565b156104c457565b60405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161050d57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161050d57565b335f52600360205260405f20610545348254610521565b90556040513481527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a256fea264697066735822122082f1891ea18bd19eece65d8f94a34104f9927661a4c01c7136b983fb66dfb79964736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/WATOM.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/contracts/tsconfig.json b/contracts/tsconfig.json new file mode 100644 index 000000000..b9ccd830a --- /dev/null +++ b/contracts/tsconfig.json @@ -0,0 +1,12 @@ +{ + "compilerOptions": { + "target": "ES2020", + "module": "ESNext", + "moduleResolution": "node", + "types": ["node"], + "noEmit": true, + "strict": true, + "skipLibCheck": true + }, + "include": ["wagmi.config.ts", "tsdown.config.ts"] +} diff --git a/contracts/tsdown.config.ts b/contracts/tsdown.config.ts new file mode 100644 index 000000000..c645f806b --- /dev/null +++ b/contracts/tsdown.config.ts @@ -0,0 +1,27 @@ +import { defineConfig } from "tsdown"; + +export default defineConfig({ + entry: ["./dist/abi/**/*.ts", "!./dist/abi/**/*.d.ts"], + format: ["esm", "cjs"], + outDir: "dist/abi/precompiles", + dts: true, + unbundle: true, + clean: false, + outExtensions: ({ format }) => ({ + js: format === 'cjs' ? '.cjs' : '.js', + dts: '.d.ts', + }), + platform: 'neutral', + copy: [ + { + from: [ + "solidity/precompiles/**/*.sol", + "!solidity/precompiles/**/testdata/**", + "!solidity/precompiles/**/testutil/**", + ], + to: "dist/precompiles", + flatten: false, + verbose: true, + }, + ], +}); diff --git a/contracts/wagmi.config.ts b/contracts/wagmi.config.ts new file mode 100644 index 000000000..8e073cb7d --- /dev/null +++ b/contracts/wagmi.config.ts @@ -0,0 +1,53 @@ +/// +/** + * Wagmi CLI: generates one .ts file per precompile from Hardhat artifacts. + * Scans source (solidity/precompiles) for targets so config is never empty even before compile. + * Run: pnpm run build:precompiles + */ +import { readdirSync, statSync, existsSync } from "fs"; +import { join } from "path"; +import { defineConfig } from "@wagmi/cli"; +import { hardhat } from "@wagmi/cli/plugins"; + +const root = process.cwd(); +const PRECOMPILES_SRC = join(root, "solidity", "precompiles"); +const EXCLUDED_DIRS = ["testdata", "testutil"]; +const EXCLUDED_CONTRACTS = ["Types"]; + +function* walkPrecompileSources( + dir: string, + prefix = "" +): Generator<{ module: string; contract: string }> { + if (!existsSync(dir)) return; + for (const name of readdirSync(dir)) { + const full = join(dir, name); + if (statSync(full).isDirectory()) { + if (EXCLUDED_DIRS.includes(name)) continue; + yield* walkPrecompileSources(full, join(prefix, name)); + } else if (name.endsWith(".sol")) { + const contract = name.replace(".sol", ""); + if (EXCLUDED_CONTRACTS.includes(contract)) continue; + yield { module: prefix, contract }; + } + } +} + +const precompiles = [...walkPrecompileSources(PRECOMPILES_SRC)]; + +const hardhatBase = { + project: ".", + artifacts: "artifacts", + exclude: ["**/testdata/**", "**/testutil/**", "**/build-info/**", "**/*.dbg.json"], +}; + +export default defineConfig( + precompiles.map(({ module, contract }) => ({ + out: join("dist", "abi", "precompiles", module, `${contract}.ts`).replace(/\\/g, "/"), + plugins: [ + hardhat({ + ...hardhatBase, + include: [join("solidity", "precompiles", module, `${contract}.sol`, "*.json").replace(/\\/g, "/")], + }), + ], + })) +); diff --git a/eips/testdata/Counter.json b/eips/testdata/Counter.json index 624d46a7a..a54871c4a 100644 --- a/eips/testdata/Counter.json +++ b/eips/testdata/Counter.json @@ -31,11 +31,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523460175760015f5560d89081601c8239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220856e134f55f380b09c0fe1fc9d2a14bb14f8410f946e966d36e7c017e828ba2664736f6c634300081c0033", - "deployedBytecode": "0x608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220856e134f55f380b09c0fe1fc9d2a14bb14f8410f946e966d36e7c017e828ba2664736f6c634300081c0033", + "bytecode": "0x6080806040523460175760015f5560d89081601c8239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220a7cdaa5cc5752f1f292e6afcfe21411eed5f03e6499500b532bb469fae2bf20b64736f6c634300081c0033", + "deployedBytecode": "0x608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220a7cdaa5cc5752f1f292e6afcfe21411eed5f03e6499500b532bb469fae2bf20b64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/eips/testdata/Counter.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/eips/testdata/CounterFactory.json b/eips/testdata/CounterFactory.json index 3988c0924..c62675128 100644 --- a/eips/testdata/CounterFactory.json +++ b/eips/testdata/CounterFactory.json @@ -49,11 +49,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234607c5760f48181016001600160401b0381118382101760685782916102b4833903905ff08015605d575f80546001600160a01b0319166001600160a01b039290921691909117905560405161023390816100818239f35b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081635b34b966146101655750806372142b89146100dc578063aef38e72146100b55763f5c5ad831461004a575f80fd5b346100a457806003193601126100a457805481906001600160a01b0316803b156100b257818091600460405180948193632baeceb760e01b83525af180156100a7576100935750f35b8161009d916101c7565b6100a45780f35b80fd5b6040513d84823e3d90fd5b50fd5b50346100a457806003193601126100a457546040516001600160a01b039091168152602090f35b50346100a457806003193601126100a45780546040516330de110d60e11b815290602090829060049082906001600160a01b03165afa9081156100a757829161012b575b602082604051908152f35b90506020813d60201161015d575b81610146602093836101c7565b810103126101595760209150515f610120565b5080fd5b3d9150610139565b9050346101c3575f3660031901126101c3575f546001600160a01b0316803b156101c357816004815f809463684ef04560e11b83525af180156101b8576101aa575080f35b6101b691505f906101c7565b005b6040513d5f823e3d90fd5b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176101e957604052565b634e487b7160e01b5f52604160045260245ffdfea2646970667358221220121e110100e226ac58c859be5976a5c98b6a953cc6be370d076715d7cd7472ae64736f6c634300081c00336080806040523460175760015f5560d89081601c8239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220856e134f55f380b09c0fe1fc9d2a14bb14f8410f946e966d36e7c017e828ba2664736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081635b34b966146101655750806372142b89146100dc578063aef38e72146100b55763f5c5ad831461004a575f80fd5b346100a457806003193601126100a457805481906001600160a01b0316803b156100b257818091600460405180948193632baeceb760e01b83525af180156100a7576100935750f35b8161009d916101c7565b6100a45780f35b80fd5b6040513d84823e3d90fd5b50fd5b50346100a457806003193601126100a457546040516001600160a01b039091168152602090f35b50346100a457806003193601126100a45780546040516330de110d60e11b815290602090829060049082906001600160a01b03165afa9081156100a757829161012b575b602082604051908152f35b90506020813d60201161015d575b81610146602093836101c7565b810103126101595760209150515f610120565b5080fd5b3d9150610139565b9050346101c3575f3660031901126101c3575f546001600160a01b0316803b156101c357816004815f809463684ef04560e11b83525af180156101b8576101aa575080f35b6101b691505f906101c7565b005b6040513d5f823e3d90fd5b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176101e957604052565b634e487b7160e01b5f52604160045260245ffdfea2646970667358221220121e110100e226ac58c859be5976a5c98b6a953cc6be370d076715d7cd7472ae64736f6c634300081c0033", + "bytecode": "0x60808060405234607c5760f48181016001600160401b0381118382101760685782916102b4833903905ff08015605d575f80546001600160a01b0319166001600160a01b039290921691909117905560405161023390816100818239f35b6040513d5f823e3d90fd5b634e487b7160e01b5f52604160045260245ffd5b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081635b34b966146101655750806372142b89146100dc578063aef38e72146100b55763f5c5ad831461004a575f80fd5b346100a457806003193601126100a457805481906001600160a01b0316803b156100b257818091600460405180948193632baeceb760e01b83525af180156100a7576100935750f35b8161009d916101c7565b6100a45780f35b80fd5b6040513d84823e3d90fd5b50fd5b50346100a457806003193601126100a457546040516001600160a01b039091168152602090f35b50346100a457806003193601126100a45780546040516330de110d60e11b815290602090829060049082906001600160a01b03165afa9081156100a757829161012b575b602082604051908152f35b90506020813d60201161015d575b81610146602093836101c7565b810103126101595760209150515f610120565b5080fd5b3d9150610139565b9050346101c3575f3660031901126101c3575f546001600160a01b0316803b156101c357816004815f809463684ef04560e11b83525af180156101b8576101aa575080f35b6101b691505f906101c7565b005b6040513d5f823e3d90fd5b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176101e957604052565b634e487b7160e01b5f52604160045260245ffdfea2646970667358221220d77df5083cb7d7de8c1bc283ab59b435acc6cabb28419d9dcf8ab469349ae35764736f6c634300081c00336080806040523460175760015f5560d89081601c8239f35b5f80fdfe608060405260043610156010575f80fd5b5f3560e01c80632baeceb714608657806361bc221a14606c5763d09de08a146036575f80fd5b346068575f3660031901126068575f545f1981146054576001015f55005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b346068575f36600319011260685760205f54604051908152f35b346068575f3660031901126068575f5480156054575f19015f5500fea2646970667358221220a7cdaa5cc5752f1f292e6afcfe21411eed5f03e6499500b532bb469fae2bf20b64736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081635b34b966146101655750806372142b89146100dc578063aef38e72146100b55763f5c5ad831461004a575f80fd5b346100a457806003193601126100a457805481906001600160a01b0316803b156100b257818091600460405180948193632baeceb760e01b83525af180156100a7576100935750f35b8161009d916101c7565b6100a45780f35b80fd5b6040513d84823e3d90fd5b50fd5b50346100a457806003193601126100a457546040516001600160a01b039091168152602090f35b50346100a457806003193601126100a45780546040516330de110d60e11b815290602090829060049082906001600160a01b03165afa9081156100a757829161012b575b602082604051908152f35b90506020813d60201161015d575b81610146602093836101c7565b810103126101595760209150515f610120565b5080fd5b3d9150610139565b9050346101c3575f3660031901126101c3575f546001600160a01b0316803b156101c357816004815f809463684ef04560e11b83525af180156101b8576101aa575080f35b6101b691505f906101c7565b005b6040513d5f823e3d90fd5b5f80fd5b90601f8019910116810190811067ffffffffffffffff8211176101e957604052565b634e487b7160e01b5f52604160045260245ffdfea2646970667358221220d77df5083cb7d7de8c1bc283ab59b435acc6cabb28419d9dcf8ab469349ae35764736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/eips/testdata/CounterFactory.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/bank/testdata/BankCaller.json b/precompiles/bank/testdata/BankCaller.json index bf22dfba3..697a7ee0e 100644 --- a/precompiles/bank/testdata/BankCaller.json +++ b/precompiles/bank/testdata/BankCaller.json @@ -79,11 +79,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234601557610326908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816389129c681461014657508063acab2f94146100db5763bba60ca01461003d575f80fd5b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c45760405190631890039360e21b825260048201526020816024816108045afa80156100d0575f90610099575b602090604051908152f35b506020813d6020116100c8575b816100b3602093836101ec565b810103126100c4576020905161008e565b5f80fd5b3d91506100a6565b6040513d5f823e3d90fd5b346100c4575f3660031901126100c4576040516318160ddd60e01b81525f816004816108045afa80156100d057610120915f91610124575b506040519182918261019e565b0390f35b61014091503d805f833e61013881836101ec565b810190610222565b82610113565b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c4576327e235e360e01b825260048201525f816024816108045afa80156100d057610120915f916101245750604051918291825b60206040818301928281528451809452019201905f5b8181106101c15750505090565b825180516001600160a01b0316855260209081015181860152604090940193909201916001016101b4565b90601f8019910116810190811067ffffffffffffffff82111761020e57604052565b634e487b7160e01b5f52604160045260245ffd5b6020818303126100c45780519067ffffffffffffffff82116100c4570181601f820112156100c45780519067ffffffffffffffff821161020e576040519261027060208460051b01856101ec565b82845260208085019360061b830101918183116100c457602001925b82841061029a575050505090565b6040848303126100c457604051906040820182811067ffffffffffffffff82111761020e576040528451906001600160a01b03821682036100c4578260209260409452828701518382015281520193019261028c56fea2646970667358221220ef4260e2dbc79ff1356d026b28428e63d5f7b147eb3d9e3c7987aabadcea253664736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816389129c681461014657508063acab2f94146100db5763bba60ca01461003d575f80fd5b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c45760405190631890039360e21b825260048201526020816024816108045afa80156100d0575f90610099575b602090604051908152f35b506020813d6020116100c8575b816100b3602093836101ec565b810103126100c4576020905161008e565b5f80fd5b3d91506100a6565b6040513d5f823e3d90fd5b346100c4575f3660031901126100c4576040516318160ddd60e01b81525f816004816108045afa80156100d057610120915f91610124575b506040519182918261019e565b0390f35b61014091503d805f833e61013881836101ec565b810190610222565b82610113565b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c4576327e235e360e01b825260048201525f816024816108045afa80156100d057610120915f916101245750604051918291825b60206040818301928281528451809452019201905f5b8181106101c15750505090565b825180516001600160a01b0316855260209081015181860152604090940193909201916001016101b4565b90601f8019910116810190811067ffffffffffffffff82111761020e57604052565b634e487b7160e01b5f52604160045260245ffd5b6020818303126100c45780519067ffffffffffffffff82116100c4570181601f820112156100c45780519067ffffffffffffffff821161020e576040519261027060208460051b01856101ec565b82845260208085019360061b830101918183116100c457602001925b82841061029a575050505090565b6040848303126100c457604051906040820182811067ffffffffffffffff82111761020e576040528451906001600160a01b03821682036100c4578260209260409452828701518382015281520193019261028c56fea2646970667358221220ef4260e2dbc79ff1356d026b28428e63d5f7b147eb3d9e3c7987aabadcea253664736f6c634300081c0033", + "bytecode": "0x60808060405234601557610326908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816389129c681461014657508063acab2f94146100db5763bba60ca01461003d575f80fd5b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c45760405190631890039360e21b825260048201526020816024816108045afa80156100d0575f90610099575b602090604051908152f35b506020813d6020116100c8575b816100b3602093836101ec565b810103126100c4576020905161008e565b5f80fd5b3d91506100a6565b6040513d5f823e3d90fd5b346100c4575f3660031901126100c4576040516318160ddd60e01b81525f816004816108045afa80156100d057610120915f91610124575b506040519182918261019e565b0390f35b61014091503d805f833e61013881836101ec565b810190610222565b82610113565b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c4576327e235e360e01b825260048201525f816024816108045afa80156100d057610120915f916101245750604051918291825b60206040818301928281528451809452019201905f5b8181106101c15750505090565b825180516001600160a01b0316855260209081015181860152604090940193909201916001016101b4565b90601f8019910116810190811067ffffffffffffffff82111761020e57604052565b634e487b7160e01b5f52604160045260245ffd5b6020818303126100c45780519067ffffffffffffffff82116100c4570181601f820112156100c45780519067ffffffffffffffff821161020e576040519261027060208460051b01856101ec565b82845260208085019360061b830101918183116100c457602001925b82841061029a575050505090565b6040848303126100c457604051906040820182811067ffffffffffffffff82111761020e576040528451906001600160a01b03821682036100c4578260209260409452828701518382015281520193019261028c56fea2646970667358221220c97c01e228eb2489925af103ae1dcbe00ef3d4dbeeb6890475c6b2a99801785664736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816389129c681461014657508063acab2f94146100db5763bba60ca01461003d575f80fd5b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c45760405190631890039360e21b825260048201526020816024816108045afa80156100d0575f90610099575b602090604051908152f35b506020813d6020116100c8575b816100b3602093836101ec565b810103126100c4576020905161008e565b5f80fd5b3d91506100a6565b6040513d5f823e3d90fd5b346100c4575f3660031901126100c4576040516318160ddd60e01b81525f816004816108045afa80156100d057610120915f91610124575b506040519182918261019e565b0390f35b61014091503d805f833e61013881836101ec565b810190610222565b82610113565b346100c45760203660031901126100c4576004356001600160a01b038116908190036100c4576327e235e360e01b825260048201525f816024816108045afa80156100d057610120915f916101245750604051918291825b60206040818301928281528451809452019201905f5b8181106101c15750505090565b825180516001600160a01b0316855260209081015181860152604090940193909201916001016101b4565b90601f8019910116810190811067ffffffffffffffff82111761020e57604052565b634e487b7160e01b5f52604160045260245ffd5b6020818303126100c45780519067ffffffffffffffff82116100c4570181601f820112156100c45780519067ffffffffffffffff821161020e576040519261027060208460051b01856101ec565b82845260208085019360061b830101918183116100c457602001925b82841061029a575050505090565b6040848303126100c457604051906040820182811067ffffffffffffffff82111761020e576040528451906001600160a01b03821682036100c4578260209260409452828701518382015281520193019261028c56fea2646970667358221220c97c01e228eb2489925af103ae1dcbe00ef3d4dbeeb6890475c6b2a99801785664736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/bank/testdata/BankCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/erc20/testdata/ERC20NoMetadata.json b/precompiles/erc20/testdata/ERC20NoMetadata.json index f8a18c095..b6b031974 100644 --- a/precompiles/erc20/testdata/ERC20NoMetadata.json +++ b/precompiles/erc20/testdata/ERC20NoMetadata.json @@ -240,11 +240,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523460155761060e908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b31461030c57806318160ddd146102ef57806323b872dd1461023257806339509351146101d057806370a0823114610199578063a457c2d7146100f6578063a9059cbb146100c55763dd62ed3e14610071575f80fd5b346100c15760403660031901126100c15761008a610332565b610092610348565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100c15760403660031901126100c1576100eb6100e1610332565b6024359033610462565b602060405160018152f35b346100c15760403660031901126100c15761010f610332565b60243590335f52600160205260405f2060018060a01b0382165f5260205260405f205491808310610146576100eb9203903361035e565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b346100c15760203660031901126100c1576001600160a01b036101ba610332565b165f525f602052602060405f2054604051908152f35b346100c15760403660031901126100c1576101e9610332565b335f52600160205260405f2060018060a01b0382165f5260205260405f2054602435810180911161021e576100eb913361035e565b634e487b7160e01b5f52601160045260245ffd5b346100c15760603660031901126100c15761024b610332565b610253610348565b6001600160a01b0382165f90815260016020818152604080842033855290915290912054926044359291840161028e575b6100eb9350610462565b8284106102aa576102a5836100eb9503338361035e565b610284565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100c1575f3660031901126100c1576020600254604051908152f35b346100c15760403660031901126100c1576100eb610328610332565b602435903361035e565b600435906001600160a01b03821682036100c157565b602435906001600160a01b03821682036100c157565b6001600160a01b0316908115610411576001600160a01b03169182156103c15760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b0316908115610585576001600160a01b031691821561053457815f525f60205260405f20548181106104e057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fdfea2646970667358221220b0cf00661f5a7925febf8dd9a41353076941ac5c4cdbc1faa8b9140ae625d0b764736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b31461030c57806318160ddd146102ef57806323b872dd1461023257806339509351146101d057806370a0823114610199578063a457c2d7146100f6578063a9059cbb146100c55763dd62ed3e14610071575f80fd5b346100c15760403660031901126100c15761008a610332565b610092610348565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100c15760403660031901126100c1576100eb6100e1610332565b6024359033610462565b602060405160018152f35b346100c15760403660031901126100c15761010f610332565b60243590335f52600160205260405f2060018060a01b0382165f5260205260405f205491808310610146576100eb9203903361035e565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b346100c15760203660031901126100c1576001600160a01b036101ba610332565b165f525f602052602060405f2054604051908152f35b346100c15760403660031901126100c1576101e9610332565b335f52600160205260405f2060018060a01b0382165f5260205260405f2054602435810180911161021e576100eb913361035e565b634e487b7160e01b5f52601160045260245ffd5b346100c15760603660031901126100c15761024b610332565b610253610348565b6001600160a01b0382165f90815260016020818152604080842033855290915290912054926044359291840161028e575b6100eb9350610462565b8284106102aa576102a5836100eb9503338361035e565b610284565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100c1575f3660031901126100c1576020600254604051908152f35b346100c15760403660031901126100c1576100eb610328610332565b602435903361035e565b600435906001600160a01b03821682036100c157565b602435906001600160a01b03821682036100c157565b6001600160a01b0316908115610411576001600160a01b03169182156103c15760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b0316908115610585576001600160a01b031691821561053457815f525f60205260405f20548181106104e057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fdfea2646970667358221220b0cf00661f5a7925febf8dd9a41353076941ac5c4cdbc1faa8b9140ae625d0b764736f6c634300081c0033", + "bytecode": "0x6080806040523460155761060e908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b31461030c57806318160ddd146102ef57806323b872dd1461023257806339509351146101d057806370a0823114610199578063a457c2d7146100f6578063a9059cbb146100c55763dd62ed3e14610071575f80fd5b346100c15760403660031901126100c15761008a610332565b610092610348565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100c15760403660031901126100c1576100eb6100e1610332565b6024359033610462565b602060405160018152f35b346100c15760403660031901126100c15761010f610332565b60243590335f52600160205260405f2060018060a01b0382165f5260205260405f205491808310610146576100eb9203903361035e565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b346100c15760203660031901126100c1576001600160a01b036101ba610332565b165f525f602052602060405f2054604051908152f35b346100c15760403660031901126100c1576101e9610332565b335f52600160205260405f2060018060a01b0382165f5260205260405f2054602435810180911161021e576100eb913361035e565b634e487b7160e01b5f52601160045260245ffd5b346100c15760603660031901126100c15761024b610332565b610253610348565b6001600160a01b0382165f90815260016020818152604080842033855290915290912054926044359291840161028e575b6100eb9350610462565b8284106102aa576102a5836100eb9503338361035e565b610284565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100c1575f3660031901126100c1576020600254604051908152f35b346100c15760403660031901126100c1576100eb610328610332565b602435903361035e565b600435906001600160a01b03821682036100c157565b602435906001600160a01b03821682036100c157565b6001600160a01b0316908115610411576001600160a01b03169182156103c15760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b0316908115610585576001600160a01b031691821561053457815f525f60205260405f20548181106104e057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fdfea264697066735822122031eba56442700f84874b202b462094bce0d1e7cdb644070c434b5de83f71ba3b64736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063095ea7b31461030c57806318160ddd146102ef57806323b872dd1461023257806339509351146101d057806370a0823114610199578063a457c2d7146100f6578063a9059cbb146100c55763dd62ed3e14610071575f80fd5b346100c15760403660031901126100c15761008a610332565b610092610348565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100c15760403660031901126100c1576100eb6100e1610332565b6024359033610462565b602060405160018152f35b346100c15760403660031901126100c15761010f610332565b60243590335f52600160205260405f2060018060a01b0382165f5260205260405f205491808310610146576100eb9203903361035e565b60405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608490fd5b346100c15760203660031901126100c1576001600160a01b036101ba610332565b165f525f602052602060405f2054604051908152f35b346100c15760403660031901126100c1576101e9610332565b335f52600160205260405f2060018060a01b0382165f5260205260405f2054602435810180911161021e576100eb913361035e565b634e487b7160e01b5f52601160045260245ffd5b346100c15760603660031901126100c15761024b610332565b610253610348565b6001600160a01b0382165f90815260016020818152604080842033855290915290912054926044359291840161028e575b6100eb9350610462565b8284106102aa576102a5836100eb9503338361035e565b610284565b60405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606490fd5b346100c1575f3660031901126100c1576020600254604051908152f35b346100c15760403660031901126100c1576100eb610328610332565b602435903361035e565b600435906001600160a01b03821682036100c157565b602435906001600160a01b03821682036100c157565b6001600160a01b0316908115610411576001600160a01b03169182156103c15760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b6001600160a01b0316908115610585576001600160a01b031691821561053457815f525f60205260405f20548181106104e057817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fdfea264697066735822122031eba56442700f84874b202b462094bce0d1e7cdb644070c434b5de83f71ba3b64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/erc20/testdata/ERC20NoMetadata.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/erc20/testdata/ERC20TestCaller.json b/precompiles/erc20/testdata/ERC20TestCaller.json index d3e67d15c..ffcbce367 100644 --- a/precompiles/erc20/testdata/ERC20TestCaller.json +++ b/precompiles/erc20/testdata/ERC20TestCaller.json @@ -314,11 +314,11 @@ "type": "function" } ], - "bytecode": "0x608034607257601f610ae938819003918201601f19168301916001600160401b03831184841017607657808492602094604052833981010312607257516001600160a01b038116908190036072575f80546001600160a01b031916919091178155600155604051610a5e908161008b8239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146107f757508063095ea7b31461079e57806318160ddd1461075257806323b872dd146106d7578063268d070a146105a2578063313ce5671461051557806361bc221a146104f85780636bc7b7cd146103f457806370a082311461039757806395d89b411461031f578063a9059cbb1461028a578063d0fedf551461018d578063dd62ed3e146100e15763fc0c546a146100b6575f80fd5b346100dd575f3660031901126100dd575f546040516001600160a01b039091168152602090f35b5f80fd5b346100dd5760403660031901126100dd576100fa610869565b602061010461087f565b5f54604051636eb1769f60e11b81526001600160a01b0394851660048201529184166024830152909283916044918391165afa8015610182575f9061014f575b602090604051908152f35b506020813d60201161017a575b8161016960209383610895565b810103126100dd5760209051610144565b3d915061015c565b6040513d5f823e3d90fd5b60803660031901126100dd576101a1610869565b60443580151581036100dd576064359081151582036100dd5760206102095f946101cc600154610962565b600155855460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529687939190921691839182906044820190565b03925af1928315610182575f93610259575b50610240576001548015610245575f1901600155610240576020906040519015158152f35b6109f5565b634e487b7160e01b5f52601160045260245ffd5b61027c91935060203d602011610283575b6102748183610895565b81019061094a565b918361021b565b503d61026a565b346100dd5760403660031901126100dd575f60206102e36102a9610869565b835460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b03925af18015610182576020915f91610302575b506040519015158152f35b6103199150823d8411610283576102748183610895565b826102f7565b346100dd575f3660031901126100dd575f80546040516395d89b4160e01b81529190829060049082906001600160a01b03165afa801561018257610371915f91610375575b506040519182918261083f565b0390f35b61039191503d805f833e6103898183610895565b8101906108e7565b82610364565b346100dd5760203660031901126100dd576103b0610869565b5f546040516370a0823160e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610182575f9061014f57602090604051908152f35b60c03660031901126100dd57610408610869565b6084359081151582036100dd5760a4359081151582036100dd576001600160a01b038116926104485f808080604435895af1610442610970565b5061099f565b6104c6575f805460405163a9059cbb60e01b81526001600160a01b0393841660048201526024803590820152926020928492604492849291165af1801561018257610499915f916104d9575061099f565b6104c6575f808080602094606435905af16104b2610970565b506104bc8161099f565b6040519015158152f35b6104d1600154610962565b6001556109f5565b6104f2915060203d602011610283576102748183610895565b84610442565b346100dd575f3660031901126100dd576020600154604051908152f35b346100dd575f3660031901126100dd575f5460405163313ce56760e01b815290602090829060049082906001600160a01b03165afa8015610182575f90610565575b60209060ff60405191168152f35b506020813d60201161059a575b8161057f60209383610895565b810103126100dd575160ff811681036100dd57602090610557565b3d9150610572565b60603660031901126100dd576105b6610869565b6105c1600154610962565b6001555f805460405163a9059cbb60e01b81526001600160a01b03848116600483015260248035908301529092602092849260449284929091165af1908115610182575f916106b8575b50156106805760405163d0fedf5560e01b81526001600160a01b039091166004820152604480356024830152600190820181905260648201526020816084815f305af1610663575b61065e600154610962565b600155005b61067b9060203d602011610283576102748183610895565b610653565b60405162461bcd60e51b815260206004820152601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6106d1915060203d602011610283576102748183610895565b8261060b565b346100dd5760603660031901126100dd576106f0610869565b60206106fa61087f565b5f80546040516323b872dd60e01b81526001600160a01b039586166004820152928516602484015260448035908401529193849260649284929091165af18015610182576020915f9161030257506040519015158152f35b346100dd575f3660031901126100dd575f546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa8015610182575f9061014f57602090604051908152f35b346100dd5760403660031901126100dd575f60206102e36107bd610869565b835460405163095ea7b360e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b346100dd575f3660031901126100dd575f80546306fdde0360e01b8352829060049082906001600160a01b03165afa801561018257610371915f916103755750604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100dd57565b602435906001600160a01b03821682036100dd57565b90601f8019910116810190811067ffffffffffffffff8211176108b757604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116108b757601f01601f191660200190565b6020818303126100dd5780519067ffffffffffffffff82116100dd570181601f820112156100dd5780519061091b826108cb565b926109296040519485610895565b828452602083830101116100dd57815f9260208093018386015e8301015290565b908160209103126100dd575180151581036100dd5790565b5f1981146102455760010190565b3d1561099a573d90610981826108cb565b9161098f6040519384610895565b82523d5f602084013e565b606090565b156109a657565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea26469706673582212208d5aec8fdde9affd10a373070b58f1ddf0147ccba03be2e88c7e66d1102d6d1a64736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146107f757508063095ea7b31461079e57806318160ddd1461075257806323b872dd146106d7578063268d070a146105a2578063313ce5671461051557806361bc221a146104f85780636bc7b7cd146103f457806370a082311461039757806395d89b411461031f578063a9059cbb1461028a578063d0fedf551461018d578063dd62ed3e146100e15763fc0c546a146100b6575f80fd5b346100dd575f3660031901126100dd575f546040516001600160a01b039091168152602090f35b5f80fd5b346100dd5760403660031901126100dd576100fa610869565b602061010461087f565b5f54604051636eb1769f60e11b81526001600160a01b0394851660048201529184166024830152909283916044918391165afa8015610182575f9061014f575b602090604051908152f35b506020813d60201161017a575b8161016960209383610895565b810103126100dd5760209051610144565b3d915061015c565b6040513d5f823e3d90fd5b60803660031901126100dd576101a1610869565b60443580151581036100dd576064359081151582036100dd5760206102095f946101cc600154610962565b600155855460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529687939190921691839182906044820190565b03925af1928315610182575f93610259575b50610240576001548015610245575f1901600155610240576020906040519015158152f35b6109f5565b634e487b7160e01b5f52601160045260245ffd5b61027c91935060203d602011610283575b6102748183610895565b81019061094a565b918361021b565b503d61026a565b346100dd5760403660031901126100dd575f60206102e36102a9610869565b835460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b03925af18015610182576020915f91610302575b506040519015158152f35b6103199150823d8411610283576102748183610895565b826102f7565b346100dd575f3660031901126100dd575f80546040516395d89b4160e01b81529190829060049082906001600160a01b03165afa801561018257610371915f91610375575b506040519182918261083f565b0390f35b61039191503d805f833e6103898183610895565b8101906108e7565b82610364565b346100dd5760203660031901126100dd576103b0610869565b5f546040516370a0823160e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610182575f9061014f57602090604051908152f35b60c03660031901126100dd57610408610869565b6084359081151582036100dd5760a4359081151582036100dd576001600160a01b038116926104485f808080604435895af1610442610970565b5061099f565b6104c6575f805460405163a9059cbb60e01b81526001600160a01b0393841660048201526024803590820152926020928492604492849291165af1801561018257610499915f916104d9575061099f565b6104c6575f808080602094606435905af16104b2610970565b506104bc8161099f565b6040519015158152f35b6104d1600154610962565b6001556109f5565b6104f2915060203d602011610283576102748183610895565b84610442565b346100dd575f3660031901126100dd576020600154604051908152f35b346100dd575f3660031901126100dd575f5460405163313ce56760e01b815290602090829060049082906001600160a01b03165afa8015610182575f90610565575b60209060ff60405191168152f35b506020813d60201161059a575b8161057f60209383610895565b810103126100dd575160ff811681036100dd57602090610557565b3d9150610572565b60603660031901126100dd576105b6610869565b6105c1600154610962565b6001555f805460405163a9059cbb60e01b81526001600160a01b03848116600483015260248035908301529092602092849260449284929091165af1908115610182575f916106b8575b50156106805760405163d0fedf5560e01b81526001600160a01b039091166004820152604480356024830152600190820181905260648201526020816084815f305af1610663575b61065e600154610962565b600155005b61067b9060203d602011610283576102748183610895565b610653565b60405162461bcd60e51b815260206004820152601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6106d1915060203d602011610283576102748183610895565b8261060b565b346100dd5760603660031901126100dd576106f0610869565b60206106fa61087f565b5f80546040516323b872dd60e01b81526001600160a01b039586166004820152928516602484015260448035908401529193849260649284929091165af18015610182576020915f9161030257506040519015158152f35b346100dd575f3660031901126100dd575f546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa8015610182575f9061014f57602090604051908152f35b346100dd5760403660031901126100dd575f60206102e36107bd610869565b835460405163095ea7b360e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b346100dd575f3660031901126100dd575f80546306fdde0360e01b8352829060049082906001600160a01b03165afa801561018257610371915f916103755750604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100dd57565b602435906001600160a01b03821682036100dd57565b90601f8019910116810190811067ffffffffffffffff8211176108b757604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116108b757601f01601f191660200190565b6020818303126100dd5780519067ffffffffffffffff82116100dd570181601f820112156100dd5780519061091b826108cb565b926109296040519485610895565b828452602083830101116100dd57815f9260208093018386015e8301015290565b908160209103126100dd575180151581036100dd5790565b5f1981146102455760010190565b3d1561099a573d90610981826108cb565b9161098f6040519384610895565b82523d5f602084013e565b606090565b156109a657565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea26469706673582212208d5aec8fdde9affd10a373070b58f1ddf0147ccba03be2e88c7e66d1102d6d1a64736f6c634300081c0033", + "bytecode": "0x608034607257601f610ae938819003918201601f19168301916001600160401b03831184841017607657808492602094604052833981010312607257516001600160a01b038116908190036072575f80546001600160a01b031916919091178155600155604051610a5e908161008b8239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146107f757508063095ea7b31461079e57806318160ddd1461075257806323b872dd146106d7578063268d070a146105a2578063313ce5671461051557806361bc221a146104f85780636bc7b7cd146103f457806370a082311461039757806395d89b411461031f578063a9059cbb1461028a578063d0fedf551461018d578063dd62ed3e146100e15763fc0c546a146100b6575f80fd5b346100dd575f3660031901126100dd575f546040516001600160a01b039091168152602090f35b5f80fd5b346100dd5760403660031901126100dd576100fa610869565b602061010461087f565b5f54604051636eb1769f60e11b81526001600160a01b0394851660048201529184166024830152909283916044918391165afa8015610182575f9061014f575b602090604051908152f35b506020813d60201161017a575b8161016960209383610895565b810103126100dd5760209051610144565b3d915061015c565b6040513d5f823e3d90fd5b60803660031901126100dd576101a1610869565b60443580151581036100dd576064359081151582036100dd5760206102095f946101cc600154610962565b600155855460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529687939190921691839182906044820190565b03925af1928315610182575f93610259575b50610240576001548015610245575f1901600155610240576020906040519015158152f35b6109f5565b634e487b7160e01b5f52601160045260245ffd5b61027c91935060203d602011610283575b6102748183610895565b81019061094a565b918361021b565b503d61026a565b346100dd5760403660031901126100dd575f60206102e36102a9610869565b835460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b03925af18015610182576020915f91610302575b506040519015158152f35b6103199150823d8411610283576102748183610895565b826102f7565b346100dd575f3660031901126100dd575f80546040516395d89b4160e01b81529190829060049082906001600160a01b03165afa801561018257610371915f91610375575b506040519182918261083f565b0390f35b61039191503d805f833e6103898183610895565b8101906108e7565b82610364565b346100dd5760203660031901126100dd576103b0610869565b5f546040516370a0823160e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610182575f9061014f57602090604051908152f35b60c03660031901126100dd57610408610869565b6084359081151582036100dd5760a4359081151582036100dd576001600160a01b038116926104485f808080604435895af1610442610970565b5061099f565b6104c6575f805460405163a9059cbb60e01b81526001600160a01b0393841660048201526024803590820152926020928492604492849291165af1801561018257610499915f916104d9575061099f565b6104c6575f808080602094606435905af16104b2610970565b506104bc8161099f565b6040519015158152f35b6104d1600154610962565b6001556109f5565b6104f2915060203d602011610283576102748183610895565b84610442565b346100dd575f3660031901126100dd576020600154604051908152f35b346100dd575f3660031901126100dd575f5460405163313ce56760e01b815290602090829060049082906001600160a01b03165afa8015610182575f90610565575b60209060ff60405191168152f35b506020813d60201161059a575b8161057f60209383610895565b810103126100dd575160ff811681036100dd57602090610557565b3d9150610572565b60603660031901126100dd576105b6610869565b6105c1600154610962565b6001555f805460405163a9059cbb60e01b81526001600160a01b03848116600483015260248035908301529092602092849260449284929091165af1908115610182575f916106b8575b50156106805760405163d0fedf5560e01b81526001600160a01b039091166004820152604480356024830152600190820181905260648201526020816084815f305af1610663575b61065e600154610962565b600155005b61067b9060203d602011610283576102748183610895565b610653565b60405162461bcd60e51b815260206004820152601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6106d1915060203d602011610283576102748183610895565b8261060b565b346100dd5760603660031901126100dd576106f0610869565b60206106fa61087f565b5f80546040516323b872dd60e01b81526001600160a01b039586166004820152928516602484015260448035908401529193849260649284929091165af18015610182576020915f9161030257506040519015158152f35b346100dd575f3660031901126100dd575f546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa8015610182575f9061014f57602090604051908152f35b346100dd5760403660031901126100dd575f60206102e36107bd610869565b835460405163095ea7b360e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b346100dd575f3660031901126100dd575f80546306fdde0360e01b8352829060049082906001600160a01b03165afa801561018257610371915f916103755750604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100dd57565b602435906001600160a01b03821682036100dd57565b90601f8019910116810190811067ffffffffffffffff8211176108b757604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116108b757601f01601f191660200190565b6020818303126100dd5780519067ffffffffffffffff82116100dd570181601f820112156100dd5780519061091b826108cb565b926109296040519485610895565b828452602083830101116100dd57815f9260208093018386015e8301015290565b908160209103126100dd575180151581036100dd5790565b5f1981146102455760010190565b3d1561099a573d90610981826108cb565b9161098f6040519384610895565b82523d5f602084013e565b606090565b156109a657565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea2646970667358221220a81469aa5125e6bccbdb8b03d07f973d80da6232339285ecac9ea3fc82e6a22364736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146107f757508063095ea7b31461079e57806318160ddd1461075257806323b872dd146106d7578063268d070a146105a2578063313ce5671461051557806361bc221a146104f85780636bc7b7cd146103f457806370a082311461039757806395d89b411461031f578063a9059cbb1461028a578063d0fedf551461018d578063dd62ed3e146100e15763fc0c546a146100b6575f80fd5b346100dd575f3660031901126100dd575f546040516001600160a01b039091168152602090f35b5f80fd5b346100dd5760403660031901126100dd576100fa610869565b602061010461087f565b5f54604051636eb1769f60e11b81526001600160a01b0394851660048201529184166024830152909283916044918391165afa8015610182575f9061014f575b602090604051908152f35b506020813d60201161017a575b8161016960209383610895565b810103126100dd5760209051610144565b3d915061015c565b6040513d5f823e3d90fd5b60803660031901126100dd576101a1610869565b60443580151581036100dd576064359081151582036100dd5760206102095f946101cc600154610962565b600155855460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529687939190921691839182906044820190565b03925af1928315610182575f93610259575b50610240576001548015610245575f1901600155610240576020906040519015158152f35b6109f5565b634e487b7160e01b5f52601160045260245ffd5b61027c91935060203d602011610283575b6102748183610895565b81019061094a565b918361021b565b503d61026a565b346100dd5760403660031901126100dd575f60206102e36102a9610869565b835460405163a9059cbb60e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b03925af18015610182576020915f91610302575b506040519015158152f35b6103199150823d8411610283576102748183610895565b826102f7565b346100dd575f3660031901126100dd575f80546040516395d89b4160e01b81529190829060049082906001600160a01b03165afa801561018257610371915f91610375575b506040519182918261083f565b0390f35b61039191503d805f833e6103898183610895565b8101906108e7565b82610364565b346100dd5760203660031901126100dd576103b0610869565b5f546040516370a0823160e01b81526001600160a01b0392831660048201529160209183916024918391165afa8015610182575f9061014f57602090604051908152f35b60c03660031901126100dd57610408610869565b6084359081151582036100dd5760a4359081151582036100dd576001600160a01b038116926104485f808080604435895af1610442610970565b5061099f565b6104c6575f805460405163a9059cbb60e01b81526001600160a01b0393841660048201526024803590820152926020928492604492849291165af1801561018257610499915f916104d9575061099f565b6104c6575f808080602094606435905af16104b2610970565b506104bc8161099f565b6040519015158152f35b6104d1600154610962565b6001556109f5565b6104f2915060203d602011610283576102748183610895565b84610442565b346100dd575f3660031901126100dd576020600154604051908152f35b346100dd575f3660031901126100dd575f5460405163313ce56760e01b815290602090829060049082906001600160a01b03165afa8015610182575f90610565575b60209060ff60405191168152f35b506020813d60201161059a575b8161057f60209383610895565b810103126100dd575160ff811681036100dd57602090610557565b3d9150610572565b60603660031901126100dd576105b6610869565b6105c1600154610962565b6001555f805460405163a9059cbb60e01b81526001600160a01b03848116600483015260248035908301529092602092849260449284929091165af1908115610182575f916106b8575b50156106805760405163d0fedf5560e01b81526001600160a01b039091166004820152604480356024830152600190820181905260648201526020816084815f305af1610663575b61065e600154610962565b600155005b61067b9060203d602011610283576102748183610895565b610653565b60405162461bcd60e51b815260206004820152601060248201526f3330b4b6103a37903a3930b739b332b960811b6044820152606490fd5b6106d1915060203d602011610283576102748183610895565b8261060b565b346100dd5760603660031901126100dd576106f0610869565b60206106fa61087f565b5f80546040516323b872dd60e01b81526001600160a01b039586166004820152928516602484015260448035908401529193849260649284929091165af18015610182576020915f9161030257506040519015158152f35b346100dd575f3660031901126100dd575f546040516318160ddd60e01b815290602090829060049082906001600160a01b03165afa8015610182575f9061014f57602090604051908152f35b346100dd5760403660031901126100dd575f60206102e36107bd610869565b835460405163095ea7b360e01b81526001600160a01b03928316600482015260248035908201529485939190921691839182906044820190565b346100dd575f3660031901126100dd575f80546306fdde0360e01b8352829060049082906001600160a01b03165afa801561018257610371915f916103755750604051918291825b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100dd57565b602435906001600160a01b03821682036100dd57565b90601f8019910116810190811067ffffffffffffffff8211176108b757604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff81116108b757601f01601f191660200190565b6020818303126100dd5780519067ffffffffffffffff82116100dd570181601f820112156100dd5780519061091b826108cb565b926109296040519485610895565b828452602083830101116100dd57815f9260208093018386015e8301015290565b908160209103126100dd575180151581036100dd5790565b5f1981146102455760010190565b3d1561099a573d90610981826108cb565b9161098f6040519384610895565b82523d5f602084013e565b606090565b156109a657565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea2646970667358221220a81469aa5125e6bccbdb8b03d07f973d80da6232339285ecac9ea3fc82e6a22364736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/erc20/testdata/ERC20TestCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/slashing/testdata/SlashingCaller.json b/precompiles/slashing/testdata/SlashingCaller.json index f9b7fd2e5..80ab153a2 100644 --- a/precompiles/slashing/testdata/SlashingCaller.json +++ b/precompiles/slashing/testdata/SlashingCaller.json @@ -42,11 +42,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523460155761011e908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c637327af90146023575f80fd5b3460bf57602036600319011260bf576004356001600160a01b0381169081900360bf5763224f67f360e11b825260048201526020816024815f6108065af1801560dd575f906079575b6020906040519015158152f35b5060203d60201160d7575b601f8101601f1916820167ffffffffffffffff81118382101760c35760209183916040528101031260bf5751801515810360bf57602090606c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b503d6084565b6040513d5f823e3d90fdfea264697066735822122076ad72a07e2943051dd4f31a11bf2cc424aef0fbc323558fa3318f07e36799fb64736f6c634300081c0033", - "deployedBytecode": "0x60808060405260043610156011575f80fd5b5f3560e01c637327af90146023575f80fd5b3460bf57602036600319011260bf576004356001600160a01b0381169081900360bf5763224f67f360e11b825260048201526020816024815f6108065af1801560dd575f906079575b6020906040519015158152f35b5060203d60201160d7575b601f8101601f1916820167ffffffffffffffff81118382101760c35760209183916040528101031260bf5751801515810360bf57602090606c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b503d6084565b6040513d5f823e3d90fdfea264697066735822122076ad72a07e2943051dd4f31a11bf2cc424aef0fbc323558fa3318f07e36799fb64736f6c634300081c0033", + "bytecode": "0x6080806040523460155761011e908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c637327af90146023575f80fd5b3460bf57602036600319011260bf576004356001600160a01b0381169081900360bf5763224f67f360e11b825260048201526020816024815f6108065af1801560dd575f906079575b6020906040519015158152f35b5060203d60201160d7575b601f8101601f1916820167ffffffffffffffff81118382101760c35760209183916040528101031260bf5751801515810360bf57602090606c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b503d6084565b6040513d5f823e3d90fdfea2646970667358221220c060968c05fe93d8d990db08ab55fe6aff6b4aaccafe2955e04e40818ccd592d64736f6c634300081c0033", + "deployedBytecode": "0x60808060405260043610156011575f80fd5b5f3560e01c637327af90146023575f80fd5b3460bf57602036600319011260bf576004356001600160a01b0381169081900360bf5763224f67f360e11b825260048201526020816024815f6108065af1801560dd575f906079575b6020906040519015158152f35b5060203d60201160d7575b601f8101601f1916820167ffffffffffffffff81118382101760c35760209183916040528101031260bf5751801515810360bf57602090606c565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b503d6084565b6040513d5f823e3d90fdfea2646970667358221220c060968c05fe93d8d990db08ab55fe6aff6b4aaccafe2955e04e40818ccd592d64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/slashing/testdata/SlashingCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/staking/testdata/StakingCaller.json b/precompiles/staking/testdata/StakingCaller.json index 32107dfe0..fa93b68ea 100644 --- a/precompiles/staking/testdata/StakingCaller.json +++ b/precompiles/staking/testdata/StakingCaller.json @@ -1034,11 +1034,11 @@ "type": "function" } ], - "bytecode": "0x60806040523461027e57604051602081016001600160401b038111828210176101cc576040819052606081016001600160401b038111828210176101cc57604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760208201526261746560e81b604082015281526003546001600355806001106101e0575b5060035f9081525f51602061327d5f395f51905f52915b600182106100b757604051612fac90816102d18239f35b80518051906001600160401b0382116101cc576100d48554610282565b601f8111610191575b50602090601f83116001146101285792826001949360209386955f9261011d575b50505f19600383901b1c191690841b1786555b019301910190916100a0565b015190505f806100fe565b90601f19831691865f52815f20925f5b8181106101795750936020936001969387969383889510610161575b505050811b018655610111565b01515f1960f88460031b161c191690555f8080610154565b82840151855560019094019360209384019301610138565b6101bc90865f5260205f20601f850160051c810191602086106101c2575b601f0160051c01906102ba565b5f6100dd565b90915081906101af565b634e487b7160e01b5f52604160045260245ffd5b60035f525f51602061327d5f395f51905f52017fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85c5b8181106102225750610089565b8061022f60019254610282565b8061023c575b5001610215565b601f8111831461025157505f81555b5f610235565b61026d90825f5283601f60205f20920160051c820191016102ba565b805f525f602081208183555561024b565b5f80fd5b90600182811c921680156102b0575b602083101461029c57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610291565b8181106102c5575050565b5f81556001016102ba56fe60806040526004361015610011575f80fd5b5f3560e01c8063088b32b1146101545780631904bb2e1461014f57806319b16c4c1461014a5780632345e7d41461014557806329e71c821461014057806331bcbcb31461013b578063455b855114610136578063464d2d0314610131578063569c21e31461012c578063570467ac1461012757806361bc221a1461012257806368ac3df31461011d578063a4603a2e14610118578063af9a90b214610113578063b13d42421461010e578063b3e9823414610109578063b61b519714610104578063cf2753cf146100ff578063ddbaf2c2146100fa5763f732b065146100f5575f80fd5b611b57565b6119f8565b611963565b6118f6565b6117fa565b6116a6565b611543565b6113f1565b611365565b61133a565b611279565b6111ac565b611135565b610f2e565b610d2f565b610c31565b610a2e565b6107b5565b610578565b6103d0565b600435906001600160a01b038216820361016f57565b5f80fd5b60a435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b80548210156101b8575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b90600182811c921680156101fa575b60208310146101e657565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101db565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b0382111761023457604052565b610204565b60a081019081106001600160401b0382111761023457604052565b606081019081106001600160401b0382111761023457604052565b60c081019081106001600160401b0382111761023457604052565b608081019081106001600160401b0382111761023457604052565b604081019081106001600160401b0382111761023457604052565b90601f801991011681019081106001600160401b0382111761023457604052565b9060405191825f8254926102f4846101cc565b808452936001811690811561035f575060011461031b575b50610319925003836102c0565b565b90505f9291925260205f20905f915b818310610343575050906020610319928201015f61030c565b602091935080600191548385890101520191019091849261032a565b90506020925061031994915060ff191682840152151560051b8201015f61030c565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b926103bd606093969592608086526080860190610381565b956020850152604084015260070b910152565b3461016f57604036600319011261016f576103e9610159565b6001600160a01b03165f90815260016020526040902080546024359081101561016f576104159161019f565b5061041f816102e1565b6104426001830154926003600282015491015460070b90604051948594856103a5565b0390f35b9060048210156104535752565b634e487b7160e01b5f52602160045260245ffd5b6104d09160806104bf6104ad61049b610489865160a0875260a0870190610381565b60208701518682036020880152610381565b60408601518582036040870152610381565b60608501518482036060860152610381565b920151906080818403910152610381565b90565b90610140806105376104f361048986516101608752610160870190610381565b60408681015115159086015261051160608701516060870190610446565b6080860151608086015260a086015160a086015260c086015185820360c0870152610467565b60e08086015160070b90850152936101008181015160070b90850152610120810151610120850152015191015290565b9060206104d09281815201906104d3565b3461016f57602036600319011261016f576106375f610595610159565b816101406040516105a581610218565b60608152606060208201528260408201528260608201528260808201528260a08201526040516105d481610239565b6060815260606020820152606060408201526060808201526060608082015260c08201528260e0820152826101008201528261012082015201526040518093819263111d9dbd60e11b835260048301919091602081019260018060a01b03169052565b03816108005afa801561067e57610442915f9161065c575b5060405191829182610567565b61067891503d805f833e61067081836102c0565b810190611e98565b5f61064f565b611ebd565b604051906103196040836102c0565b6040519061031960a0836102c0565b60405190610319610160836102c0565b604051906103196080836102c0565b6001600160401b03811161023457601f01601f191660200190565b9291926106e7826106c0565b916106f560405193846102c0565b82948184528183011161016f578281602093845f960137010152565b9080601f8301121561016f578160206104d0933591016106db565b606060031982011261016f576004356001600160a01b038116810361016f57916024356001600160401b03811161016f578261076a91600401610711565b91604435906001600160401b03821161016f576104d091600401610711565b90815260406020820152606060206107ac84516040808601526080850190610381565b93015191015290565b3461016f576107c33661072c565b91906107cd611ec8565b5060405191602083019363120bba7360e11b8552610801846107f3858560248401611ee1565b03601f1981018652856102c0565b604051610824816108166020820180956119e6565b03601f1981018352826102c0565b5190206040516b19195b1959d85d1958d85b1b60a21b602082019081529061084f81602c8101610816565b519020810361089a575050505f61088992819251906108005af461087a610874611f3e565b91612067565b60208082518301019101611fb5565b905b61044260405192839283610789565b604051691cdd185d1a58d8d85b1b60b21b60208201908152906108c081602a8101610816565b51902081036108f1575050505f6108eb92819251906108005afa61087a6108e5611f3e565b9161201b565b9061088b565b6040516318d85b1b60e21b60208201908152906109118160248101610816565b519020810361093d575050505f6108eb9281925190826108005af161087a610937611f3e565b91611f6d565b9193509150604051602081019061096781610816846008906763616c6c636f646560c01b81520190565b519020036109f65761098d61097a611f03565b6020815191012063ffffffff60e01b1690565b916040602082015191015191604051938452600484015260406024840152603360448401526064830152608482015260c08160a4815f6108005af290805191610100606083015192016040521561016f576109e6610683565b906060825260208201529061088b565b60405162461bcd60e51b815260206004820152601060248201526f696e76616c69642063616c6c7479706560801b6044820152606490fd5b3461016f57606036600319011261016f576004356001600160401b03811161016f57610a5e903690600401610711565b602435906044356001600160401b03811161016f57610a81903690600401610711565b91610a8a612a62565b604051630fb6accf60e21b602082019081529093610abf85610ab1858730602485016120bd565b03601f1981018752866102c0565b604051610ad4816108166020820180956119e6565b51902093610aea610ae4426120fb565b60070b90565b6040516b19195b1959d85d1958d85b1b60a21b6020820190815290610b1281602c8101610816565b5190208603610b515750610b4f94505f610b4992819251906108005af4610b3a610874611f3e565b6020808251830101910161210b565b91612b54565b005b604051691cdd185d1a58d8d85b1b60b21b6020820190815290610b7781602a8101610816565b5190208603610b9f5750610b4f94505f610b4992819251906108005afa610b3a6108e5611f3e565b6040516318d85b1b60e21b6020820190815290610bbf8160248101610816565b5190208603610be85750610b4f94505f610b499281925190826108005af1610b3a610937611f3e565b93946040516020810190610c0f81610816846008906763616c6c636f646560c01b81520190565b519020036109f6575f9182915190826108005af21561016f57610b4f92612b54565b3461016f57604036600319011261016f576004356001600160401b03811161016f57610c61903690600401610711565b602435610c6e8183612cc3565b610c76612a62565b604051630fb6accf60e21b81529060208280610c97848730600485016120bd565b03815f6108005af191821561067e575f92610cfe575b505f8260070b1315610cc257610b4f92612b54565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d2191925060203d602011610d28575b610d1981836102c0565b81019061210b565b905f610cad565b503d610d0f565b606036600319011261016f57610d43610159565b6024356001600160401b03811161016f575f80610d67610db4933690600401610711565b93604435610d73612a62565b60405163a9059cbb60e01b6020820190815233602483015260448201929092528390610da28160648101610816565b51925af1610dae611f3e565b5061211f565b6040516353266bbb60e01b81529060208280610dd5348530600485016120bd565b03815f6108005af191821561067e57610b4f92610df9915f91610e01575b50612172565b349033612d59565b610e23915060203d602011610e29575b610e1b81836102c0565b81019061215d565b5f610df3565b503d610e11565b90604060031983011261016f576004356001600160a01b038116810361016f5791602435906001600160401b03821161016f576104d091600401610711565b90602082526040610ea4610e8f8351606060208701526080860190610381565b6020840151858203601f190184870152610381565b910151916060601f1982840301910152602080835192838152019201905f5b818110610ed05750505090565b909192602060c060019260a08751805160070b83528481015160070b8584015260408101516040840152606081015160608401526001600160401b036080820151166080840152015160070b60a08201520194019101919091610ec3565b3461016f57610f775f610f4036610e30565b90606060408051610f5081610254565b82815260208101839052015260405163a03ffee160e01b8152938492839260048401611ee1565b03816108005afa801561067e575f90610f9b575b6104429060405191829182610e6f565b503d805f833e610fab81836102c0565b81019060208183031261016f578051906001600160401b03821161016f570160608183031261016f5760405190610fe182610254565b80516001600160401b03811161016f5783610ffd918301611ca5565b825260208101516001600160401b03811161016f578361101e918301611ca5565b60208301526040810151906001600160401b03821161016f57019180601f8401121561016f57825192611050846121b0565b9161105e60405193846102c0565b848352602060c081850196028301019181831161016f57602001945b8286106110935750505061044292506040820152610f8b565b60c08683031261016f57602060c0916040516110ae8161026f565b6110b789611d9b565b81526110c4838a01611d9b565b83820152604089015160408201526060890151606082015260808901516110ea81611a3a565b60808201526110fb60a08a01611d9b565b60a082015281520195019461107a565b602060031982011261016f57600435906001600160401b03821161016f576104d091600401610711565b61113e3661110b565b611146612a62565b6040516353266bbb60e01b81529060208280611167348530600485016120bd565b03815f6108005af191821561067e5761118a92610df9915f91610e015750612172565b5f34156111a3575b5f8080809334903390f11561067e57005b506108fc611192565b6111b53661110b565b610db4612a62565b60606111fc6111ea6111d88451608087526080870190610381565b60208501518682036020880152610381565b60408401518582036040870152610381565b910151916060818303910152602080835192838152019201905f5b8181106112245750505090565b909192602060808261125d600194885160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b019401929101611217565b9060206104d09281815201906111bd565b3461016f576112e15f6112f361128e3661072c565b6060806040959395516112a08161028a565b81815281602082015281604082015201526040519586948594631f67e4e760e21b865260018060a01b03166004860152606060248601526064850190610381565b83810360031901604485015290610381565b03816108005afa801561067e57610442915f91611318575b5060405191829182611268565b61133491503d805f833e61132c81836102c0565b810190612319565b5f61130b565b3461016f575f36600319011261016f576020600254604051908152f35b908160a091031261016f5790565b3461016f5761010036600319011261016f576004356001600160401b03811161016f57611396903690600401611357565b606036602319011261016f576084356113ad610173565b9160c435916001600160401b03831161016f57610442936113d56113df943690600401610711565b9160e43593612424565b60405190151581529081906020820190565b3461016f57606036600319011261016f576004356001600160401b03811161016f57611421903690600401610711565b60243560443561142f612a62565b5f915f5b335f52600160205260405f205481101561153157335f90815260016020526040902061146590829061019f565b61019f565b5061148686611473836102e1565b6020815191012090602081519101201490565b9081611518575b5061149a57600101611433565b50915060208282946114b16001805b151514612d93565b6114d0604051968793849363096ac6ff60e11b855230600486016124ca565b03815f6108005af192831561067e57610b4f936114f4915f916114f9575b506124fd565b612e45565b611512915060203d602011610e2957610e1b81836102c0565b5f6114ee565b60030154611529915060070b610ae4565b42105f61148d565b50918282946114b160016020946114a9565b3461016f57608036600319011261016f576004356001600160401b03811161016f57611573903690600401611357565b60206115ab611580610189565b9260443593606435604051632943c16b60e21b8152608060048201529586948594608486019061238f565b6001600160a01b0390931660248501526044840152606483015203815f6108005af1801561067e57610442915f916115f1575b5060405190151581529081906020820190565b61160a915060203d602011610e2957610e1b81836102c0565b5f6115de565b9060206001600160401b038161162f8551604086526040860190610381565b9401511691015290565b929160408401936040815282518095526060810194602060608260051b8401019401905f5b81811061167b575050506104d09394506020818403910152611610565b909194602080611697600193605f19888203018c5289516104d3565b9701980191019691909661165e565b3461016f57604036600319011261016f576004356001600160401b03811161016f576116d6903690600401610711565b6024356001600160401b03811161016f576117266116f95f923690600401611357565b92611702611ec8565b50604051938492839263186b216760e01b8452604060048501526044840190610381565b828103600319016024840152608080611750611742858061233e565b60a0865260a086019161236f565b936001600160401b03602082013561176781611a3a565b1660208501526001600160401b03604082013561178381611a3a565b166040850152606081013561179781611a56565b1515606085015201356117a981611a56565b151591015203816108005afa90811561067e575f905f926117d5575b5061044260405192839283611639565b90506117f391503d805f833e6117eb81836102c0565b8101906125a8565b905f6117c5565b3461016f57606036600319011261016f576004356001600160401b03811161016f5761182a903690600401610711565b6024356001600160401b03811161016f57611849903690600401610711565b604435906118578284612cc3565b6040516354b826f560e01b815230600482015260806024820152602081806118976118856084830189610381565b82810360031901604484015286610381565b86606483015203815f6108005af190811561067e57610b4f946118cb5f6118d194879482916118d7575b5060070b1361265e565b33612ebd565b33612d59565b6118f0915060203d602011610d2857610d1981836102c0565b5f6118c1565b6118ff3661110b565b611907612a62565b6040516353266bbb60e01b81529060208280611928348530600485016120bd565b03815f6108005af191821561067e5761194b92610df9915f91610e015750612172565b6002546001810180911161195e57600255005b6120e7565b3461016f5761199a5f61197536610e30565b9061197e611ec8565b5060405163120bba7360e11b8152938492839260048401611ee1565b03816108005afa90811561067e575f905f926119c1575b5061044260405192839283610789565b90506119df91503d805f833e6119d781836102c0565b810190611fb5565b905f6119b1565b805191908290602001825e015f815290565b3461016f576020611a2a81611a0c36610e30565b9060018060a01b03165f525f825260405f20604051938480936119e6565b9081520301902054604051908152f35b6001600160401b0381160361016f57565b359061031982611a3a565b8015150361016f57565b359061031982611a56565b9291604084016040855282518091526060850190602060608260051b8801019401915f905b828210611aad57505050508360206104d094958403910152611610565b90919294605f1988820301825285516020611ad182516040855260408501906111bd565b91015182820360209384015280518083529183019201905f905b808210611b0957505050602080600192970192019201909291611a90565b909192602060a0600192828751611b4583825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920190611aeb565b3461016f57608036600319011261016f57611b70610159565b6024356001600160401b03811161016f57611b8f903690600401610711565b906044356001600160401b03811161016f57611baf903690600401610711565b606435926001600160401b03841161016f5760a0600319853603011261016f5760405192611bdc84610239565b84600401356001600160401b03811161016f578501943660238701121561016f576084611c5591611c1a611c5f9836906024600482013591016106db565b8752611c2860248201611a4b565b6020880152611c3960448201611a4b565b6040880152611c4a60648201611a60565b606088015201611a60565b6080850152612831565b9061044260405192839283611a6b565b929192611c7b826106c0565b91611c8960405193846102c0565b82948184528183011161016f578281602093845f96015e010152565b9080601f8301121561016f5781516104d092602001611c6f565b519061031982611a56565b5190600482101561016f57565b91909160a08184031261016f57611cec610692565b9281516001600160401b03811161016f5781611d09918401611ca5565b845260208201516001600160401b03811161016f5781611d2a918401611ca5565b602085015260408201516001600160401b03811161016f5781611d4e918401611ca5565b604085015260608201516001600160401b03811161016f5781611d72918401611ca5565b606085015260808201516001600160401b03811161016f57611d949201611ca5565b6080830152565b51908160070b820361016f57565b91906101608382031261016f57611dbe6106a1565b9280516001600160401b03811161016f5782611ddb918301611ca5565b845260208101516001600160401b03811161016f5782611dfc918301611ca5565b6020850152611e0d60408201611cbf565b6040850152611e1e60608201611cca565b60608501526080810151608085015260a081015160a085015260c08101516001600160401b03811161016f5761014092611e59918301611cd7565b60c0850152611e6a60e08201611d9b565b60e0850152611e7c6101008201611d9b565b6101008501526101208101516101208501520151610140830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201611da9565b6040513d5f823e3d90fd5b60405190611ed5826102a5565b5f602083606081520152565b6001600160a01b0390911681526040602082018190526104d092910190610381565b60405190611f126040836102c0565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b3d15611f68573d90611f4f826106c0565b91611f5d60405193846102c0565b82523d5f602084013e565b606090565b15611f7457565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b919060408382031261016f578251926020810151906001600160401b03821161016f57019060408282031261016f5760405191611ff1836102a5565b80516001600160401b03811161016f5760209261200f918301611ca5565b83520151602082015290565b1561202257565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b1561206e57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b9392916120e29060409260018060a01b03168652606060208701526060860190610381565b930152565b634e487b7160e01b5f52601160045260245ffd5b90621baf80820180921161195e57565b9081602091031261016f576104d090611d9b565b1561212657565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b9081602091031261016f57516104d081611a56565b1561217957565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b6001600160401b0381116102345760051b60200190565b919082608091031261016f576040516121df8161028a565b60608082946121ed81611d9b565b84526121fb60208201611d9b565b6020850152604081015160408501520151910152565b81601f8201121561016f578051612227816121b0565b9261223560405194856102c0565b81845260208085019260071b8401019281841161016f57602001915b83831061225f575050505090565b602060809161226e84866121c7565b815201920191612251565b91909160808184031261016f5761228e6106b1565b9281516001600160401b03811161016f57816122ab918401611ca5565b845260208201516001600160401b03811161016f57816122cc918401611ca5565b602085015260408201516001600160401b03811161016f57816122f0918401611ca5565b604085015260608201516001600160401b03811161016f576123129201612211565b6060830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201612279565b9035601e198236030181121561016f5701602081359101916001600160401b03821161016f57813603831361016f57565b908060209392818452848401375f828201840152601f01601f1916010190565b6104d09161241661240b6123f06123d56123ba6123ac878061233e565b60a0885260a088019161236f565b6123c7602088018861233e565b90878303602089015261236f565b6123e2604087018761233e565b90868303604088015261236f565b6123fd606086018661233e565b90858303606087015261236f565b92608081019061233e565b91608081850391015261236f565b909361249261245693956020956040519788968796637be6aa8b60e11b8852610100600489015261010488019061238f565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c4860152610381565b9060e483015203815f6108005af190811561067e575f916124b1575090565b6104d0915060203d602011610e2957610e1b81836102c0565b6001600160a01b039091168152608060208201819052929493926060926124f391830190610381565b9460408201520152565b1561250457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b91909160408184031261016f5760405190612563826102a5565b819381516001600160401b03811161016f5782019181601f8401121561016f576125966020939283858095519101611c6f565b84520151916125a483611a3a565b0152565b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f5780516125dd816121b0565b916125eb60405193846102c0565b81835260208084019260051b8201019186831161016f5760208201905b83821061263157505050509260208201516001600160401b03811161016f576104d09201612549565b81516001600160401b03811161016f576020916126538a848094880101611da9565b815201910190612608565b1561266557565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f578051906126d7826121b0565b916126e560405193846102c0565b80835260208084019160051b8301019186831161016f5760208101915b83831061272b57505050509260208201516001600160401b03811161016f576104d09201612549565b82516001600160401b03811161016f5782016040818a03601f19011261016f5760405190612758826102a5565b60208101516001600160401b03811161016f578a602061277a92840101612279565b825260408101516001600160401b03811161016f57602091010189601f8201121561016f5780516127aa816121b0565b916127b860405193846102c0565b818352602060a08185019302820101908c821161016f57602001915b8c8284106127f5575050505091816020938480940152815201920191612702565b8360a091031261016f57602060a0918e61281b60405191612815836102a5565b876121c7565b81526080860151838201528152019201916127d4565b61287a949361288c5f94612843611ec8565b50604051630428a14760e21b81526001600160a01b0390941660048501526080602485015292968794859491906084860190610381565b84810360031901604486015290610381565b6003198382030160648401526080806128ae845160a0855260a0850190610381565b936001600160401b0360208201511660208501526001600160401b0360408201511660408501526060810151151560608501520151151591015203816108005afa91821561067e575f905f9361290357509190565b90506129229192503d805f833e61291a81836102c0565b8101906126a1565b9091565b818110612931575050565b5f8155600101612926565b634e487b7160e01b5f525f60045260245ffd5b906129cb576003816129625f93546101cc565b80612979575b508260018201558260028201550155565b601f811160011461298f57508281555b5f612968565b818452602084206129ab91601f0160051c810190600101612926565b808352826020812080548260011b90831984871b1c191617835555612989565b61293c565b9060405180925f908054906129e4826101cc565b9160018116908115612a3d5750600114612a07575b505060209281520301902090565b9091505f5260205f205f905b828210612a26575050810160205f6129f9565b805482870152859350602090910190600101612a13565b60ff191685525050801515028201905060205f6129f9565b9190820391821161195e57565b5f5b335f52600160205260405f2054811015612b0e5780612a996001926114603360018060a01b03165f52600160205260405f2090565b50600381015460070b421015612ab1575b5001612a64565b335f908152600160205260409020612ad490612ace90849061019f565b9061294f565b612b06612afe8483015492612af83360018060a01b03165f525f60205260405f2090565b906129d0565b918254612a55565b90555f612aaa565b50565b9190601f8111612b2057505050565b610319925f5260205f20906020601f840160051c83019310612b4a575b601f0160051c0190612926565b9091508190612b3d565b909291335f52600160205260405f2060405192612b708461028a565b8352602083019485526040830190438252606084019260070b83528054600160401b81101561023457612ba89160018201815561019f565b9390936129cb57519485516001600160401b03811161023457612bd581612bcf87546101cc565b87612b11565b6020601f8211600114612c4f5791612c1082612c269593600397956103199a9b5f92612c44575b50508160011b915f199060031b1c19161790565b86555b5160018601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b015190505f80612bfc565b601f19821697612c62875f5260205f2090565b985f5b818110612cab5750926103199899600397959360019383612c26999710612c94575b505050811b018655612c13565b01515f19838a1b60f8161c191690555f8080612c87565b838301518b556001909a019960209384019301612c65565b6020612cdf91335f525f825260405f20604051938480936119e6565b908152030190205410612cee57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b612d7d9160209160018060a01b03165f525f825260405f20604051938480936119e6565b90815203019020805491820180921161195e5755565b15612d9a57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b15612df257565b60405162461bcd60e51b815260206004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152608490fd5b90335f52600160205260405f20905f925b8254841015612eb757612e69848461019f565b509080600283015403612eab57506001612e929101918254612e8d82821015612deb565b612a55565b81555415612e9e575050565b61031991612ace9161019f565b93600191500192612e56565b50505050565b9060018060a01b0382165f525f6020528260405f2060206040518092612ee382876119e6565b908152030190205410612f31576020612f1e91612f12612f2d9460018060a01b03165f525f60205260405f2090565b604051938480936119e6565b90815203019020918254612a55565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fdfea2646970667358221220384e62817f17bd4369dd405c5c4b4e4f46276f274516e89765a2049539c965c964736f6c634300081c0033c2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063088b32b1146101545780631904bb2e1461014f57806319b16c4c1461014a5780632345e7d41461014557806329e71c821461014057806331bcbcb31461013b578063455b855114610136578063464d2d0314610131578063569c21e31461012c578063570467ac1461012757806361bc221a1461012257806368ac3df31461011d578063a4603a2e14610118578063af9a90b214610113578063b13d42421461010e578063b3e9823414610109578063b61b519714610104578063cf2753cf146100ff578063ddbaf2c2146100fa5763f732b065146100f5575f80fd5b611b57565b6119f8565b611963565b6118f6565b6117fa565b6116a6565b611543565b6113f1565b611365565b61133a565b611279565b6111ac565b611135565b610f2e565b610d2f565b610c31565b610a2e565b6107b5565b610578565b6103d0565b600435906001600160a01b038216820361016f57565b5f80fd5b60a435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b80548210156101b8575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b90600182811c921680156101fa575b60208310146101e657565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101db565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b0382111761023457604052565b610204565b60a081019081106001600160401b0382111761023457604052565b606081019081106001600160401b0382111761023457604052565b60c081019081106001600160401b0382111761023457604052565b608081019081106001600160401b0382111761023457604052565b604081019081106001600160401b0382111761023457604052565b90601f801991011681019081106001600160401b0382111761023457604052565b9060405191825f8254926102f4846101cc565b808452936001811690811561035f575060011461031b575b50610319925003836102c0565b565b90505f9291925260205f20905f915b818310610343575050906020610319928201015f61030c565b602091935080600191548385890101520191019091849261032a565b90506020925061031994915060ff191682840152151560051b8201015f61030c565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b926103bd606093969592608086526080860190610381565b956020850152604084015260070b910152565b3461016f57604036600319011261016f576103e9610159565b6001600160a01b03165f90815260016020526040902080546024359081101561016f576104159161019f565b5061041f816102e1565b6104426001830154926003600282015491015460070b90604051948594856103a5565b0390f35b9060048210156104535752565b634e487b7160e01b5f52602160045260245ffd5b6104d09160806104bf6104ad61049b610489865160a0875260a0870190610381565b60208701518682036020880152610381565b60408601518582036040870152610381565b60608501518482036060860152610381565b920151906080818403910152610381565b90565b90610140806105376104f361048986516101608752610160870190610381565b60408681015115159086015261051160608701516060870190610446565b6080860151608086015260a086015160a086015260c086015185820360c0870152610467565b60e08086015160070b90850152936101008181015160070b90850152610120810151610120850152015191015290565b9060206104d09281815201906104d3565b3461016f57602036600319011261016f576106375f610595610159565b816101406040516105a581610218565b60608152606060208201528260408201528260608201528260808201528260a08201526040516105d481610239565b6060815260606020820152606060408201526060808201526060608082015260c08201528260e0820152826101008201528261012082015201526040518093819263111d9dbd60e11b835260048301919091602081019260018060a01b03169052565b03816108005afa801561067e57610442915f9161065c575b5060405191829182610567565b61067891503d805f833e61067081836102c0565b810190611e98565b5f61064f565b611ebd565b604051906103196040836102c0565b6040519061031960a0836102c0565b60405190610319610160836102c0565b604051906103196080836102c0565b6001600160401b03811161023457601f01601f191660200190565b9291926106e7826106c0565b916106f560405193846102c0565b82948184528183011161016f578281602093845f960137010152565b9080601f8301121561016f578160206104d0933591016106db565b606060031982011261016f576004356001600160a01b038116810361016f57916024356001600160401b03811161016f578261076a91600401610711565b91604435906001600160401b03821161016f576104d091600401610711565b90815260406020820152606060206107ac84516040808601526080850190610381565b93015191015290565b3461016f576107c33661072c565b91906107cd611ec8565b5060405191602083019363120bba7360e11b8552610801846107f3858560248401611ee1565b03601f1981018652856102c0565b604051610824816108166020820180956119e6565b03601f1981018352826102c0565b5190206040516b19195b1959d85d1958d85b1b60a21b602082019081529061084f81602c8101610816565b519020810361089a575050505f61088992819251906108005af461087a610874611f3e565b91612067565b60208082518301019101611fb5565b905b61044260405192839283610789565b604051691cdd185d1a58d8d85b1b60b21b60208201908152906108c081602a8101610816565b51902081036108f1575050505f6108eb92819251906108005afa61087a6108e5611f3e565b9161201b565b9061088b565b6040516318d85b1b60e21b60208201908152906109118160248101610816565b519020810361093d575050505f6108eb9281925190826108005af161087a610937611f3e565b91611f6d565b9193509150604051602081019061096781610816846008906763616c6c636f646560c01b81520190565b519020036109f65761098d61097a611f03565b6020815191012063ffffffff60e01b1690565b916040602082015191015191604051938452600484015260406024840152603360448401526064830152608482015260c08160a4815f6108005af290805191610100606083015192016040521561016f576109e6610683565b906060825260208201529061088b565b60405162461bcd60e51b815260206004820152601060248201526f696e76616c69642063616c6c7479706560801b6044820152606490fd5b3461016f57606036600319011261016f576004356001600160401b03811161016f57610a5e903690600401610711565b602435906044356001600160401b03811161016f57610a81903690600401610711565b91610a8a612a62565b604051630fb6accf60e21b602082019081529093610abf85610ab1858730602485016120bd565b03601f1981018752866102c0565b604051610ad4816108166020820180956119e6565b51902093610aea610ae4426120fb565b60070b90565b6040516b19195b1959d85d1958d85b1b60a21b6020820190815290610b1281602c8101610816565b5190208603610b515750610b4f94505f610b4992819251906108005af4610b3a610874611f3e565b6020808251830101910161210b565b91612b54565b005b604051691cdd185d1a58d8d85b1b60b21b6020820190815290610b7781602a8101610816565b5190208603610b9f5750610b4f94505f610b4992819251906108005afa610b3a6108e5611f3e565b6040516318d85b1b60e21b6020820190815290610bbf8160248101610816565b5190208603610be85750610b4f94505f610b499281925190826108005af1610b3a610937611f3e565b93946040516020810190610c0f81610816846008906763616c6c636f646560c01b81520190565b519020036109f6575f9182915190826108005af21561016f57610b4f92612b54565b3461016f57604036600319011261016f576004356001600160401b03811161016f57610c61903690600401610711565b602435610c6e8183612cc3565b610c76612a62565b604051630fb6accf60e21b81529060208280610c97848730600485016120bd565b03815f6108005af191821561067e575f92610cfe575b505f8260070b1315610cc257610b4f92612b54565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d2191925060203d602011610d28575b610d1981836102c0565b81019061210b565b905f610cad565b503d610d0f565b606036600319011261016f57610d43610159565b6024356001600160401b03811161016f575f80610d67610db4933690600401610711565b93604435610d73612a62565b60405163a9059cbb60e01b6020820190815233602483015260448201929092528390610da28160648101610816565b51925af1610dae611f3e565b5061211f565b6040516353266bbb60e01b81529060208280610dd5348530600485016120bd565b03815f6108005af191821561067e57610b4f92610df9915f91610e01575b50612172565b349033612d59565b610e23915060203d602011610e29575b610e1b81836102c0565b81019061215d565b5f610df3565b503d610e11565b90604060031983011261016f576004356001600160a01b038116810361016f5791602435906001600160401b03821161016f576104d091600401610711565b90602082526040610ea4610e8f8351606060208701526080860190610381565b6020840151858203601f190184870152610381565b910151916060601f1982840301910152602080835192838152019201905f5b818110610ed05750505090565b909192602060c060019260a08751805160070b83528481015160070b8584015260408101516040840152606081015160608401526001600160401b036080820151166080840152015160070b60a08201520194019101919091610ec3565b3461016f57610f775f610f4036610e30565b90606060408051610f5081610254565b82815260208101839052015260405163a03ffee160e01b8152938492839260048401611ee1565b03816108005afa801561067e575f90610f9b575b6104429060405191829182610e6f565b503d805f833e610fab81836102c0565b81019060208183031261016f578051906001600160401b03821161016f570160608183031261016f5760405190610fe182610254565b80516001600160401b03811161016f5783610ffd918301611ca5565b825260208101516001600160401b03811161016f578361101e918301611ca5565b60208301526040810151906001600160401b03821161016f57019180601f8401121561016f57825192611050846121b0565b9161105e60405193846102c0565b848352602060c081850196028301019181831161016f57602001945b8286106110935750505061044292506040820152610f8b565b60c08683031261016f57602060c0916040516110ae8161026f565b6110b789611d9b565b81526110c4838a01611d9b565b83820152604089015160408201526060890151606082015260808901516110ea81611a3a565b60808201526110fb60a08a01611d9b565b60a082015281520195019461107a565b602060031982011261016f57600435906001600160401b03821161016f576104d091600401610711565b61113e3661110b565b611146612a62565b6040516353266bbb60e01b81529060208280611167348530600485016120bd565b03815f6108005af191821561067e5761118a92610df9915f91610e015750612172565b5f34156111a3575b5f8080809334903390f11561067e57005b506108fc611192565b6111b53661110b565b610db4612a62565b60606111fc6111ea6111d88451608087526080870190610381565b60208501518682036020880152610381565b60408401518582036040870152610381565b910151916060818303910152602080835192838152019201905f5b8181106112245750505090565b909192602060808261125d600194885160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b019401929101611217565b9060206104d09281815201906111bd565b3461016f576112e15f6112f361128e3661072c565b6060806040959395516112a08161028a565b81815281602082015281604082015201526040519586948594631f67e4e760e21b865260018060a01b03166004860152606060248601526064850190610381565b83810360031901604485015290610381565b03816108005afa801561067e57610442915f91611318575b5060405191829182611268565b61133491503d805f833e61132c81836102c0565b810190612319565b5f61130b565b3461016f575f36600319011261016f576020600254604051908152f35b908160a091031261016f5790565b3461016f5761010036600319011261016f576004356001600160401b03811161016f57611396903690600401611357565b606036602319011261016f576084356113ad610173565b9160c435916001600160401b03831161016f57610442936113d56113df943690600401610711565b9160e43593612424565b60405190151581529081906020820190565b3461016f57606036600319011261016f576004356001600160401b03811161016f57611421903690600401610711565b60243560443561142f612a62565b5f915f5b335f52600160205260405f205481101561153157335f90815260016020526040902061146590829061019f565b61019f565b5061148686611473836102e1565b6020815191012090602081519101201490565b9081611518575b5061149a57600101611433565b50915060208282946114b16001805b151514612d93565b6114d0604051968793849363096ac6ff60e11b855230600486016124ca565b03815f6108005af192831561067e57610b4f936114f4915f916114f9575b506124fd565b612e45565b611512915060203d602011610e2957610e1b81836102c0565b5f6114ee565b60030154611529915060070b610ae4565b42105f61148d565b50918282946114b160016020946114a9565b3461016f57608036600319011261016f576004356001600160401b03811161016f57611573903690600401611357565b60206115ab611580610189565b9260443593606435604051632943c16b60e21b8152608060048201529586948594608486019061238f565b6001600160a01b0390931660248501526044840152606483015203815f6108005af1801561067e57610442915f916115f1575b5060405190151581529081906020820190565b61160a915060203d602011610e2957610e1b81836102c0565b5f6115de565b9060206001600160401b038161162f8551604086526040860190610381565b9401511691015290565b929160408401936040815282518095526060810194602060608260051b8401019401905f5b81811061167b575050506104d09394506020818403910152611610565b909194602080611697600193605f19888203018c5289516104d3565b9701980191019691909661165e565b3461016f57604036600319011261016f576004356001600160401b03811161016f576116d6903690600401610711565b6024356001600160401b03811161016f576117266116f95f923690600401611357565b92611702611ec8565b50604051938492839263186b216760e01b8452604060048501526044840190610381565b828103600319016024840152608080611750611742858061233e565b60a0865260a086019161236f565b936001600160401b03602082013561176781611a3a565b1660208501526001600160401b03604082013561178381611a3a565b166040850152606081013561179781611a56565b1515606085015201356117a981611a56565b151591015203816108005afa90811561067e575f905f926117d5575b5061044260405192839283611639565b90506117f391503d805f833e6117eb81836102c0565b8101906125a8565b905f6117c5565b3461016f57606036600319011261016f576004356001600160401b03811161016f5761182a903690600401610711565b6024356001600160401b03811161016f57611849903690600401610711565b604435906118578284612cc3565b6040516354b826f560e01b815230600482015260806024820152602081806118976118856084830189610381565b82810360031901604484015286610381565b86606483015203815f6108005af190811561067e57610b4f946118cb5f6118d194879482916118d7575b5060070b1361265e565b33612ebd565b33612d59565b6118f0915060203d602011610d2857610d1981836102c0565b5f6118c1565b6118ff3661110b565b611907612a62565b6040516353266bbb60e01b81529060208280611928348530600485016120bd565b03815f6108005af191821561067e5761194b92610df9915f91610e015750612172565b6002546001810180911161195e57600255005b6120e7565b3461016f5761199a5f61197536610e30565b9061197e611ec8565b5060405163120bba7360e11b8152938492839260048401611ee1565b03816108005afa90811561067e575f905f926119c1575b5061044260405192839283610789565b90506119df91503d805f833e6119d781836102c0565b810190611fb5565b905f6119b1565b805191908290602001825e015f815290565b3461016f576020611a2a81611a0c36610e30565b9060018060a01b03165f525f825260405f20604051938480936119e6565b9081520301902054604051908152f35b6001600160401b0381160361016f57565b359061031982611a3a565b8015150361016f57565b359061031982611a56565b9291604084016040855282518091526060850190602060608260051b8801019401915f905b828210611aad57505050508360206104d094958403910152611610565b90919294605f1988820301825285516020611ad182516040855260408501906111bd565b91015182820360209384015280518083529183019201905f905b808210611b0957505050602080600192970192019201909291611a90565b909192602060a0600192828751611b4583825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920190611aeb565b3461016f57608036600319011261016f57611b70610159565b6024356001600160401b03811161016f57611b8f903690600401610711565b906044356001600160401b03811161016f57611baf903690600401610711565b606435926001600160401b03841161016f5760a0600319853603011261016f5760405192611bdc84610239565b84600401356001600160401b03811161016f578501943660238701121561016f576084611c5591611c1a611c5f9836906024600482013591016106db565b8752611c2860248201611a4b565b6020880152611c3960448201611a4b565b6040880152611c4a60648201611a60565b606088015201611a60565b6080850152612831565b9061044260405192839283611a6b565b929192611c7b826106c0565b91611c8960405193846102c0565b82948184528183011161016f578281602093845f96015e010152565b9080601f8301121561016f5781516104d092602001611c6f565b519061031982611a56565b5190600482101561016f57565b91909160a08184031261016f57611cec610692565b9281516001600160401b03811161016f5781611d09918401611ca5565b845260208201516001600160401b03811161016f5781611d2a918401611ca5565b602085015260408201516001600160401b03811161016f5781611d4e918401611ca5565b604085015260608201516001600160401b03811161016f5781611d72918401611ca5565b606085015260808201516001600160401b03811161016f57611d949201611ca5565b6080830152565b51908160070b820361016f57565b91906101608382031261016f57611dbe6106a1565b9280516001600160401b03811161016f5782611ddb918301611ca5565b845260208101516001600160401b03811161016f5782611dfc918301611ca5565b6020850152611e0d60408201611cbf565b6040850152611e1e60608201611cca565b60608501526080810151608085015260a081015160a085015260c08101516001600160401b03811161016f5761014092611e59918301611cd7565b60c0850152611e6a60e08201611d9b565b60e0850152611e7c6101008201611d9b565b6101008501526101208101516101208501520151610140830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201611da9565b6040513d5f823e3d90fd5b60405190611ed5826102a5565b5f602083606081520152565b6001600160a01b0390911681526040602082018190526104d092910190610381565b60405190611f126040836102c0565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b3d15611f68573d90611f4f826106c0565b91611f5d60405193846102c0565b82523d5f602084013e565b606090565b15611f7457565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b919060408382031261016f578251926020810151906001600160401b03821161016f57019060408282031261016f5760405191611ff1836102a5565b80516001600160401b03811161016f5760209261200f918301611ca5565b83520151602082015290565b1561202257565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b1561206e57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b9392916120e29060409260018060a01b03168652606060208701526060860190610381565b930152565b634e487b7160e01b5f52601160045260245ffd5b90621baf80820180921161195e57565b9081602091031261016f576104d090611d9b565b1561212657565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b9081602091031261016f57516104d081611a56565b1561217957565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b6001600160401b0381116102345760051b60200190565b919082608091031261016f576040516121df8161028a565b60608082946121ed81611d9b565b84526121fb60208201611d9b565b6020850152604081015160408501520151910152565b81601f8201121561016f578051612227816121b0565b9261223560405194856102c0565b81845260208085019260071b8401019281841161016f57602001915b83831061225f575050505090565b602060809161226e84866121c7565b815201920191612251565b91909160808184031261016f5761228e6106b1565b9281516001600160401b03811161016f57816122ab918401611ca5565b845260208201516001600160401b03811161016f57816122cc918401611ca5565b602085015260408201516001600160401b03811161016f57816122f0918401611ca5565b604085015260608201516001600160401b03811161016f576123129201612211565b6060830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201612279565b9035601e198236030181121561016f5701602081359101916001600160401b03821161016f57813603831361016f57565b908060209392818452848401375f828201840152601f01601f1916010190565b6104d09161241661240b6123f06123d56123ba6123ac878061233e565b60a0885260a088019161236f565b6123c7602088018861233e565b90878303602089015261236f565b6123e2604087018761233e565b90868303604088015261236f565b6123fd606086018661233e565b90858303606087015261236f565b92608081019061233e565b91608081850391015261236f565b909361249261245693956020956040519788968796637be6aa8b60e11b8852610100600489015261010488019061238f565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c4860152610381565b9060e483015203815f6108005af190811561067e575f916124b1575090565b6104d0915060203d602011610e2957610e1b81836102c0565b6001600160a01b039091168152608060208201819052929493926060926124f391830190610381565b9460408201520152565b1561250457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b91909160408184031261016f5760405190612563826102a5565b819381516001600160401b03811161016f5782019181601f8401121561016f576125966020939283858095519101611c6f565b84520151916125a483611a3a565b0152565b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f5780516125dd816121b0565b916125eb60405193846102c0565b81835260208084019260051b8201019186831161016f5760208201905b83821061263157505050509260208201516001600160401b03811161016f576104d09201612549565b81516001600160401b03811161016f576020916126538a848094880101611da9565b815201910190612608565b1561266557565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f578051906126d7826121b0565b916126e560405193846102c0565b80835260208084019160051b8301019186831161016f5760208101915b83831061272b57505050509260208201516001600160401b03811161016f576104d09201612549565b82516001600160401b03811161016f5782016040818a03601f19011261016f5760405190612758826102a5565b60208101516001600160401b03811161016f578a602061277a92840101612279565b825260408101516001600160401b03811161016f57602091010189601f8201121561016f5780516127aa816121b0565b916127b860405193846102c0565b818352602060a08185019302820101908c821161016f57602001915b8c8284106127f5575050505091816020938480940152815201920191612702565b8360a091031261016f57602060a0918e61281b60405191612815836102a5565b876121c7565b81526080860151838201528152019201916127d4565b61287a949361288c5f94612843611ec8565b50604051630428a14760e21b81526001600160a01b0390941660048501526080602485015292968794859491906084860190610381565b84810360031901604486015290610381565b6003198382030160648401526080806128ae845160a0855260a0850190610381565b936001600160401b0360208201511660208501526001600160401b0360408201511660408501526060810151151560608501520151151591015203816108005afa91821561067e575f905f9361290357509190565b90506129229192503d805f833e61291a81836102c0565b8101906126a1565b9091565b818110612931575050565b5f8155600101612926565b634e487b7160e01b5f525f60045260245ffd5b906129cb576003816129625f93546101cc565b80612979575b508260018201558260028201550155565b601f811160011461298f57508281555b5f612968565b818452602084206129ab91601f0160051c810190600101612926565b808352826020812080548260011b90831984871b1c191617835555612989565b61293c565b9060405180925f908054906129e4826101cc565b9160018116908115612a3d5750600114612a07575b505060209281520301902090565b9091505f5260205f205f905b828210612a26575050810160205f6129f9565b805482870152859350602090910190600101612a13565b60ff191685525050801515028201905060205f6129f9565b9190820391821161195e57565b5f5b335f52600160205260405f2054811015612b0e5780612a996001926114603360018060a01b03165f52600160205260405f2090565b50600381015460070b421015612ab1575b5001612a64565b335f908152600160205260409020612ad490612ace90849061019f565b9061294f565b612b06612afe8483015492612af83360018060a01b03165f525f60205260405f2090565b906129d0565b918254612a55565b90555f612aaa565b50565b9190601f8111612b2057505050565b610319925f5260205f20906020601f840160051c83019310612b4a575b601f0160051c0190612926565b9091508190612b3d565b909291335f52600160205260405f2060405192612b708461028a565b8352602083019485526040830190438252606084019260070b83528054600160401b81101561023457612ba89160018201815561019f565b9390936129cb57519485516001600160401b03811161023457612bd581612bcf87546101cc565b87612b11565b6020601f8211600114612c4f5791612c1082612c269593600397956103199a9b5f92612c44575b50508160011b915f199060031b1c19161790565b86555b5160018601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b015190505f80612bfc565b601f19821697612c62875f5260205f2090565b985f5b818110612cab5750926103199899600397959360019383612c26999710612c94575b505050811b018655612c13565b01515f19838a1b60f8161c191690555f8080612c87565b838301518b556001909a019960209384019301612c65565b6020612cdf91335f525f825260405f20604051938480936119e6565b908152030190205410612cee57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b612d7d9160209160018060a01b03165f525f825260405f20604051938480936119e6565b90815203019020805491820180921161195e5755565b15612d9a57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b15612df257565b60405162461bcd60e51b815260206004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152608490fd5b90335f52600160205260405f20905f925b8254841015612eb757612e69848461019f565b509080600283015403612eab57506001612e929101918254612e8d82821015612deb565b612a55565b81555415612e9e575050565b61031991612ace9161019f565b93600191500192612e56565b50505050565b9060018060a01b0382165f525f6020528260405f2060206040518092612ee382876119e6565b908152030190205410612f31576020612f1e91612f12612f2d9460018060a01b03165f525f60205260405f2090565b604051938480936119e6565b90815203019020918254612a55565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fdfea2646970667358221220384e62817f17bd4369dd405c5c4b4e4f46276f274516e89765a2049539c965c964736f6c634300081c0033", + "bytecode": "0x60806040523461027e57604051602081016001600160401b038111828210176101cc576040819052606081016001600160401b038111828210176101cc57604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760208201526261746560e81b604082015281526003546001600355806001106101e0575b5060035f9081525f51602061327d5f395f51905f52915b600182106100b757604051612fac90816102d18239f35b80518051906001600160401b0382116101cc576100d48554610282565b601f8111610191575b50602090601f83116001146101285792826001949360209386955f9261011d575b50505f19600383901b1c191690841b1786555b019301910190916100a0565b015190505f806100fe565b90601f19831691865f52815f20925f5b8181106101795750936020936001969387969383889510610161575b505050811b018655610111565b01515f1960f88460031b161c191690555f8080610154565b82840151855560019094019360209384019301610138565b6101bc90865f5260205f20601f850160051c810191602086106101c2575b601f0160051c01906102ba565b5f6100dd565b90915081906101af565b634e487b7160e01b5f52604160045260245ffd5b60035f525f51602061327d5f395f51905f52017fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85c5b8181106102225750610089565b8061022f60019254610282565b8061023c575b5001610215565b601f8111831461025157505f81555b5f610235565b61026d90825f5283601f60205f20920160051c820191016102ba565b805f525f602081208183555561024b565b5f80fd5b90600182811c921680156102b0575b602083101461029c57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610291565b8181106102c5575050565b5f81556001016102ba56fe60806040526004361015610011575f80fd5b5f3560e01c8063088b32b1146101545780631904bb2e1461014f57806319b16c4c1461014a5780632345e7d41461014557806329e71c821461014057806331bcbcb31461013b578063455b855114610136578063464d2d0314610131578063569c21e31461012c578063570467ac1461012757806361bc221a1461012257806368ac3df31461011d578063a4603a2e14610118578063af9a90b214610113578063b13d42421461010e578063b3e9823414610109578063b61b519714610104578063cf2753cf146100ff578063ddbaf2c2146100fa5763f732b065146100f5575f80fd5b611b57565b6119f8565b611963565b6118f6565b6117fa565b6116a6565b611543565b6113f1565b611365565b61133a565b611279565b6111ac565b611135565b610f2e565b610d2f565b610c31565b610a2e565b6107b5565b610578565b6103d0565b600435906001600160a01b038216820361016f57565b5f80fd5b60a435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b80548210156101b8575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b90600182811c921680156101fa575b60208310146101e657565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101db565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b0382111761023457604052565b610204565b60a081019081106001600160401b0382111761023457604052565b606081019081106001600160401b0382111761023457604052565b60c081019081106001600160401b0382111761023457604052565b608081019081106001600160401b0382111761023457604052565b604081019081106001600160401b0382111761023457604052565b90601f801991011681019081106001600160401b0382111761023457604052565b9060405191825f8254926102f4846101cc565b808452936001811690811561035f575060011461031b575b50610319925003836102c0565b565b90505f9291925260205f20905f915b818310610343575050906020610319928201015f61030c565b602091935080600191548385890101520191019091849261032a565b90506020925061031994915060ff191682840152151560051b8201015f61030c565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b926103bd606093969592608086526080860190610381565b956020850152604084015260070b910152565b3461016f57604036600319011261016f576103e9610159565b6001600160a01b03165f90815260016020526040902080546024359081101561016f576104159161019f565b5061041f816102e1565b6104426001830154926003600282015491015460070b90604051948594856103a5565b0390f35b9060048210156104535752565b634e487b7160e01b5f52602160045260245ffd5b6104d09160806104bf6104ad61049b610489865160a0875260a0870190610381565b60208701518682036020880152610381565b60408601518582036040870152610381565b60608501518482036060860152610381565b920151906080818403910152610381565b90565b90610140806105376104f361048986516101608752610160870190610381565b60408681015115159086015261051160608701516060870190610446565b6080860151608086015260a086015160a086015260c086015185820360c0870152610467565b60e08086015160070b90850152936101008181015160070b90850152610120810151610120850152015191015290565b9060206104d09281815201906104d3565b3461016f57602036600319011261016f576106375f610595610159565b816101406040516105a581610218565b60608152606060208201528260408201528260608201528260808201528260a08201526040516105d481610239565b6060815260606020820152606060408201526060808201526060608082015260c08201528260e0820152826101008201528261012082015201526040518093819263111d9dbd60e11b835260048301919091602081019260018060a01b03169052565b03816108005afa801561067e57610442915f9161065c575b5060405191829182610567565b61067891503d805f833e61067081836102c0565b810190611e98565b5f61064f565b611ebd565b604051906103196040836102c0565b6040519061031960a0836102c0565b60405190610319610160836102c0565b604051906103196080836102c0565b6001600160401b03811161023457601f01601f191660200190565b9291926106e7826106c0565b916106f560405193846102c0565b82948184528183011161016f578281602093845f960137010152565b9080601f8301121561016f578160206104d0933591016106db565b606060031982011261016f576004356001600160a01b038116810361016f57916024356001600160401b03811161016f578261076a91600401610711565b91604435906001600160401b03821161016f576104d091600401610711565b90815260406020820152606060206107ac84516040808601526080850190610381565b93015191015290565b3461016f576107c33661072c565b91906107cd611ec8565b5060405191602083019363120bba7360e11b8552610801846107f3858560248401611ee1565b03601f1981018652856102c0565b604051610824816108166020820180956119e6565b03601f1981018352826102c0565b5190206040516b19195b1959d85d1958d85b1b60a21b602082019081529061084f81602c8101610816565b519020810361089a575050505f61088992819251906108005af461087a610874611f3e565b91612067565b60208082518301019101611fb5565b905b61044260405192839283610789565b604051691cdd185d1a58d8d85b1b60b21b60208201908152906108c081602a8101610816565b51902081036108f1575050505f6108eb92819251906108005afa61087a6108e5611f3e565b9161201b565b9061088b565b6040516318d85b1b60e21b60208201908152906109118160248101610816565b519020810361093d575050505f6108eb9281925190826108005af161087a610937611f3e565b91611f6d565b9193509150604051602081019061096781610816846008906763616c6c636f646560c01b81520190565b519020036109f65761098d61097a611f03565b6020815191012063ffffffff60e01b1690565b916040602082015191015191604051938452600484015260406024840152603360448401526064830152608482015260c08160a4815f6108005af290805191610100606083015192016040521561016f576109e6610683565b906060825260208201529061088b565b60405162461bcd60e51b815260206004820152601060248201526f696e76616c69642063616c6c7479706560801b6044820152606490fd5b3461016f57606036600319011261016f576004356001600160401b03811161016f57610a5e903690600401610711565b602435906044356001600160401b03811161016f57610a81903690600401610711565b91610a8a612a62565b604051630fb6accf60e21b602082019081529093610abf85610ab1858730602485016120bd565b03601f1981018752866102c0565b604051610ad4816108166020820180956119e6565b51902093610aea610ae4426120fb565b60070b90565b6040516b19195b1959d85d1958d85b1b60a21b6020820190815290610b1281602c8101610816565b5190208603610b515750610b4f94505f610b4992819251906108005af4610b3a610874611f3e565b6020808251830101910161210b565b91612b54565b005b604051691cdd185d1a58d8d85b1b60b21b6020820190815290610b7781602a8101610816565b5190208603610b9f5750610b4f94505f610b4992819251906108005afa610b3a6108e5611f3e565b6040516318d85b1b60e21b6020820190815290610bbf8160248101610816565b5190208603610be85750610b4f94505f610b499281925190826108005af1610b3a610937611f3e565b93946040516020810190610c0f81610816846008906763616c6c636f646560c01b81520190565b519020036109f6575f9182915190826108005af21561016f57610b4f92612b54565b3461016f57604036600319011261016f576004356001600160401b03811161016f57610c61903690600401610711565b602435610c6e8183612cc3565b610c76612a62565b604051630fb6accf60e21b81529060208280610c97848730600485016120bd565b03815f6108005af191821561067e575f92610cfe575b505f8260070b1315610cc257610b4f92612b54565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d2191925060203d602011610d28575b610d1981836102c0565b81019061210b565b905f610cad565b503d610d0f565b606036600319011261016f57610d43610159565b6024356001600160401b03811161016f575f80610d67610db4933690600401610711565b93604435610d73612a62565b60405163a9059cbb60e01b6020820190815233602483015260448201929092528390610da28160648101610816565b51925af1610dae611f3e565b5061211f565b6040516353266bbb60e01b81529060208280610dd5348530600485016120bd565b03815f6108005af191821561067e57610b4f92610df9915f91610e01575b50612172565b349033612d59565b610e23915060203d602011610e29575b610e1b81836102c0565b81019061215d565b5f610df3565b503d610e11565b90604060031983011261016f576004356001600160a01b038116810361016f5791602435906001600160401b03821161016f576104d091600401610711565b90602082526040610ea4610e8f8351606060208701526080860190610381565b6020840151858203601f190184870152610381565b910151916060601f1982840301910152602080835192838152019201905f5b818110610ed05750505090565b909192602060c060019260a08751805160070b83528481015160070b8584015260408101516040840152606081015160608401526001600160401b036080820151166080840152015160070b60a08201520194019101919091610ec3565b3461016f57610f775f610f4036610e30565b90606060408051610f5081610254565b82815260208101839052015260405163a03ffee160e01b8152938492839260048401611ee1565b03816108005afa801561067e575f90610f9b575b6104429060405191829182610e6f565b503d805f833e610fab81836102c0565b81019060208183031261016f578051906001600160401b03821161016f570160608183031261016f5760405190610fe182610254565b80516001600160401b03811161016f5783610ffd918301611ca5565b825260208101516001600160401b03811161016f578361101e918301611ca5565b60208301526040810151906001600160401b03821161016f57019180601f8401121561016f57825192611050846121b0565b9161105e60405193846102c0565b848352602060c081850196028301019181831161016f57602001945b8286106110935750505061044292506040820152610f8b565b60c08683031261016f57602060c0916040516110ae8161026f565b6110b789611d9b565b81526110c4838a01611d9b565b83820152604089015160408201526060890151606082015260808901516110ea81611a3a565b60808201526110fb60a08a01611d9b565b60a082015281520195019461107a565b602060031982011261016f57600435906001600160401b03821161016f576104d091600401610711565b61113e3661110b565b611146612a62565b6040516353266bbb60e01b81529060208280611167348530600485016120bd565b03815f6108005af191821561067e5761118a92610df9915f91610e015750612172565b5f34156111a3575b5f8080809334903390f11561067e57005b506108fc611192565b6111b53661110b565b610db4612a62565b60606111fc6111ea6111d88451608087526080870190610381565b60208501518682036020880152610381565b60408401518582036040870152610381565b910151916060818303910152602080835192838152019201905f5b8181106112245750505090565b909192602060808261125d600194885160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b019401929101611217565b9060206104d09281815201906111bd565b3461016f576112e15f6112f361128e3661072c565b6060806040959395516112a08161028a565b81815281602082015281604082015201526040519586948594631f67e4e760e21b865260018060a01b03166004860152606060248601526064850190610381565b83810360031901604485015290610381565b03816108005afa801561067e57610442915f91611318575b5060405191829182611268565b61133491503d805f833e61132c81836102c0565b810190612319565b5f61130b565b3461016f575f36600319011261016f576020600254604051908152f35b908160a091031261016f5790565b3461016f5761010036600319011261016f576004356001600160401b03811161016f57611396903690600401611357565b606036602319011261016f576084356113ad610173565b9160c435916001600160401b03831161016f57610442936113d56113df943690600401610711565b9160e43593612424565b60405190151581529081906020820190565b3461016f57606036600319011261016f576004356001600160401b03811161016f57611421903690600401610711565b60243560443561142f612a62565b5f915f5b335f52600160205260405f205481101561153157335f90815260016020526040902061146590829061019f565b61019f565b5061148686611473836102e1565b6020815191012090602081519101201490565b9081611518575b5061149a57600101611433565b50915060208282946114b16001805b151514612d93565b6114d0604051968793849363096ac6ff60e11b855230600486016124ca565b03815f6108005af192831561067e57610b4f936114f4915f916114f9575b506124fd565b612e45565b611512915060203d602011610e2957610e1b81836102c0565b5f6114ee565b60030154611529915060070b610ae4565b42105f61148d565b50918282946114b160016020946114a9565b3461016f57608036600319011261016f576004356001600160401b03811161016f57611573903690600401611357565b60206115ab611580610189565b9260443593606435604051632943c16b60e21b8152608060048201529586948594608486019061238f565b6001600160a01b0390931660248501526044840152606483015203815f6108005af1801561067e57610442915f916115f1575b5060405190151581529081906020820190565b61160a915060203d602011610e2957610e1b81836102c0565b5f6115de565b9060206001600160401b038161162f8551604086526040860190610381565b9401511691015290565b929160408401936040815282518095526060810194602060608260051b8401019401905f5b81811061167b575050506104d09394506020818403910152611610565b909194602080611697600193605f19888203018c5289516104d3565b9701980191019691909661165e565b3461016f57604036600319011261016f576004356001600160401b03811161016f576116d6903690600401610711565b6024356001600160401b03811161016f576117266116f95f923690600401611357565b92611702611ec8565b50604051938492839263186b216760e01b8452604060048501526044840190610381565b828103600319016024840152608080611750611742858061233e565b60a0865260a086019161236f565b936001600160401b03602082013561176781611a3a565b1660208501526001600160401b03604082013561178381611a3a565b166040850152606081013561179781611a56565b1515606085015201356117a981611a56565b151591015203816108005afa90811561067e575f905f926117d5575b5061044260405192839283611639565b90506117f391503d805f833e6117eb81836102c0565b8101906125a8565b905f6117c5565b3461016f57606036600319011261016f576004356001600160401b03811161016f5761182a903690600401610711565b6024356001600160401b03811161016f57611849903690600401610711565b604435906118578284612cc3565b6040516354b826f560e01b815230600482015260806024820152602081806118976118856084830189610381565b82810360031901604484015286610381565b86606483015203815f6108005af190811561067e57610b4f946118cb5f6118d194879482916118d7575b5060070b1361265e565b33612ebd565b33612d59565b6118f0915060203d602011610d2857610d1981836102c0565b5f6118c1565b6118ff3661110b565b611907612a62565b6040516353266bbb60e01b81529060208280611928348530600485016120bd565b03815f6108005af191821561067e5761194b92610df9915f91610e015750612172565b6002546001810180911161195e57600255005b6120e7565b3461016f5761199a5f61197536610e30565b9061197e611ec8565b5060405163120bba7360e11b8152938492839260048401611ee1565b03816108005afa90811561067e575f905f926119c1575b5061044260405192839283610789565b90506119df91503d805f833e6119d781836102c0565b810190611fb5565b905f6119b1565b805191908290602001825e015f815290565b3461016f576020611a2a81611a0c36610e30565b9060018060a01b03165f525f825260405f20604051938480936119e6565b9081520301902054604051908152f35b6001600160401b0381160361016f57565b359061031982611a3a565b8015150361016f57565b359061031982611a56565b9291604084016040855282518091526060850190602060608260051b8801019401915f905b828210611aad57505050508360206104d094958403910152611610565b90919294605f1988820301825285516020611ad182516040855260408501906111bd565b91015182820360209384015280518083529183019201905f905b808210611b0957505050602080600192970192019201909291611a90565b909192602060a0600192828751611b4583825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920190611aeb565b3461016f57608036600319011261016f57611b70610159565b6024356001600160401b03811161016f57611b8f903690600401610711565b906044356001600160401b03811161016f57611baf903690600401610711565b606435926001600160401b03841161016f5760a0600319853603011261016f5760405192611bdc84610239565b84600401356001600160401b03811161016f578501943660238701121561016f576084611c5591611c1a611c5f9836906024600482013591016106db565b8752611c2860248201611a4b565b6020880152611c3960448201611a4b565b6040880152611c4a60648201611a60565b606088015201611a60565b6080850152612831565b9061044260405192839283611a6b565b929192611c7b826106c0565b91611c8960405193846102c0565b82948184528183011161016f578281602093845f96015e010152565b9080601f8301121561016f5781516104d092602001611c6f565b519061031982611a56565b5190600482101561016f57565b91909160a08184031261016f57611cec610692565b9281516001600160401b03811161016f5781611d09918401611ca5565b845260208201516001600160401b03811161016f5781611d2a918401611ca5565b602085015260408201516001600160401b03811161016f5781611d4e918401611ca5565b604085015260608201516001600160401b03811161016f5781611d72918401611ca5565b606085015260808201516001600160401b03811161016f57611d949201611ca5565b6080830152565b51908160070b820361016f57565b91906101608382031261016f57611dbe6106a1565b9280516001600160401b03811161016f5782611ddb918301611ca5565b845260208101516001600160401b03811161016f5782611dfc918301611ca5565b6020850152611e0d60408201611cbf565b6040850152611e1e60608201611cca565b60608501526080810151608085015260a081015160a085015260c08101516001600160401b03811161016f5761014092611e59918301611cd7565b60c0850152611e6a60e08201611d9b565b60e0850152611e7c6101008201611d9b565b6101008501526101208101516101208501520151610140830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201611da9565b6040513d5f823e3d90fd5b60405190611ed5826102a5565b5f602083606081520152565b6001600160a01b0390911681526040602082018190526104d092910190610381565b60405190611f126040836102c0565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b3d15611f68573d90611f4f826106c0565b91611f5d60405193846102c0565b82523d5f602084013e565b606090565b15611f7457565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b919060408382031261016f578251926020810151906001600160401b03821161016f57019060408282031261016f5760405191611ff1836102a5565b80516001600160401b03811161016f5760209261200f918301611ca5565b83520151602082015290565b1561202257565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b1561206e57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b9392916120e29060409260018060a01b03168652606060208701526060860190610381565b930152565b634e487b7160e01b5f52601160045260245ffd5b90621baf80820180921161195e57565b9081602091031261016f576104d090611d9b565b1561212657565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b9081602091031261016f57516104d081611a56565b1561217957565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b6001600160401b0381116102345760051b60200190565b919082608091031261016f576040516121df8161028a565b60608082946121ed81611d9b565b84526121fb60208201611d9b565b6020850152604081015160408501520151910152565b81601f8201121561016f578051612227816121b0565b9261223560405194856102c0565b81845260208085019260071b8401019281841161016f57602001915b83831061225f575050505090565b602060809161226e84866121c7565b815201920191612251565b91909160808184031261016f5761228e6106b1565b9281516001600160401b03811161016f57816122ab918401611ca5565b845260208201516001600160401b03811161016f57816122cc918401611ca5565b602085015260408201516001600160401b03811161016f57816122f0918401611ca5565b604085015260608201516001600160401b03811161016f576123129201612211565b6060830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201612279565b9035601e198236030181121561016f5701602081359101916001600160401b03821161016f57813603831361016f57565b908060209392818452848401375f828201840152601f01601f1916010190565b6104d09161241661240b6123f06123d56123ba6123ac878061233e565b60a0885260a088019161236f565b6123c7602088018861233e565b90878303602089015261236f565b6123e2604087018761233e565b90868303604088015261236f565b6123fd606086018661233e565b90858303606087015261236f565b92608081019061233e565b91608081850391015261236f565b909361249261245693956020956040519788968796637be6aa8b60e11b8852610100600489015261010488019061238f565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c4860152610381565b9060e483015203815f6108005af190811561067e575f916124b1575090565b6104d0915060203d602011610e2957610e1b81836102c0565b6001600160a01b039091168152608060208201819052929493926060926124f391830190610381565b9460408201520152565b1561250457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b91909160408184031261016f5760405190612563826102a5565b819381516001600160401b03811161016f5782019181601f8401121561016f576125966020939283858095519101611c6f565b84520151916125a483611a3a565b0152565b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f5780516125dd816121b0565b916125eb60405193846102c0565b81835260208084019260051b8201019186831161016f5760208201905b83821061263157505050509260208201516001600160401b03811161016f576104d09201612549565b81516001600160401b03811161016f576020916126538a848094880101611da9565b815201910190612608565b1561266557565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f578051906126d7826121b0565b916126e560405193846102c0565b80835260208084019160051b8301019186831161016f5760208101915b83831061272b57505050509260208201516001600160401b03811161016f576104d09201612549565b82516001600160401b03811161016f5782016040818a03601f19011261016f5760405190612758826102a5565b60208101516001600160401b03811161016f578a602061277a92840101612279565b825260408101516001600160401b03811161016f57602091010189601f8201121561016f5780516127aa816121b0565b916127b860405193846102c0565b818352602060a08185019302820101908c821161016f57602001915b8c8284106127f5575050505091816020938480940152815201920191612702565b8360a091031261016f57602060a0918e61281b60405191612815836102a5565b876121c7565b81526080860151838201528152019201916127d4565b61287a949361288c5f94612843611ec8565b50604051630428a14760e21b81526001600160a01b0390941660048501526080602485015292968794859491906084860190610381565b84810360031901604486015290610381565b6003198382030160648401526080806128ae845160a0855260a0850190610381565b936001600160401b0360208201511660208501526001600160401b0360408201511660408501526060810151151560608501520151151591015203816108005afa91821561067e575f905f9361290357509190565b90506129229192503d805f833e61291a81836102c0565b8101906126a1565b9091565b818110612931575050565b5f8155600101612926565b634e487b7160e01b5f525f60045260245ffd5b906129cb576003816129625f93546101cc565b80612979575b508260018201558260028201550155565b601f811160011461298f57508281555b5f612968565b818452602084206129ab91601f0160051c810190600101612926565b808352826020812080548260011b90831984871b1c191617835555612989565b61293c565b9060405180925f908054906129e4826101cc565b9160018116908115612a3d5750600114612a07575b505060209281520301902090565b9091505f5260205f205f905b828210612a26575050810160205f6129f9565b805482870152859350602090910190600101612a13565b60ff191685525050801515028201905060205f6129f9565b9190820391821161195e57565b5f5b335f52600160205260405f2054811015612b0e5780612a996001926114603360018060a01b03165f52600160205260405f2090565b50600381015460070b421015612ab1575b5001612a64565b335f908152600160205260409020612ad490612ace90849061019f565b9061294f565b612b06612afe8483015492612af83360018060a01b03165f525f60205260405f2090565b906129d0565b918254612a55565b90555f612aaa565b50565b9190601f8111612b2057505050565b610319925f5260205f20906020601f840160051c83019310612b4a575b601f0160051c0190612926565b9091508190612b3d565b909291335f52600160205260405f2060405192612b708461028a565b8352602083019485526040830190438252606084019260070b83528054600160401b81101561023457612ba89160018201815561019f565b9390936129cb57519485516001600160401b03811161023457612bd581612bcf87546101cc565b87612b11565b6020601f8211600114612c4f5791612c1082612c269593600397956103199a9b5f92612c44575b50508160011b915f199060031b1c19161790565b86555b5160018601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b015190505f80612bfc565b601f19821697612c62875f5260205f2090565b985f5b818110612cab5750926103199899600397959360019383612c26999710612c94575b505050811b018655612c13565b01515f19838a1b60f8161c191690555f8080612c87565b838301518b556001909a019960209384019301612c65565b6020612cdf91335f525f825260405f20604051938480936119e6565b908152030190205410612cee57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b612d7d9160209160018060a01b03165f525f825260405f20604051938480936119e6565b90815203019020805491820180921161195e5755565b15612d9a57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b15612df257565b60405162461bcd60e51b815260206004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152608490fd5b90335f52600160205260405f20905f925b8254841015612eb757612e69848461019f565b509080600283015403612eab57506001612e929101918254612e8d82821015612deb565b612a55565b81555415612e9e575050565b61031991612ace9161019f565b93600191500192612e56565b50505050565b9060018060a01b0382165f525f6020528260405f2060206040518092612ee382876119e6565b908152030190205410612f31576020612f1e91612f12612f2d9460018060a01b03165f525f60205260405f2090565b604051938480936119e6565b90815203019020918254612a55565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fdfea2646970667358221220a73484ad36ae0caeba229671c9989ffd65f1561501c82c607df72071a438e91b64736f6c634300081c0033c2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063088b32b1146101545780631904bb2e1461014f57806319b16c4c1461014a5780632345e7d41461014557806329e71c821461014057806331bcbcb31461013b578063455b855114610136578063464d2d0314610131578063569c21e31461012c578063570467ac1461012757806361bc221a1461012257806368ac3df31461011d578063a4603a2e14610118578063af9a90b214610113578063b13d42421461010e578063b3e9823414610109578063b61b519714610104578063cf2753cf146100ff578063ddbaf2c2146100fa5763f732b065146100f5575f80fd5b611b57565b6119f8565b611963565b6118f6565b6117fa565b6116a6565b611543565b6113f1565b611365565b61133a565b611279565b6111ac565b611135565b610f2e565b610d2f565b610c31565b610a2e565b6107b5565b610578565b6103d0565b600435906001600160a01b038216820361016f57565b5f80fd5b60a435906001600160a01b038216820361016f57565b602435906001600160a01b038216820361016f57565b80548210156101b8575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b90600182811c921680156101fa575b60208310146101e657565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101db565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b0382111761023457604052565b610204565b60a081019081106001600160401b0382111761023457604052565b606081019081106001600160401b0382111761023457604052565b60c081019081106001600160401b0382111761023457604052565b608081019081106001600160401b0382111761023457604052565b604081019081106001600160401b0382111761023457604052565b90601f801991011681019081106001600160401b0382111761023457604052565b9060405191825f8254926102f4846101cc565b808452936001811690811561035f575060011461031b575b50610319925003836102c0565b565b90505f9291925260205f20905f915b818310610343575050906020610319928201015f61030c565b602091935080600191548385890101520191019091849261032a565b90506020925061031994915060ff191682840152151560051b8201015f61030c565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b926103bd606093969592608086526080860190610381565b956020850152604084015260070b910152565b3461016f57604036600319011261016f576103e9610159565b6001600160a01b03165f90815260016020526040902080546024359081101561016f576104159161019f565b5061041f816102e1565b6104426001830154926003600282015491015460070b90604051948594856103a5565b0390f35b9060048210156104535752565b634e487b7160e01b5f52602160045260245ffd5b6104d09160806104bf6104ad61049b610489865160a0875260a0870190610381565b60208701518682036020880152610381565b60408601518582036040870152610381565b60608501518482036060860152610381565b920151906080818403910152610381565b90565b90610140806105376104f361048986516101608752610160870190610381565b60408681015115159086015261051160608701516060870190610446565b6080860151608086015260a086015160a086015260c086015185820360c0870152610467565b60e08086015160070b90850152936101008181015160070b90850152610120810151610120850152015191015290565b9060206104d09281815201906104d3565b3461016f57602036600319011261016f576106375f610595610159565b816101406040516105a581610218565b60608152606060208201528260408201528260608201528260808201528260a08201526040516105d481610239565b6060815260606020820152606060408201526060808201526060608082015260c08201528260e0820152826101008201528261012082015201526040518093819263111d9dbd60e11b835260048301919091602081019260018060a01b03169052565b03816108005afa801561067e57610442915f9161065c575b5060405191829182610567565b61067891503d805f833e61067081836102c0565b810190611e98565b5f61064f565b611ebd565b604051906103196040836102c0565b6040519061031960a0836102c0565b60405190610319610160836102c0565b604051906103196080836102c0565b6001600160401b03811161023457601f01601f191660200190565b9291926106e7826106c0565b916106f560405193846102c0565b82948184528183011161016f578281602093845f960137010152565b9080601f8301121561016f578160206104d0933591016106db565b606060031982011261016f576004356001600160a01b038116810361016f57916024356001600160401b03811161016f578261076a91600401610711565b91604435906001600160401b03821161016f576104d091600401610711565b90815260406020820152606060206107ac84516040808601526080850190610381565b93015191015290565b3461016f576107c33661072c565b91906107cd611ec8565b5060405191602083019363120bba7360e11b8552610801846107f3858560248401611ee1565b03601f1981018652856102c0565b604051610824816108166020820180956119e6565b03601f1981018352826102c0565b5190206040516b19195b1959d85d1958d85b1b60a21b602082019081529061084f81602c8101610816565b519020810361089a575050505f61088992819251906108005af461087a610874611f3e565b91612067565b60208082518301019101611fb5565b905b61044260405192839283610789565b604051691cdd185d1a58d8d85b1b60b21b60208201908152906108c081602a8101610816565b51902081036108f1575050505f6108eb92819251906108005afa61087a6108e5611f3e565b9161201b565b9061088b565b6040516318d85b1b60e21b60208201908152906109118160248101610816565b519020810361093d575050505f6108eb9281925190826108005af161087a610937611f3e565b91611f6d565b9193509150604051602081019061096781610816846008906763616c6c636f646560c01b81520190565b519020036109f65761098d61097a611f03565b6020815191012063ffffffff60e01b1690565b916040602082015191015191604051938452600484015260406024840152603360448401526064830152608482015260c08160a4815f6108005af290805191610100606083015192016040521561016f576109e6610683565b906060825260208201529061088b565b60405162461bcd60e51b815260206004820152601060248201526f696e76616c69642063616c6c7479706560801b6044820152606490fd5b3461016f57606036600319011261016f576004356001600160401b03811161016f57610a5e903690600401610711565b602435906044356001600160401b03811161016f57610a81903690600401610711565b91610a8a612a62565b604051630fb6accf60e21b602082019081529093610abf85610ab1858730602485016120bd565b03601f1981018752866102c0565b604051610ad4816108166020820180956119e6565b51902093610aea610ae4426120fb565b60070b90565b6040516b19195b1959d85d1958d85b1b60a21b6020820190815290610b1281602c8101610816565b5190208603610b515750610b4f94505f610b4992819251906108005af4610b3a610874611f3e565b6020808251830101910161210b565b91612b54565b005b604051691cdd185d1a58d8d85b1b60b21b6020820190815290610b7781602a8101610816565b5190208603610b9f5750610b4f94505f610b4992819251906108005afa610b3a6108e5611f3e565b6040516318d85b1b60e21b6020820190815290610bbf8160248101610816565b5190208603610be85750610b4f94505f610b499281925190826108005af1610b3a610937611f3e565b93946040516020810190610c0f81610816846008906763616c6c636f646560c01b81520190565b519020036109f6575f9182915190826108005af21561016f57610b4f92612b54565b3461016f57604036600319011261016f576004356001600160401b03811161016f57610c61903690600401610711565b602435610c6e8183612cc3565b610c76612a62565b604051630fb6accf60e21b81529060208280610c97848730600485016120bd565b03815f6108005af191821561067e575f92610cfe575b505f8260070b1315610cc257610b4f92612b54565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20756e64656c656761746560601b6044820152606490fd5b610d2191925060203d602011610d28575b610d1981836102c0565b81019061210b565b905f610cad565b503d610d0f565b606036600319011261016f57610d43610159565b6024356001600160401b03811161016f575f80610d67610db4933690600401610711565b93604435610d73612a62565b60405163a9059cbb60e01b6020820190815233602483015260448201929092528390610da28160648101610816565b51925af1610dae611f3e565b5061211f565b6040516353266bbb60e01b81529060208280610dd5348530600485016120bd565b03815f6108005af191821561067e57610b4f92610df9915f91610e01575b50612172565b349033612d59565b610e23915060203d602011610e29575b610e1b81836102c0565b81019061215d565b5f610df3565b503d610e11565b90604060031983011261016f576004356001600160a01b038116810361016f5791602435906001600160401b03821161016f576104d091600401610711565b90602082526040610ea4610e8f8351606060208701526080860190610381565b6020840151858203601f190184870152610381565b910151916060601f1982840301910152602080835192838152019201905f5b818110610ed05750505090565b909192602060c060019260a08751805160070b83528481015160070b8584015260408101516040840152606081015160608401526001600160401b036080820151166080840152015160070b60a08201520194019101919091610ec3565b3461016f57610f775f610f4036610e30565b90606060408051610f5081610254565b82815260208101839052015260405163a03ffee160e01b8152938492839260048401611ee1565b03816108005afa801561067e575f90610f9b575b6104429060405191829182610e6f565b503d805f833e610fab81836102c0565b81019060208183031261016f578051906001600160401b03821161016f570160608183031261016f5760405190610fe182610254565b80516001600160401b03811161016f5783610ffd918301611ca5565b825260208101516001600160401b03811161016f578361101e918301611ca5565b60208301526040810151906001600160401b03821161016f57019180601f8401121561016f57825192611050846121b0565b9161105e60405193846102c0565b848352602060c081850196028301019181831161016f57602001945b8286106110935750505061044292506040820152610f8b565b60c08683031261016f57602060c0916040516110ae8161026f565b6110b789611d9b565b81526110c4838a01611d9b565b83820152604089015160408201526060890151606082015260808901516110ea81611a3a565b60808201526110fb60a08a01611d9b565b60a082015281520195019461107a565b602060031982011261016f57600435906001600160401b03821161016f576104d091600401610711565b61113e3661110b565b611146612a62565b6040516353266bbb60e01b81529060208280611167348530600485016120bd565b03815f6108005af191821561067e5761118a92610df9915f91610e015750612172565b5f34156111a3575b5f8080809334903390f11561067e57005b506108fc611192565b6111b53661110b565b610db4612a62565b60606111fc6111ea6111d88451608087526080870190610381565b60208501518682036020880152610381565b60408401518582036040870152610381565b910151916060818303910152602080835192838152019201905f5b8181106112245750505090565b909192602060808261125d600194885160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b019401929101611217565b9060206104d09281815201906111bd565b3461016f576112e15f6112f361128e3661072c565b6060806040959395516112a08161028a565b81815281602082015281604082015201526040519586948594631f67e4e760e21b865260018060a01b03166004860152606060248601526064850190610381565b83810360031901604485015290610381565b03816108005afa801561067e57610442915f91611318575b5060405191829182611268565b61133491503d805f833e61132c81836102c0565b810190612319565b5f61130b565b3461016f575f36600319011261016f576020600254604051908152f35b908160a091031261016f5790565b3461016f5761010036600319011261016f576004356001600160401b03811161016f57611396903690600401611357565b606036602319011261016f576084356113ad610173565b9160c435916001600160401b03831161016f57610442936113d56113df943690600401610711565b9160e43593612424565b60405190151581529081906020820190565b3461016f57606036600319011261016f576004356001600160401b03811161016f57611421903690600401610711565b60243560443561142f612a62565b5f915f5b335f52600160205260405f205481101561153157335f90815260016020526040902061146590829061019f565b61019f565b5061148686611473836102e1565b6020815191012090602081519101201490565b9081611518575b5061149a57600101611433565b50915060208282946114b16001805b151514612d93565b6114d0604051968793849363096ac6ff60e11b855230600486016124ca565b03815f6108005af192831561067e57610b4f936114f4915f916114f9575b506124fd565b612e45565b611512915060203d602011610e2957610e1b81836102c0565b5f6114ee565b60030154611529915060070b610ae4565b42105f61148d565b50918282946114b160016020946114a9565b3461016f57608036600319011261016f576004356001600160401b03811161016f57611573903690600401611357565b60206115ab611580610189565b9260443593606435604051632943c16b60e21b8152608060048201529586948594608486019061238f565b6001600160a01b0390931660248501526044840152606483015203815f6108005af1801561067e57610442915f916115f1575b5060405190151581529081906020820190565b61160a915060203d602011610e2957610e1b81836102c0565b5f6115de565b9060206001600160401b038161162f8551604086526040860190610381565b9401511691015290565b929160408401936040815282518095526060810194602060608260051b8401019401905f5b81811061167b575050506104d09394506020818403910152611610565b909194602080611697600193605f19888203018c5289516104d3565b9701980191019691909661165e565b3461016f57604036600319011261016f576004356001600160401b03811161016f576116d6903690600401610711565b6024356001600160401b03811161016f576117266116f95f923690600401611357565b92611702611ec8565b50604051938492839263186b216760e01b8452604060048501526044840190610381565b828103600319016024840152608080611750611742858061233e565b60a0865260a086019161236f565b936001600160401b03602082013561176781611a3a565b1660208501526001600160401b03604082013561178381611a3a565b166040850152606081013561179781611a56565b1515606085015201356117a981611a56565b151591015203816108005afa90811561067e575f905f926117d5575b5061044260405192839283611639565b90506117f391503d805f833e6117eb81836102c0565b8101906125a8565b905f6117c5565b3461016f57606036600319011261016f576004356001600160401b03811161016f5761182a903690600401610711565b6024356001600160401b03811161016f57611849903690600401610711565b604435906118578284612cc3565b6040516354b826f560e01b815230600482015260806024820152602081806118976118856084830189610381565b82810360031901604484015286610381565b86606483015203815f6108005af190811561067e57610b4f946118cb5f6118d194879482916118d7575b5060070b1361265e565b33612ebd565b33612d59565b6118f0915060203d602011610d2857610d1981836102c0565b5f6118c1565b6118ff3661110b565b611907612a62565b6040516353266bbb60e01b81529060208280611928348530600485016120bd565b03815f6108005af191821561067e5761194b92610df9915f91610e015750612172565b6002546001810180911161195e57600255005b6120e7565b3461016f5761199a5f61197536610e30565b9061197e611ec8565b5060405163120bba7360e11b8152938492839260048401611ee1565b03816108005afa90811561067e575f905f926119c1575b5061044260405192839283610789565b90506119df91503d805f833e6119d781836102c0565b810190611fb5565b905f6119b1565b805191908290602001825e015f815290565b3461016f576020611a2a81611a0c36610e30565b9060018060a01b03165f525f825260405f20604051938480936119e6565b9081520301902054604051908152f35b6001600160401b0381160361016f57565b359061031982611a3a565b8015150361016f57565b359061031982611a56565b9291604084016040855282518091526060850190602060608260051b8801019401915f905b828210611aad57505050508360206104d094958403910152611610565b90919294605f1988820301825285516020611ad182516040855260408501906111bd565b91015182820360209384015280518083529183019201905f905b808210611b0957505050602080600192970192019201909291611a90565b909192602060a0600192828751611b4583825160608091805160070b8452602081015160070b6020850152604081015160408501520151910152565b01516080820152019401920190611aeb565b3461016f57608036600319011261016f57611b70610159565b6024356001600160401b03811161016f57611b8f903690600401610711565b906044356001600160401b03811161016f57611baf903690600401610711565b606435926001600160401b03841161016f5760a0600319853603011261016f5760405192611bdc84610239565b84600401356001600160401b03811161016f578501943660238701121561016f576084611c5591611c1a611c5f9836906024600482013591016106db565b8752611c2860248201611a4b565b6020880152611c3960448201611a4b565b6040880152611c4a60648201611a60565b606088015201611a60565b6080850152612831565b9061044260405192839283611a6b565b929192611c7b826106c0565b91611c8960405193846102c0565b82948184528183011161016f578281602093845f96015e010152565b9080601f8301121561016f5781516104d092602001611c6f565b519061031982611a56565b5190600482101561016f57565b91909160a08184031261016f57611cec610692565b9281516001600160401b03811161016f5781611d09918401611ca5565b845260208201516001600160401b03811161016f5781611d2a918401611ca5565b602085015260408201516001600160401b03811161016f5781611d4e918401611ca5565b604085015260608201516001600160401b03811161016f5781611d72918401611ca5565b606085015260808201516001600160401b03811161016f57611d949201611ca5565b6080830152565b51908160070b820361016f57565b91906101608382031261016f57611dbe6106a1565b9280516001600160401b03811161016f5782611ddb918301611ca5565b845260208101516001600160401b03811161016f5782611dfc918301611ca5565b6020850152611e0d60408201611cbf565b6040850152611e1e60608201611cca565b60608501526080810151608085015260a081015160a085015260c08101516001600160401b03811161016f5761014092611e59918301611cd7565b60c0850152611e6a60e08201611d9b565b60e0850152611e7c6101008201611d9b565b6101008501526101208101516101208501520151610140830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201611da9565b6040513d5f823e3d90fd5b60405190611ed5826102a5565b5f602083606081520152565b6001600160a01b0390911681526040602082018190526104d092910190610381565b60405190611f126040836102c0565b601a82527f64656c65676174696f6e28616464726573732c737472696e67290000000000006020830152565b3d15611f68573d90611f4f826106c0565b91611f5d60405193846102c0565b82523d5f602084013e565b606090565b15611f7457565b60405162461bcd60e51b81526020600482015260196024820152786661696c65642063616c6c20746f20707265636f6d70696c6560381b6044820152606490fd5b919060408382031261016f578251926020810151906001600160401b03821161016f57019060408282031261016f5760405191611ff1836102a5565b80516001600160401b03811161016f5760209261200f918301611ca5565b83520151602082015290565b1561202257565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696363616c6c20746f20707265636f6d70696c65006044820152606490fd5b1561206e57565b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746563616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b9392916120e29060409260018060a01b03168652606060208701526060860190610381565b930152565b634e487b7160e01b5f52601160045260245ffd5b90621baf80820180921161195e57565b9081602091031261016f576104d090611d9b565b1561212657565b60405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b9081602091031261016f57516104d081611a56565b1561217957565b60405162461bcd60e51b815260206004820152600f60248201526e19195b1959d85d194819985a5b1959608a1b6044820152606490fd5b6001600160401b0381116102345760051b60200190565b919082608091031261016f576040516121df8161028a565b60608082946121ed81611d9b565b84526121fb60208201611d9b565b6020850152604081015160408501520151910152565b81601f8201121561016f578051612227816121b0565b9261223560405194856102c0565b81845260208085019260071b8401019281841161016f57602001915b83831061225f575050505090565b602060809161226e84866121c7565b815201920191612251565b91909160808184031261016f5761228e6106b1565b9281516001600160401b03811161016f57816122ab918401611ca5565b845260208201516001600160401b03811161016f57816122cc918401611ca5565b602085015260408201516001600160401b03811161016f57816122f0918401611ca5565b604085015260608201516001600160401b03811161016f576123129201612211565b6060830152565b9060208282031261016f5781516001600160401b03811161016f576104d09201612279565b9035601e198236030181121561016f5701602081359101916001600160401b03821161016f57813603831361016f57565b908060209392818452848401375f828201840152601f01601f1916010190565b6104d09161241661240b6123f06123d56123ba6123ac878061233e565b60a0885260a088019161236f565b6123c7602088018861233e565b90878303602089015261236f565b6123e2604087018761233e565b90868303604088015261236f565b6123fd606086018661233e565b90858303606087015261236f565b92608081019061233e565b91608081850391015261236f565b909361249261245693956020956040519788968796637be6aa8b60e11b8852610100600489015261010488019061238f565b92602435602488015260443560448801526064356064880152608487015260018060a01b031660a48601526003198583030160c4860152610381565b9060e483015203815f6108005af190811561067e575f916124b1575090565b6104d0915060203d602011610e2957610e1b81836102c0565b6001600160a01b039091168152608060208201819052929493926060926124f391830190610381565b9460408201520152565b1561250457565b60405162461bcd60e51b815260206004820152601a60248201527f4661696c656420746f2063616e63656c20756e626f6e64696e670000000000006044820152606490fd5b91909160408184031261016f5760405190612563826102a5565b819381516001600160401b03811161016f5782019181601f8401121561016f576125966020939283858095519101611c6f565b84520151916125a483611a3a565b0152565b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f5780516125dd816121b0565b916125eb60405193846102c0565b81835260208084019260051b8201019186831161016f5760208201905b83821061263157505050509260208201516001600160401b03811161016f576104d09201612549565b81516001600160401b03811161016f576020916126538a848094880101611da9565b815201910190612608565b1561266557565b60405162461bcd60e51b81526020600482015260146024820152734661696c656420746f20726564656c656761746560601b6044820152606490fd5b91909160408184031261016f5780516001600160401b03811161016f57810183601f8201121561016f578051906126d7826121b0565b916126e560405193846102c0565b80835260208084019160051b8301019186831161016f5760208101915b83831061272b57505050509260208201516001600160401b03811161016f576104d09201612549565b82516001600160401b03811161016f5782016040818a03601f19011261016f5760405190612758826102a5565b60208101516001600160401b03811161016f578a602061277a92840101612279565b825260408101516001600160401b03811161016f57602091010189601f8201121561016f5780516127aa816121b0565b916127b860405193846102c0565b818352602060a08185019302820101908c821161016f57602001915b8c8284106127f5575050505091816020938480940152815201920191612702565b8360a091031261016f57602060a0918e61281b60405191612815836102a5565b876121c7565b81526080860151838201528152019201916127d4565b61287a949361288c5f94612843611ec8565b50604051630428a14760e21b81526001600160a01b0390941660048501526080602485015292968794859491906084860190610381565b84810360031901604486015290610381565b6003198382030160648401526080806128ae845160a0855260a0850190610381565b936001600160401b0360208201511660208501526001600160401b0360408201511660408501526060810151151560608501520151151591015203816108005afa91821561067e575f905f9361290357509190565b90506129229192503d805f833e61291a81836102c0565b8101906126a1565b9091565b818110612931575050565b5f8155600101612926565b634e487b7160e01b5f525f60045260245ffd5b906129cb576003816129625f93546101cc565b80612979575b508260018201558260028201550155565b601f811160011461298f57508281555b5f612968565b818452602084206129ab91601f0160051c810190600101612926565b808352826020812080548260011b90831984871b1c191617835555612989565b61293c565b9060405180925f908054906129e4826101cc565b9160018116908115612a3d5750600114612a07575b505060209281520301902090565b9091505f5260205f205f905b828210612a26575050810160205f6129f9565b805482870152859350602090910190600101612a13565b60ff191685525050801515028201905060205f6129f9565b9190820391821161195e57565b5f5b335f52600160205260405f2054811015612b0e5780612a996001926114603360018060a01b03165f52600160205260405f2090565b50600381015460070b421015612ab1575b5001612a64565b335f908152600160205260409020612ad490612ace90849061019f565b9061294f565b612b06612afe8483015492612af83360018060a01b03165f525f60205260405f2090565b906129d0565b918254612a55565b90555f612aaa565b50565b9190601f8111612b2057505050565b610319925f5260205f20906020601f840160051c83019310612b4a575b601f0160051c0190612926565b9091508190612b3d565b909291335f52600160205260405f2060405192612b708461028a565b8352602083019485526040830190438252606084019260070b83528054600160401b81101561023457612ba89160018201815561019f565b9390936129cb57519485516001600160401b03811161023457612bd581612bcf87546101cc565b87612b11565b6020601f8211600114612c4f5791612c1082612c269593600397956103199a9b5f92612c44575b50508160011b915f199060031b1c19161790565b86555b5160018601555160028501555160070b90565b9101906001600160401b0319825416906001600160401b0316179055565b015190505f80612bfc565b601f19821697612c62875f5260205f2090565b985f5b818110612cab5750926103199899600397959360019383612c26999710612c94575b505050811b018655612c13565b01515f19838a1b60f8161c191690555f8080612c87565b838301518b556001909a019960209384019301612c65565b6020612cdf91335f525f825260405f20604051938480936119e6565b908152030190205410612cee57565b60405162461bcd60e51b815260206004820152603b60248201527f44656c65676174696f6e20646f6573206e6f74206578697374206f7220696e7360448201527f756666696369656e742064656c65676174696f6e20616d6f756e7400000000006064820152608490fd5b612d7d9160209160018060a01b03165f525f825260405f20604051938480936119e6565b90815203019020805491820180921161195e5755565b15612d9a57565b60405162461bcd60e51b815260206004820152602360248201527f556e626f6e64696e672064656c65676174696f6e20646f6573206e6f742065786044820152621a5cdd60ea1b6064820152608490fd5b15612df257565b60405162461bcd60e51b815260206004820152602560248201527f616d6f756e74206578636565647320756e626f6e64696e6720656e74727920616044820152641b5bdd5b9d60da1b6064820152608490fd5b90335f52600160205260405f20905f925b8254841015612eb757612e69848461019f565b509080600283015403612eab57506001612e929101918254612e8d82821015612deb565b612a55565b81555415612e9e575050565b61031991612ace9161019f565b93600191500192612e56565b50505050565b9060018060a01b0382165f525f6020528260405f2060206040518092612ee382876119e6565b908152030190205410612f31576020612f1e91612f12612f2d9460018060a01b03165f525f60205260405f2090565b604051938480936119e6565b90815203019020918254612a55565b9055565b60405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e742064656c65676174696f6e20616d6f756e7400006044820152606490fdfea2646970667358221220a73484ad36ae0caeba229671c9989ffd65f1561501c82c607df72071a438e91b64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/staking/testdata/StakingCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/staking/testdata/StakingCallerTwo.json b/precompiles/staking/testdata/StakingCallerTwo.json index 97f47aeb2..9264c6ef5 100644 --- a/precompiles/staking/testdata/StakingCallerTwo.json +++ b/precompiles/staking/testdata/StakingCallerTwo.json @@ -184,11 +184,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234601557610874908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063241774e61461057557806361bc221a1461055957806366dafc7a14610403578063b9a6bbca1461019e5763c5b75f0114610050575f80fd5b606036600319011261019a576004356001600160401b03811161019a5761007b90369060040161064c565b60243590811515820361019a5760443591821515830361019a57610175575b6040516353266bbb60e01b815290602082806100bb34853060048501610775565b03815f6108005af190811561016a576100e06020939284935f9161013d575b5061079f565b335f526001825260405f20604051938285935191829101845e82019081520301902061010d3482546107e0565b905561011557005b61011f5f54610692565b5f5561013b5f808080600f335af16101356106b4565b506106e3565b005b61015d9150843d8611610163575b61015581836105fc565b810190610739565b5f6100da565b503d61014b565b6040513d5f823e3d90fd5b61017f5f54610692565b5f556101955f808080600f335af16101356106b4565b61009a565b5f80fd5b61012036600319011261019a576004356001600160401b03811161019a578060040160a0600319833603011261019a57606036602319011261019a5760a435916001600160a01b03831680840361019a5760c4356001600160401b03811161019a5761020e90369060040161064c565b60e43593841515850361019a576101043594851515860361019a576020936102f2938861033d936103e9575b506103066040519788968796637be6aa8b60e11b8852610100600489015260846102ea6102c96102a86102868c6101a461027488806107ed565b91909260a0610104820152019161081e565b8c61029460248a01886107ed565b91610124610103198286030191015261081e565b6102b560448801866107ed565b8d830361010319016101448f01529061081e565b6102d660648701856107ed565b8c830361010319016101648e01529061081e565b9301906107ed565b87830361010319016101848901529061081e565b91602435602486015260443560448601526064356064860152608435608486015260a48501526003198483030160c4850152610751565b3460e483015203815f6108005af190811561016a575f916103ca575b50156103855761036557005b5f808080600f61013b956103798354610692565b83555af16101356106b4565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152606490fd5b6103e3915060203d6020116101635761015581836105fc565b83610359565b5f808080600f6103fd956103798354610692565b8861023a565b60a036600319011261019a576104176105e6565b6024356001600160a01b0381169081900361019a576044356001600160401b03811161019a5761044b90369060040161064c565b60643591821515830361019a5760843592831515840361019a57610529575b6040516353266bbb60e01b8152916020838061048b34853060048501610775565b03815f6108005af191821561016a576104af6020949385945f9161050c575061079f565b5f526001825260405f20604051938285935191829101845e8201908152030190206104db3482546107e0565b90556104e357005b5f808080600f61013b956104f78354610692565b83556001600160a01b03165af16101356106b4565b6105239150853d87116101635761015581836105fc565b886100da565b6105335f54610692565b5f90815561055490808080600f6001600160a01b038a165af16101356106b4565b61046a565b3461019a575f36600319011261019a5760205f54604051908152f35b3461019a57604036600319011261019a5761058e6105e6565b602435906001600160401b03821161019a5760208080926105b385369060040161064c565b9060018060a01b03165f526001825260405f20604051938285935191829101845e82019081520301902054604051908152f35b600435906001600160a01b038216820361019a57565b90601f801991011681019081106001600160401b0382111761061d57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161061d57601f01601f191660200190565b81601f8201121561019a5780359061066382610631565b9261067160405194856105fc565b8284526020838301011161019a57815f926020809301838601378301015290565b5f1981146106a05760010190565b634e487b7160e01b5f52601160045260245ffd5b3d156106de573d906106c582610631565b916106d360405193846105fc565b82523d5f602084013e565b606090565b156106ea57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261019a5751801515810361019a5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b93929161079a9060409260018060a01b03168652606060208701526060860190610751565b930152565b156107a657565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b919082018092116106a057565b9035601e198236030181121561019a5701602081359101916001600160401b03821161019a57813603831361019a57565b908060209392818452848401375f828201840152601f01601f191601019056fea26469706673582212201afb25f8f9d5d304c79f87329c5830756768daf174aa40ca3be05d012bf4f3e164736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063241774e61461057557806361bc221a1461055957806366dafc7a14610403578063b9a6bbca1461019e5763c5b75f0114610050575f80fd5b606036600319011261019a576004356001600160401b03811161019a5761007b90369060040161064c565b60243590811515820361019a5760443591821515830361019a57610175575b6040516353266bbb60e01b815290602082806100bb34853060048501610775565b03815f6108005af190811561016a576100e06020939284935f9161013d575b5061079f565b335f526001825260405f20604051938285935191829101845e82019081520301902061010d3482546107e0565b905561011557005b61011f5f54610692565b5f5561013b5f808080600f335af16101356106b4565b506106e3565b005b61015d9150843d8611610163575b61015581836105fc565b810190610739565b5f6100da565b503d61014b565b6040513d5f823e3d90fd5b61017f5f54610692565b5f556101955f808080600f335af16101356106b4565b61009a565b5f80fd5b61012036600319011261019a576004356001600160401b03811161019a578060040160a0600319833603011261019a57606036602319011261019a5760a435916001600160a01b03831680840361019a5760c4356001600160401b03811161019a5761020e90369060040161064c565b60e43593841515850361019a576101043594851515860361019a576020936102f2938861033d936103e9575b506103066040519788968796637be6aa8b60e11b8852610100600489015260846102ea6102c96102a86102868c6101a461027488806107ed565b91909260a0610104820152019161081e565b8c61029460248a01886107ed565b91610124610103198286030191015261081e565b6102b560448801866107ed565b8d830361010319016101448f01529061081e565b6102d660648701856107ed565b8c830361010319016101648e01529061081e565b9301906107ed565b87830361010319016101848901529061081e565b91602435602486015260443560448601526064356064860152608435608486015260a48501526003198483030160c4850152610751565b3460e483015203815f6108005af190811561016a575f916103ca575b50156103855761036557005b5f808080600f61013b956103798354610692565b83555af16101356106b4565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152606490fd5b6103e3915060203d6020116101635761015581836105fc565b83610359565b5f808080600f6103fd956103798354610692565b8861023a565b60a036600319011261019a576104176105e6565b6024356001600160a01b0381169081900361019a576044356001600160401b03811161019a5761044b90369060040161064c565b60643591821515830361019a5760843592831515840361019a57610529575b6040516353266bbb60e01b8152916020838061048b34853060048501610775565b03815f6108005af191821561016a576104af6020949385945f9161050c575061079f565b5f526001825260405f20604051938285935191829101845e8201908152030190206104db3482546107e0565b90556104e357005b5f808080600f61013b956104f78354610692565b83556001600160a01b03165af16101356106b4565b6105239150853d87116101635761015581836105fc565b886100da565b6105335f54610692565b5f90815561055490808080600f6001600160a01b038a165af16101356106b4565b61046a565b3461019a575f36600319011261019a5760205f54604051908152f35b3461019a57604036600319011261019a5761058e6105e6565b602435906001600160401b03821161019a5760208080926105b385369060040161064c565b9060018060a01b03165f526001825260405f20604051938285935191829101845e82019081520301902054604051908152f35b600435906001600160a01b038216820361019a57565b90601f801991011681019081106001600160401b0382111761061d57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161061d57601f01601f191660200190565b81601f8201121561019a5780359061066382610631565b9261067160405194856105fc565b8284526020838301011161019a57815f926020809301838601378301015290565b5f1981146106a05760010190565b634e487b7160e01b5f52601160045260245ffd5b3d156106de573d906106c582610631565b916106d360405193846105fc565b82523d5f602084013e565b606090565b156106ea57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261019a5751801515810361019a5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b93929161079a9060409260018060a01b03168652606060208701526060860190610751565b930152565b156107a657565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b919082018092116106a057565b9035601e198236030181121561019a5701602081359101916001600160401b03821161019a57813603831361019a57565b908060209392818452848401375f828201840152601f01601f191601019056fea26469706673582212201afb25f8f9d5d304c79f87329c5830756768daf174aa40ca3be05d012bf4f3e164736f6c634300081c0033", + "bytecode": "0x60808060405234601557610874908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063241774e61461057557806361bc221a1461055957806366dafc7a14610403578063b9a6bbca1461019e5763c5b75f0114610050575f80fd5b606036600319011261019a576004356001600160401b03811161019a5761007b90369060040161064c565b60243590811515820361019a5760443591821515830361019a57610175575b6040516353266bbb60e01b815290602082806100bb34853060048501610775565b03815f6108005af190811561016a576100e06020939284935f9161013d575b5061079f565b335f526001825260405f20604051938285935191829101845e82019081520301902061010d3482546107e0565b905561011557005b61011f5f54610692565b5f5561013b5f808080600f335af16101356106b4565b506106e3565b005b61015d9150843d8611610163575b61015581836105fc565b810190610739565b5f6100da565b503d61014b565b6040513d5f823e3d90fd5b61017f5f54610692565b5f556101955f808080600f335af16101356106b4565b61009a565b5f80fd5b61012036600319011261019a576004356001600160401b03811161019a578060040160a0600319833603011261019a57606036602319011261019a5760a435916001600160a01b03831680840361019a5760c4356001600160401b03811161019a5761020e90369060040161064c565b60e43593841515850361019a576101043594851515860361019a576020936102f2938861033d936103e9575b506103066040519788968796637be6aa8b60e11b8852610100600489015260846102ea6102c96102a86102868c6101a461027488806107ed565b91909260a0610104820152019161081e565b8c61029460248a01886107ed565b91610124610103198286030191015261081e565b6102b560448801866107ed565b8d830361010319016101448f01529061081e565b6102d660648701856107ed565b8c830361010319016101648e01529061081e565b9301906107ed565b87830361010319016101848901529061081e565b91602435602486015260443560448601526064356064860152608435608486015260a48501526003198483030160c4850152610751565b3460e483015203815f6108005af190811561016a575f916103ca575b50156103855761036557005b5f808080600f61013b956103798354610692565b83555af16101356106b4565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152606490fd5b6103e3915060203d6020116101635761015581836105fc565b83610359565b5f808080600f6103fd956103798354610692565b8861023a565b60a036600319011261019a576104176105e6565b6024356001600160a01b0381169081900361019a576044356001600160401b03811161019a5761044b90369060040161064c565b60643591821515830361019a5760843592831515840361019a57610529575b6040516353266bbb60e01b8152916020838061048b34853060048501610775565b03815f6108005af191821561016a576104af6020949385945f9161050c575061079f565b5f526001825260405f20604051938285935191829101845e8201908152030190206104db3482546107e0565b90556104e357005b5f808080600f61013b956104f78354610692565b83556001600160a01b03165af16101356106b4565b6105239150853d87116101635761015581836105fc565b886100da565b6105335f54610692565b5f90815561055490808080600f6001600160a01b038a165af16101356106b4565b61046a565b3461019a575f36600319011261019a5760205f54604051908152f35b3461019a57604036600319011261019a5761058e6105e6565b602435906001600160401b03821161019a5760208080926105b385369060040161064c565b9060018060a01b03165f526001825260405f20604051938285935191829101845e82019081520301902054604051908152f35b600435906001600160a01b038216820361019a57565b90601f801991011681019081106001600160401b0382111761061d57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161061d57601f01601f191660200190565b81601f8201121561019a5780359061066382610631565b9261067160405194856105fc565b8284526020838301011161019a57815f926020809301838601378301015290565b5f1981146106a05760010190565b634e487b7160e01b5f52601160045260245ffd5b3d156106de573d906106c582610631565b916106d360405193846105fc565b82523d5f602084013e565b606090565b156106ea57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261019a5751801515810361019a5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b93929161079a9060409260018060a01b03168652606060208701526060860190610751565b930152565b156107a657565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b919082018092116106a057565b9035601e198236030181121561019a5701602081359101916001600160401b03821161019a57813603831361019a57565b908060209392818452848401375f828201840152601f01601f191601019056fea2646970667358221220f5438640cde750a5bb3228200649f48a3c4282be2e6cf44e31e8527e5dd4b6f664736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c8063241774e61461057557806361bc221a1461055957806366dafc7a14610403578063b9a6bbca1461019e5763c5b75f0114610050575f80fd5b606036600319011261019a576004356001600160401b03811161019a5761007b90369060040161064c565b60243590811515820361019a5760443591821515830361019a57610175575b6040516353266bbb60e01b815290602082806100bb34853060048501610775565b03815f6108005af190811561016a576100e06020939284935f9161013d575b5061079f565b335f526001825260405f20604051938285935191829101845e82019081520301902061010d3482546107e0565b905561011557005b61011f5f54610692565b5f5561013b5f808080600f335af16101356106b4565b506106e3565b005b61015d9150843d8611610163575b61015581836105fc565b810190610739565b5f6100da565b503d61014b565b6040513d5f823e3d90fd5b61017f5f54610692565b5f556101955f808080600f335af16101356106b4565b61009a565b5f80fd5b61012036600319011261019a576004356001600160401b03811161019a578060040160a0600319833603011261019a57606036602319011261019a5760a435916001600160a01b03831680840361019a5760c4356001600160401b03811161019a5761020e90369060040161064c565b60e43593841515850361019a576101043594851515860361019a576020936102f2938861033d936103e9575b506103066040519788968796637be6aa8b60e11b8852610100600489015260846102ea6102c96102a86102868c6101a461027488806107ed565b91909260a0610104820152019161081e565b8c61029460248a01886107ed565b91610124610103198286030191015261081e565b6102b560448801866107ed565b8d830361010319016101448f01529061081e565b6102d660648701856107ed565b8c830361010319016101648e01529061081e565b9301906107ed565b87830361010319016101848901529061081e565b91602435602486015260443560448601526064356064860152608435608486015260a48501526003198483030160c4850152610751565b3460e483015203815f6108005af190811561016a575f916103ca575b50156103855761036557005b5f808080600f61013b956103798354610692565b83555af16101356106b4565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f20637265617465207468652076616c696461746f7200006044820152606490fd5b6103e3915060203d6020116101635761015581836105fc565b83610359565b5f808080600f6103fd956103798354610692565b8861023a565b60a036600319011261019a576104176105e6565b6024356001600160a01b0381169081900361019a576044356001600160401b03811161019a5761044b90369060040161064c565b60643591821515830361019a5760843592831515840361019a57610529575b6040516353266bbb60e01b8152916020838061048b34853060048501610775565b03815f6108005af191821561016a576104af6020949385945f9161050c575061079f565b5f526001825260405f20604051938285935191829101845e8201908152030190206104db3482546107e0565b90556104e357005b5f808080600f61013b956104f78354610692565b83556001600160a01b03165af16101356106b4565b6105239150853d87116101635761015581836105fc565b886100da565b6105335f54610692565b5f90815561055490808080600f6001600160a01b038a165af16101356106b4565b61046a565b3461019a575f36600319011261019a5760205f54604051908152f35b3461019a57604036600319011261019a5761058e6105e6565b602435906001600160401b03821161019a5760208080926105b385369060040161064c565b9060018060a01b03165f526001825260405f20604051938285935191829101845e82019081520301902054604051908152f35b600435906001600160a01b038216820361019a57565b90601f801991011681019081106001600160401b0382111761061d57604052565b634e487b7160e01b5f52604160045260245ffd5b6001600160401b03811161061d57601f01601f191660200190565b81601f8201121561019a5780359061066382610631565b9261067160405194856105fc565b8284526020838301011161019a57815f926020809301838601378301015290565b5f1981146106a05760010190565b634e487b7160e01b5f52601160045260245ffd5b3d156106de573d906106c582610631565b916106d360405193846105fc565b82523d5f602084013e565b606090565b156106ea57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b9081602091031261019a5751801515810361019a5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b93929161079a9060409260018060a01b03168652606060208701526060860190610751565b930152565b156107a657565b60405162461bcd60e51b81526020600482015260126024820152714661696c656420746f2064656c656761746560701b6044820152606490fd5b919082018092116106a057565b9035601e198236030181121561019a5701602081359101916001600160401b03821161019a57813603831361019a57565b908060209392818452848401375f828201840152601f01601f191601019056fea2646970667358221220f5438640cde750a5bb3228200649f48a3c4282be2e6cf44e31e8527e5dd4b6f664736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/staking/testdata/StakingCallerTwo.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/Counter.json b/precompiles/testutil/contracts/Counter.json index eda43ad5d..05934f0d8 100644 --- a/precompiles/testutil/contracts/Counter.json +++ b/precompiles/testutil/contracts/Counter.json @@ -57,11 +57,11 @@ "type": "function" } ], - "bytecode": "0x608080604052346018575f80556101f1908161001d8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c9081634f2be91f14610132575080636deebae31461005d57638ada066e1461003d575f80fd5b34610059575f3660031901126100595760205f54604051908152f35b5f80fd5b34610059575f366003190112610059575f5480156040516040810181811067ffffffffffffffff82111761011e57604052600f815260208101916e434f554e5445525f544f4f5f4c4f5760881b83526100e3577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8296020845f1901805f55604051908152a1005b60449060405192839162461bcd60e51b8352602060048401525180918160248501528484015e5f828201840152601f01601f19168101030190fd5b634e487b7160e01b5f52604160045260245ffd5b34610059575f366003190112610059575f545f1981146101a7577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619416020600181940192835f55838152a1604051908152a1005b634e487b7160e01b5f52601160045260245ffdfea2646970667358221220d0741b239fe99ad8ff4739e1d6b00bcaef8160666b242e48b73f76a5f541a15564736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c9081634f2be91f14610132575080636deebae31461005d57638ada066e1461003d575f80fd5b34610059575f3660031901126100595760205f54604051908152f35b5f80fd5b34610059575f366003190112610059575f5480156040516040810181811067ffffffffffffffff82111761011e57604052600f815260208101916e434f554e5445525f544f4f5f4c4f5760881b83526100e3577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8296020845f1901805f55604051908152a1005b60449060405192839162461bcd60e51b8352602060048401525180918160248501528484015e5f828201840152601f01601f19168101030190fd5b634e487b7160e01b5f52604160045260245ffd5b34610059575f366003190112610059575f545f1981146101a7577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619416020600181940192835f55838152a1604051908152a1005b634e487b7160e01b5f52601160045260245ffdfea2646970667358221220d0741b239fe99ad8ff4739e1d6b00bcaef8160666b242e48b73f76a5f541a15564736f6c634300081c0033", + "bytecode": "0x608080604052346018575f80556101f1908161001d8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c9081634f2be91f14610132575080636deebae31461005d57638ada066e1461003d575f80fd5b34610059575f3660031901126100595760205f54604051908152f35b5f80fd5b34610059575f366003190112610059575f5480156040516040810181811067ffffffffffffffff82111761011e57604052600f815260208101916e434f554e5445525f544f4f5f4c4f5760881b83526100e3577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8296020845f1901805f55604051908152a1005b60449060405192839162461bcd60e51b8352602060048401525180918160248501528484015e5f828201840152601f01601f19168101030190fd5b634e487b7160e01b5f52604160045260245ffd5b34610059575f366003190112610059575f545f1981146101a7577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619416020600181940192835f55838152a1604051908152a1005b634e487b7160e01b5f52601160045260245ffdfea26469706673582212207ee954def65fa083850c36acd5bb50a65410c031cae3edd0f7e586ffb014b27164736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c9081634f2be91f14610132575080636deebae31461005d57638ada066e1461003d575f80fd5b34610059575f3660031901126100595760205f54604051908152f35b5f80fd5b34610059575f366003190112610059575f5480156040516040810181811067ffffffffffffffff82111761011e57604052600f815260208101916e434f554e5445525f544f4f5f4c4f5760881b83526100e3577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b8296020845f1901805f55604051908152a1005b60449060405192839162461bcd60e51b8352602060048401525180918160248501528484015e5f828201840152601f01601f19168101030190fd5b634e487b7160e01b5f52604160045260245ffd5b34610059575f366003190112610059575f545f1981146101a7577f938d2ee5be9cfb0f7270ee2eff90507e94b37625d9d2b3a61c97d30a4560b829917f64a55044d1f2eddebe1b90e8e2853e8e96931cefadbfa0b2ceb34bee360619416020600181940192835f55838152a1604051908152a1005b634e487b7160e01b5f52601160045260245ffdfea26469706673582212207ee954def65fa083850c36acd5bb50a65410c031cae3edd0f7e586ffb014b27164736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/Counter.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/DistributionCaller.json b/precompiles/testutil/contracts/DistributionCaller.json index 63effb1ac..30b84a280 100644 --- a/precompiles/testutil/contracts/DistributionCaller.json +++ b/precompiles/testutil/contracts/DistributionCaller.json @@ -1081,11 +1081,11 @@ "type": "function" } ], - "bytecode": "0x60806040523461027957604051602081016001600160401b038111828210176101c8576040819052606081016001600160401b038111828210176101c857604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760208201526261746560e81b604082015281525f5460015f55806001106101dc575b505f8080525f5160206125905f395f51905f52915b600182106100b3576040516122c490816102cc8239f35b80518051906001600160401b0382116101c8576100d0855461027d565b601f811161018d575b50602090601f83116001146101245792826001949360209386955f92610119575b50505f19600383901b1c191690841b1786555b0193019101909161009c565b015190505f806100fa565b90601f19831691865f52815f20925f5b818110610175575093602093600196938796938388951061015d575b505050811b01865561010d565b01515f1960f88460031b161c191690555f8080610150565b82840151855560019094019360209384019301610134565b6101b890865f5260205f20601f850160051c810191602086106101be575b601f0160051c01906102b5565b5f6100d9565b90915081906101ab565b634e487b7160e01b5f52604160045260245ffd5b5f80525f5160206125905f395f51905f52017f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5645b81811061021d5750610087565b8061022a6001925461027d565b80610237575b5001610210565b601f8111831461024c57505f81555b5f610230565b61026890825f5283601f60205f20920160051c820191016102b5565b805f525f6020812081835555610246565b5f80fd5b90600182811c921680156102ab575b602083101461029757565b634e487b7160e01b5f52602260045260245ffd5b91607f169161028c565b8181106102c0575050565b5f81556001016102b556fe6080806040526004361015610012575f80fd5b5f3560e01c90816301b6800014611a8f575080630c05e9e4146119055780630da84768146118f3578063151732ec146117eb5780631b050207146116f9578063201139a2146116aa5780632947221b14611574578063296c60aa146114f8578063382d823c146114ac57806346e16d341461147d578063613d4de81461130e57806361bc221a146112ee5780636b7a547c146112585780636f669da41461123a57806378a5dfd11461120c578063796b96d2146111af5780637c9db0bb1461115957806388b2d58114610de057806393574cd114610d51578063963516e414610cc1578063ad5c4cdd14610c6a578063b2d1788314610b50578063b6a216ae146109ea578063be4efc5714610897578063cb85aa0a146107f1578063d0e30db0146107e4578063d3f831be1461073f578063dd987c20146106b3578063ddbfa271146105ac578063e0421e3914610506578063e236c7a6146102f15763f9ed9b671461017c575f80fd5b3461026757608036600319011261026757610195611b0b565b6024356001600160401b038111610267576101b4903690600401611d64565b9061020260206101c2611e1d565b926101cb611e2c565b936102a5575b60405180938192630b4ac1e760e21b835260018060a01b031696876004840152604060248401526044830190611ce1565b03815f6108015af190811561029a575f9161026b575b50156102675761022457005b5f808080600f6102659560015461023d8160070b61211b565b6001600160401b0316906001600160401b031916176001555af161025f611e7e565b50612147565b005b5f80fd5b61028d915060203d602011610293575b6102858183611ba5565b81019061219d565b5f610218565b503d61027b565b6040513d5f823e3d90fd5b6001546102b48160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556102ec5f808080600f6001600160a01b0387165af161025f611e7e565b6101d1565b346102675760203660031901126102675761030a611b0b565b604051630a97c34560e31b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f905f926103dc575b5090604051809260408201926040835281518094526060830193602060608260051b8601019301945f905b82821061038b57858061038787878382036020850152611c27565b0390f35b919360019193955060206103ca8192605f198b8203018652895190836103ba8351604084526040840190611b37565b9201519084818403910152611c27565b9701920192018694929593919561036c565b9150503d805f833e6103ee8183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019180601f840112156102675782519261042584611d4d565b936104336040519586611ba5565b80855260208086019160051b830101918383116102675760208101915b83831061047f575050505060208201516001600160401b038111610267576104789201611f57565b9082610341565b82516001600160401b038111610267578201906040828703601f19011261026757604051906104ad82611b8a565b60208301516001600160401b038111610267578760206104cf92860101611f2f565b82526040830151916001600160401b038311610267576104f788602080969581960101611f57565b83820152815201920191610450565b34610267576020366003190112610267576004356001600160401b038111610267575f61053a61055c923690600401611be1565b60405180938192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af1801561029a57610387915f9161058a575b50604051918291602083526020830190611ce1565b6105a691503d805f833e61059e8183611ba5565b810190612024565b82610575565b34610267576060366003190112610267576105c5611b0b565b6024356001600160401b038111610267576105e4903690600401611be1565b604435906001600160401b038211610267576106066020923690600401611d64565b926001546106168160070b612210565b6001600160401b0316906001600160401b0319161760015561064c6040519485938493631758efa960e11b8552600485016121b5565b03815f6108015af1801561029a576020915f91610696575b506001546106748160070b612235565b6001600160401b0316906001600160401b031916176001556040519015158152f35b6106ad9150823d8411610293576102858183611ba5565b82610664565b6040366003190112610267576004356001600160401b0381116102675760206106e361070b923690600401611be1565b604051809381926353266bbb60e01b8352306004840152606060248401526064830190611b37565b602435604483015203815f6108005af1801561029a5761072757005b6102659060203d602011610293576102858183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267575f610773610795923690600401611be1565b604051809381926342d9696d60e11b8352602060048401526024830190611b37565b03816108015afa801561029a57610387915f916107c2575b50604051918291602083526020830190611c27565b6107de91503d805f833e6107d68183611ba5565b8101906121eb565b826107ad565b5f36600319011261026757005b346102675760203660031901126102675761080a611b0b565b6040516305431f4560e41b81526001600160a01b0390911660048201525f816024816108015afa801561029a575f90610856575b61038790604051918291602083526020830190611b37565b503d805f833e6108668183611ba5565b810190602081830312610267578051916001600160401b03831161026757610387926108929201611f2f565b61083e565b346102675760603660031901126102675760043563ffffffff81168103610267576108ef60206108c5611e3b565b926108ce611e1d565b936109aa575b60405180938192632efe8a5f60e01b8352306004840161225a565b03815f6108015af190811561029a575f9161098b575b501561094c5761091157005b6001546109208160070b61211b565b6001600160401b0316906001600160401b031916176001556102655f808080600f335af161025f611e7e565b60405162461bcd60e51b81526020600482015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152606490fd5b6109a4915060203d602011610293576102858183611ba5565b82610905565b6001546109b98160070b61211b565b6001600160401b0316906001600160401b031916176001556109e55f808080600f335af161025f611e7e565b6108d4565b3461026757602036600319011261026757610a03611b0b565b60405163a66cb60560e01b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f91610a9f575b506040518091602082016020835281518091526040830190602060408260051b8601019301915f905b828210610a7057505050500390f35b91936001919395506020610a8f8192603f198a82030186528851611b37565b9601920192018594939192610a61565b90503d805f833e610ab08183611ba5565b810190602081830312610267578051906001600160401b03821161026757019080601f83011215610267578151610ae681611d4d565b92610af46040519485611ba5565b81845260208085019260051b820101918383116102675760208201905b838210610b2357505050505081610a38565b81516001600160401b03811161026757602091610b4587848094880101611f2f565b815201910190610b11565b34610267576060366003190112610267576004356001600160401b03811161026757610b80903690600401611be1565b610b88611b21565b6044356001600160401b038111610267576020610bac610bc8923690600401611be1565b9360405180938192632d4ecd4b60e11b835233600484016120f9565b03815f6108015af190811561029a575f91610c4b575b5015610c065760405163b46a8d6160e01b8152915f918391829161055c9190600484016120f9565b60405162461bcd60e51b815260206004820152601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610c64915060203d602011610293576102858183611ba5565b83610bde565b3461026757610c985f610c7c36611c9f565b60405163b46a8d6160e01b8152938492839290600484016120f9565b0381836108015af1801561029a57610cae575f80fd5b610267903d805f833e61059e8183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267576020610cf6610d11923690600401611be1565b60405180938192632d4ecd4b60e11b835230600484016120f9565b03815f6108015af1801561029a576020915f91610d34575b506040519015158152f35b610d4b9150823d8411610293576102858183611ba5565b82610d29565b3461026757604036600319011261026757610d936020610d6f611b0b565b610d77611e57565b604051632efe8a5f60e01b81529384928392906004840161225a565b03815f6108015af15f9181610dbf575b50610db7575060205f5b6040519015158152f35b602090610dad565b610dd991925060203d602011610293576102858183611ba5565b9082610da3565b34610267576080366003190112610267576004356001600160401b03811161026757610e10903690600401611be1565b6024356001600160401b038116809103610267576044356001600160401b03811680910361026757606435906001600160401b038211610267578136039060a0600319830112610267575f6020604051610e6981611b8a565b60608152015260405163479239e760e11b81526080600482015294610e92906084870190611b37565b936024860152604485015260031984840301606485015281600401359060221901811215610267578101906024600483013592016001600160401b038311610267578236038113610267578383610f4e608460c0958997889660a05f9b528160a088015288870137888785870101526001600160401b03610f1560248301611e6a565b1660208601526001600160401b03610f2f60448301611e6a565b166040860152610f4160648201611e4a565b1515606086015201611e4a565b15156080830152601f01601f1916010301816108015afa801561029a575f915f91611007575b506040519060408201926040835280518094526020606084019101935f5b818110610fcf575050828094508103602084015260206001600160401b0381610fc48551604086526040860190611b37565b940151169101520390f35b855180516001600160401b0316845260209081015180518286015281015160ff16604085015290950194606090920191600101610f92565b9150503d805f833e6110198183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019082601f8301121561026757815161104f81611d4d565b9261105d6040519485611ba5565b8184526020606081860193028201019085821161026757602001915b8183106110f5575050506020810151906001600160401b038211610267570160408184031261026757604051926110af84611b8a565b81516001600160401b0381116102675782019181601f84011215610267576110e160209284846110e996519101611ef9565b85520161227a565b60208301529082610f74565b8286036060811261026757604080519161110e83611b8a565b6111178661227a565b8352601f1901126102675760609160209160405161113481611b8a565b83870151815261114660408801611f49565b8482015283820152815201920191611079565b34610267576020366003190112610267576004356001600160401b038111610267575f61118d610795923690600401611be1565b604051809381926307ba81ef60e31b8352602060048401526024830190611b37565b34610267576102655f806111f76111e96111c836611c9f565b6040939193519283916020830195632d4ecd4b60e11b8752602484016120f9565b03601f198101835282611ba5565b51906108015afa611206611e7e565b50611ead565b34610267576107955f61121e36611c9f565b6040516326b558ed60e21b8152938492839290600484016120f9565b3461026757604036600319011261026757610d116020610d6f611b0b565b3461026757604036600319011261026757611271611b0b565b6024356001600160401b0381116102675761064c916112966020923690600401611d64565b906001546112a68160070b612210565b6001600160401b0316906001600160401b031916176001556040519384928392630b4ac1e760e21b845260018060a01b03166004840152604060248401526044830190611ce1565b34610267575f36600319011261026757602060015460070b604051908152f35b34610267576080366003190112610267576004356001600160401b03811161026757611341611383913690600401611be1565b611349611b21565b5f611352611e1d565b9261135b611e2c565b93611421575b60405180958192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af191821561029a57610387935f93611405575b506113b75750604051918291602083526020830190611ce1565b6001546113c68160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b0316308114610575575f808080600f6105a6955af161025f611e7e565b61141a9193503d805f833e61059e8183611ba5565b918461139d565b6001546114308160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b038316308103611463575b50611361565b82808080600f611477955af161025f611e7e565b8561145d565b3461026757610d11602061149036611c9f565b604051632d4ecd4b60e11b8152938492839290600484016120f9565b34610267575f3660031901126102675760405163014d140b60e41b81525f816004816108015afa801561029a57610387915f916107c25750604051918291602083526020830190611c27565b34610267575f8061150e6111e96111c836611c9f565b51906108015af461151d611e7e565b501561152557005b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b34610267576060366003190112610267576004356001600160401b038111610267576115a76115da913690600401611be1565b5f6115b0611e3b565b916115b9611e1d565b9261166a575b6040518094819263b46a8d6160e01b835230600484016120f9565b0381836108015af190811561029a57610387925f9261164e575b5061160e575b604051918291602083526020830190611ce1565b60015461161d8160070b61211b565b6001600160401b0316906001600160401b031916176001556116495f808080600f335af161025f611e7e565b6115fa565b6116639192503d805f833e61059e8183611ba5565b90836115f4565b6001546116798160070b61211b565b6001600160401b0316906001600160401b031916176001556116a582808080600f335af161025f611e7e565b6115bf565b34610267576020366003190112610267576004356001600160401b038111610267575f6116de61055c923690600401611be1565b6040518093819263b46a8d6160e01b835230600484016120f9565b3461026757608036600319011261026757611712611b0b565b61171a611b21565b906044356001600160401b038111610267575f61173e61177a923690600401611be1565b611746611e2c565b6040805163ad5c4cdd60e01b81526001600160a01b0390961660048701526024860152939283918291906044830190611b37565b038183305af16117d3575b5061178c57005b5f808080600f610265956001546117a58160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b03165af161025f611e7e565b6117e6903d805f833e61059e8183611ba5565b611785565b34610267576080366003190112610267576004356001600160401b0381116102675761181b903690600401611be1565b6024356001600160401b03811161026757602061183f611872923690600401611d64565b611847611e1d565b93611850611e2c565b946118b3575b604051631758efa960e11b8152938492839230600485016121b5565b03815f6108015af190811561029a575f91611894575b50156102675761091157005b6118ad915060203d602011610293576102858183611ba5565b82611888565b6001546118c28160070b61211b565b6001600160401b0316906001600160401b031916176001556118ee5f808080600f335af161025f611e7e565b611856565b346102675761055c5f610c7c36611c9f565b34610267576020366003190112610267576004356001600160401b038111610267575f611939611975923690600401611be1565b60606040805161194881611b5b565b8281528260208201520152604051809381926354212a8960e01b8352602060048401526024830190611b37565b03816108015afa801561029a575f906119db575b610387906040519182916020835260406119c76119b28351606060208801526080870190611b37565b6020840151868203601f190184880152611c27565b910151838203601f19016060850152611c27565b503d805f833e6119eb8183611ba5565b810190602081830312610267578051906001600160401b03821161026757016060818303126102675760405190611a2182611b5b565b80516001600160401b0381116102675783611a3d918301611f2f565b825260208101516001600160401b0381116102675783611a5e918301611f57565b60208301526040810151926001600160401b0384116102675761038793611a859201611f57565b6040820152611989565b34610267576020366003190112610267575f8061038792611aae611b0b565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611adf604482611ba5565b51906108015afa611af7611af1611e7e565b91611ead565b604051918291602083526020830190611b37565b600435906001600160a01b038216820361026757565b602435906001600160a01b038216820361026757565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b606081019081106001600160401b03821117611b7657604052565b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b03821117611b7657604052565b90601f801991011681019081106001600160401b03821117611b7657604052565b6001600160401b038111611b7657601f01601f191660200190565b81601f8201121561026757803590611bf882611bc6565b92611c066040519485611ba5565b8284526020838301011161026757815f926020809301838601378301015290565b9080602083519182815201916020808360051b8301019401925f915b838310611c5257505050505090565b9091929394602080600192601f19858203018652885190604060ff81611c818551606086526060860190611b37565b94868101518786015201511691015297019301930191939290611c43565b906040600319830112610267576004356001600160a01b03811681036102675791602435906001600160401b03821161026757611cde91600401611be1565b90565b9080602083519182815201916020808360051b8301019401925f915b838310611d0c57505050505090565b9091929394602080600192601f198582030186528851908280611d388451604085526040850190611b37565b93015191015297019301930191939290611cfd565b6001600160401b038111611b765760051b60200190565b81601f8201121561026757803590611d7b82611d4d565b92611d896040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b838510611db557505050505090565b84356001600160401b0381116102675782016040818503601f1901126102675760405191611de283611b8a565b6020820135926001600160401b03841161026757604083611e0a886020809881980101611be1565b8352013583820152815201940193611da6565b60443590811515820361026757565b60643590811515820361026757565b60243590811515820361026757565b3590811515820361026757565b6024359063ffffffff8216820361026757565b35906001600160401b038216820361026757565b3d15611ea8573d90611e8f82611bc6565b91611e9d6040519384611ba5565b82523d5f602084013e565b606090565b15611eb457565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fd5b929192611f0582611bc6565b91611f136040519384611ba5565b829481845281830111610267578281602093845f96015e010152565b9080601f83011215610267578151611cde92602001611ef9565b519060ff8216820361026757565b9080601f8301121561026757815191611f6f83611d4d565b92611f7d6040519485611ba5565b80845260208085019160051b830101918383116102675760208101915b838310611fa957505050505090565b82516001600160401b038111610267578201906060828703601f1901126102675760405190611fd782611b5b565b6020830151916001600160401b038311610267576120146060856120038b602080999881990101611f2f565b845260408101518685015201611f49565b6040820152815201920191611f9a565b602081830312610267578051906001600160401b038211610267570181601f820112156102675780519061205782611d4d565b926120656040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b83851061209157505050505090565b84516001600160401b0381116102675782016040818503601f19011261026757604051916120be83611b8a565b6020820151926001600160401b038411610267576040836120e6886020809881980101611f2f565b8352015183820152815201940193612082565b6001600160a01b039091168152604060208201819052611cde92910190611b37565b60070b677fffffffffffffff81146121335760010190565b634e487b7160e01b5f52601160045260245ffd5b1561214e57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b90816020910312610267575180151581036102675790565b6001600160a01b039091168152606060208201819052611cde9391926121dd91840190611b37565b916040818403910152611ce1565b906020828203126102675781516001600160401b03811161026757611cde9201611f57565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213357565b60070b5f190190677fffffffffffffff198212677fffffffffffffff83131761213357565b6001600160a01b03909116815263ffffffff909116602082015260400190565b51906001600160401b03821682036102675756fea26469706673582212201fdb5ca265b316e8bc6755c8728c0170fba179ac01920bc8d9f8cf20ca1ae7b564736f6c634300081c0033290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301b6800014611a8f575080630c05e9e4146119055780630da84768146118f3578063151732ec146117eb5780631b050207146116f9578063201139a2146116aa5780632947221b14611574578063296c60aa146114f8578063382d823c146114ac57806346e16d341461147d578063613d4de81461130e57806361bc221a146112ee5780636b7a547c146112585780636f669da41461123a57806378a5dfd11461120c578063796b96d2146111af5780637c9db0bb1461115957806388b2d58114610de057806393574cd114610d51578063963516e414610cc1578063ad5c4cdd14610c6a578063b2d1788314610b50578063b6a216ae146109ea578063be4efc5714610897578063cb85aa0a146107f1578063d0e30db0146107e4578063d3f831be1461073f578063dd987c20146106b3578063ddbfa271146105ac578063e0421e3914610506578063e236c7a6146102f15763f9ed9b671461017c575f80fd5b3461026757608036600319011261026757610195611b0b565b6024356001600160401b038111610267576101b4903690600401611d64565b9061020260206101c2611e1d565b926101cb611e2c565b936102a5575b60405180938192630b4ac1e760e21b835260018060a01b031696876004840152604060248401526044830190611ce1565b03815f6108015af190811561029a575f9161026b575b50156102675761022457005b5f808080600f6102659560015461023d8160070b61211b565b6001600160401b0316906001600160401b031916176001555af161025f611e7e565b50612147565b005b5f80fd5b61028d915060203d602011610293575b6102858183611ba5565b81019061219d565b5f610218565b503d61027b565b6040513d5f823e3d90fd5b6001546102b48160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556102ec5f808080600f6001600160a01b0387165af161025f611e7e565b6101d1565b346102675760203660031901126102675761030a611b0b565b604051630a97c34560e31b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f905f926103dc575b5090604051809260408201926040835281518094526060830193602060608260051b8601019301945f905b82821061038b57858061038787878382036020850152611c27565b0390f35b919360019193955060206103ca8192605f198b8203018652895190836103ba8351604084526040840190611b37565b9201519084818403910152611c27565b9701920192018694929593919561036c565b9150503d805f833e6103ee8183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019180601f840112156102675782519261042584611d4d565b936104336040519586611ba5565b80855260208086019160051b830101918383116102675760208101915b83831061047f575050505060208201516001600160401b038111610267576104789201611f57565b9082610341565b82516001600160401b038111610267578201906040828703601f19011261026757604051906104ad82611b8a565b60208301516001600160401b038111610267578760206104cf92860101611f2f565b82526040830151916001600160401b038311610267576104f788602080969581960101611f57565b83820152815201920191610450565b34610267576020366003190112610267576004356001600160401b038111610267575f61053a61055c923690600401611be1565b60405180938192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af1801561029a57610387915f9161058a575b50604051918291602083526020830190611ce1565b6105a691503d805f833e61059e8183611ba5565b810190612024565b82610575565b34610267576060366003190112610267576105c5611b0b565b6024356001600160401b038111610267576105e4903690600401611be1565b604435906001600160401b038211610267576106066020923690600401611d64565b926001546106168160070b612210565b6001600160401b0316906001600160401b0319161760015561064c6040519485938493631758efa960e11b8552600485016121b5565b03815f6108015af1801561029a576020915f91610696575b506001546106748160070b612235565b6001600160401b0316906001600160401b031916176001556040519015158152f35b6106ad9150823d8411610293576102858183611ba5565b82610664565b6040366003190112610267576004356001600160401b0381116102675760206106e361070b923690600401611be1565b604051809381926353266bbb60e01b8352306004840152606060248401526064830190611b37565b602435604483015203815f6108005af1801561029a5761072757005b6102659060203d602011610293576102858183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267575f610773610795923690600401611be1565b604051809381926342d9696d60e11b8352602060048401526024830190611b37565b03816108015afa801561029a57610387915f916107c2575b50604051918291602083526020830190611c27565b6107de91503d805f833e6107d68183611ba5565b8101906121eb565b826107ad565b5f36600319011261026757005b346102675760203660031901126102675761080a611b0b565b6040516305431f4560e41b81526001600160a01b0390911660048201525f816024816108015afa801561029a575f90610856575b61038790604051918291602083526020830190611b37565b503d805f833e6108668183611ba5565b810190602081830312610267578051916001600160401b03831161026757610387926108929201611f2f565b61083e565b346102675760603660031901126102675760043563ffffffff81168103610267576108ef60206108c5611e3b565b926108ce611e1d565b936109aa575b60405180938192632efe8a5f60e01b8352306004840161225a565b03815f6108015af190811561029a575f9161098b575b501561094c5761091157005b6001546109208160070b61211b565b6001600160401b0316906001600160401b031916176001556102655f808080600f335af161025f611e7e565b60405162461bcd60e51b81526020600482015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152606490fd5b6109a4915060203d602011610293576102858183611ba5565b82610905565b6001546109b98160070b61211b565b6001600160401b0316906001600160401b031916176001556109e55f808080600f335af161025f611e7e565b6108d4565b3461026757602036600319011261026757610a03611b0b565b60405163a66cb60560e01b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f91610a9f575b506040518091602082016020835281518091526040830190602060408260051b8601019301915f905b828210610a7057505050500390f35b91936001919395506020610a8f8192603f198a82030186528851611b37565b9601920192018594939192610a61565b90503d805f833e610ab08183611ba5565b810190602081830312610267578051906001600160401b03821161026757019080601f83011215610267578151610ae681611d4d565b92610af46040519485611ba5565b81845260208085019260051b820101918383116102675760208201905b838210610b2357505050505081610a38565b81516001600160401b03811161026757602091610b4587848094880101611f2f565b815201910190610b11565b34610267576060366003190112610267576004356001600160401b03811161026757610b80903690600401611be1565b610b88611b21565b6044356001600160401b038111610267576020610bac610bc8923690600401611be1565b9360405180938192632d4ecd4b60e11b835233600484016120f9565b03815f6108015af190811561029a575f91610c4b575b5015610c065760405163b46a8d6160e01b8152915f918391829161055c9190600484016120f9565b60405162461bcd60e51b815260206004820152601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610c64915060203d602011610293576102858183611ba5565b83610bde565b3461026757610c985f610c7c36611c9f565b60405163b46a8d6160e01b8152938492839290600484016120f9565b0381836108015af1801561029a57610cae575f80fd5b610267903d805f833e61059e8183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267576020610cf6610d11923690600401611be1565b60405180938192632d4ecd4b60e11b835230600484016120f9565b03815f6108015af1801561029a576020915f91610d34575b506040519015158152f35b610d4b9150823d8411610293576102858183611ba5565b82610d29565b3461026757604036600319011261026757610d936020610d6f611b0b565b610d77611e57565b604051632efe8a5f60e01b81529384928392906004840161225a565b03815f6108015af15f9181610dbf575b50610db7575060205f5b6040519015158152f35b602090610dad565b610dd991925060203d602011610293576102858183611ba5565b9082610da3565b34610267576080366003190112610267576004356001600160401b03811161026757610e10903690600401611be1565b6024356001600160401b038116809103610267576044356001600160401b03811680910361026757606435906001600160401b038211610267578136039060a0600319830112610267575f6020604051610e6981611b8a565b60608152015260405163479239e760e11b81526080600482015294610e92906084870190611b37565b936024860152604485015260031984840301606485015281600401359060221901811215610267578101906024600483013592016001600160401b038311610267578236038113610267578383610f4e608460c0958997889660a05f9b528160a088015288870137888785870101526001600160401b03610f1560248301611e6a565b1660208601526001600160401b03610f2f60448301611e6a565b166040860152610f4160648201611e4a565b1515606086015201611e4a565b15156080830152601f01601f1916010301816108015afa801561029a575f915f91611007575b506040519060408201926040835280518094526020606084019101935f5b818110610fcf575050828094508103602084015260206001600160401b0381610fc48551604086526040860190611b37565b940151169101520390f35b855180516001600160401b0316845260209081015180518286015281015160ff16604085015290950194606090920191600101610f92565b9150503d805f833e6110198183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019082601f8301121561026757815161104f81611d4d565b9261105d6040519485611ba5565b8184526020606081860193028201019085821161026757602001915b8183106110f5575050506020810151906001600160401b038211610267570160408184031261026757604051926110af84611b8a565b81516001600160401b0381116102675782019181601f84011215610267576110e160209284846110e996519101611ef9565b85520161227a565b60208301529082610f74565b8286036060811261026757604080519161110e83611b8a565b6111178661227a565b8352601f1901126102675760609160209160405161113481611b8a565b83870151815261114660408801611f49565b8482015283820152815201920191611079565b34610267576020366003190112610267576004356001600160401b038111610267575f61118d610795923690600401611be1565b604051809381926307ba81ef60e31b8352602060048401526024830190611b37565b34610267576102655f806111f76111e96111c836611c9f565b6040939193519283916020830195632d4ecd4b60e11b8752602484016120f9565b03601f198101835282611ba5565b51906108015afa611206611e7e565b50611ead565b34610267576107955f61121e36611c9f565b6040516326b558ed60e21b8152938492839290600484016120f9565b3461026757604036600319011261026757610d116020610d6f611b0b565b3461026757604036600319011261026757611271611b0b565b6024356001600160401b0381116102675761064c916112966020923690600401611d64565b906001546112a68160070b612210565b6001600160401b0316906001600160401b031916176001556040519384928392630b4ac1e760e21b845260018060a01b03166004840152604060248401526044830190611ce1565b34610267575f36600319011261026757602060015460070b604051908152f35b34610267576080366003190112610267576004356001600160401b03811161026757611341611383913690600401611be1565b611349611b21565b5f611352611e1d565b9261135b611e2c565b93611421575b60405180958192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af191821561029a57610387935f93611405575b506113b75750604051918291602083526020830190611ce1565b6001546113c68160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b0316308114610575575f808080600f6105a6955af161025f611e7e565b61141a9193503d805f833e61059e8183611ba5565b918461139d565b6001546114308160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b038316308103611463575b50611361565b82808080600f611477955af161025f611e7e565b8561145d565b3461026757610d11602061149036611c9f565b604051632d4ecd4b60e11b8152938492839290600484016120f9565b34610267575f3660031901126102675760405163014d140b60e41b81525f816004816108015afa801561029a57610387915f916107c25750604051918291602083526020830190611c27565b34610267575f8061150e6111e96111c836611c9f565b51906108015af461151d611e7e565b501561152557005b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b34610267576060366003190112610267576004356001600160401b038111610267576115a76115da913690600401611be1565b5f6115b0611e3b565b916115b9611e1d565b9261166a575b6040518094819263b46a8d6160e01b835230600484016120f9565b0381836108015af190811561029a57610387925f9261164e575b5061160e575b604051918291602083526020830190611ce1565b60015461161d8160070b61211b565b6001600160401b0316906001600160401b031916176001556116495f808080600f335af161025f611e7e565b6115fa565b6116639192503d805f833e61059e8183611ba5565b90836115f4565b6001546116798160070b61211b565b6001600160401b0316906001600160401b031916176001556116a582808080600f335af161025f611e7e565b6115bf565b34610267576020366003190112610267576004356001600160401b038111610267575f6116de61055c923690600401611be1565b6040518093819263b46a8d6160e01b835230600484016120f9565b3461026757608036600319011261026757611712611b0b565b61171a611b21565b906044356001600160401b038111610267575f61173e61177a923690600401611be1565b611746611e2c565b6040805163ad5c4cdd60e01b81526001600160a01b0390961660048701526024860152939283918291906044830190611b37565b038183305af16117d3575b5061178c57005b5f808080600f610265956001546117a58160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b03165af161025f611e7e565b6117e6903d805f833e61059e8183611ba5565b611785565b34610267576080366003190112610267576004356001600160401b0381116102675761181b903690600401611be1565b6024356001600160401b03811161026757602061183f611872923690600401611d64565b611847611e1d565b93611850611e2c565b946118b3575b604051631758efa960e11b8152938492839230600485016121b5565b03815f6108015af190811561029a575f91611894575b50156102675761091157005b6118ad915060203d602011610293576102858183611ba5565b82611888565b6001546118c28160070b61211b565b6001600160401b0316906001600160401b031916176001556118ee5f808080600f335af161025f611e7e565b611856565b346102675761055c5f610c7c36611c9f565b34610267576020366003190112610267576004356001600160401b038111610267575f611939611975923690600401611be1565b60606040805161194881611b5b565b8281528260208201520152604051809381926354212a8960e01b8352602060048401526024830190611b37565b03816108015afa801561029a575f906119db575b610387906040519182916020835260406119c76119b28351606060208801526080870190611b37565b6020840151868203601f190184880152611c27565b910151838203601f19016060850152611c27565b503d805f833e6119eb8183611ba5565b810190602081830312610267578051906001600160401b03821161026757016060818303126102675760405190611a2182611b5b565b80516001600160401b0381116102675783611a3d918301611f2f565b825260208101516001600160401b0381116102675783611a5e918301611f57565b60208301526040810151926001600160401b0384116102675761038793611a859201611f57565b6040820152611989565b34610267576020366003190112610267575f8061038792611aae611b0b565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611adf604482611ba5565b51906108015afa611af7611af1611e7e565b91611ead565b604051918291602083526020830190611b37565b600435906001600160a01b038216820361026757565b602435906001600160a01b038216820361026757565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b606081019081106001600160401b03821117611b7657604052565b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b03821117611b7657604052565b90601f801991011681019081106001600160401b03821117611b7657604052565b6001600160401b038111611b7657601f01601f191660200190565b81601f8201121561026757803590611bf882611bc6565b92611c066040519485611ba5565b8284526020838301011161026757815f926020809301838601378301015290565b9080602083519182815201916020808360051b8301019401925f915b838310611c5257505050505090565b9091929394602080600192601f19858203018652885190604060ff81611c818551606086526060860190611b37565b94868101518786015201511691015297019301930191939290611c43565b906040600319830112610267576004356001600160a01b03811681036102675791602435906001600160401b03821161026757611cde91600401611be1565b90565b9080602083519182815201916020808360051b8301019401925f915b838310611d0c57505050505090565b9091929394602080600192601f198582030186528851908280611d388451604085526040850190611b37565b93015191015297019301930191939290611cfd565b6001600160401b038111611b765760051b60200190565b81601f8201121561026757803590611d7b82611d4d565b92611d896040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b838510611db557505050505090565b84356001600160401b0381116102675782016040818503601f1901126102675760405191611de283611b8a565b6020820135926001600160401b03841161026757604083611e0a886020809881980101611be1565b8352013583820152815201940193611da6565b60443590811515820361026757565b60643590811515820361026757565b60243590811515820361026757565b3590811515820361026757565b6024359063ffffffff8216820361026757565b35906001600160401b038216820361026757565b3d15611ea8573d90611e8f82611bc6565b91611e9d6040519384611ba5565b82523d5f602084013e565b606090565b15611eb457565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fd5b929192611f0582611bc6565b91611f136040519384611ba5565b829481845281830111610267578281602093845f96015e010152565b9080601f83011215610267578151611cde92602001611ef9565b519060ff8216820361026757565b9080601f8301121561026757815191611f6f83611d4d565b92611f7d6040519485611ba5565b80845260208085019160051b830101918383116102675760208101915b838310611fa957505050505090565b82516001600160401b038111610267578201906060828703601f1901126102675760405190611fd782611b5b565b6020830151916001600160401b038311610267576120146060856120038b602080999881990101611f2f565b845260408101518685015201611f49565b6040820152815201920191611f9a565b602081830312610267578051906001600160401b038211610267570181601f820112156102675780519061205782611d4d565b926120656040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b83851061209157505050505090565b84516001600160401b0381116102675782016040818503601f19011261026757604051916120be83611b8a565b6020820151926001600160401b038411610267576040836120e6886020809881980101611f2f565b8352015183820152815201940193612082565b6001600160a01b039091168152604060208201819052611cde92910190611b37565b60070b677fffffffffffffff81146121335760010190565b634e487b7160e01b5f52601160045260245ffd5b1561214e57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b90816020910312610267575180151581036102675790565b6001600160a01b039091168152606060208201819052611cde9391926121dd91840190611b37565b916040818403910152611ce1565b906020828203126102675781516001600160401b03811161026757611cde9201611f57565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213357565b60070b5f190190677fffffffffffffff198212677fffffffffffffff83131761213357565b6001600160a01b03909116815263ffffffff909116602082015260400190565b51906001600160401b03821682036102675756fea26469706673582212201fdb5ca265b316e8bc6755c8728c0170fba179ac01920bc8d9f8cf20ca1ae7b564736f6c634300081c0033", + "bytecode": "0x60806040523461027957604051602081016001600160401b038111828210176101c8576040819052606081016001600160401b038111828210176101c857604052602381527f2f636f736d6f732e7374616b696e672e763162657461312e4d736744656c656760208201526261746560e81b604082015281525f5460015f55806001106101dc575b505f8080525f5160206125905f395f51905f52915b600182106100b3576040516122c490816102cc8239f35b80518051906001600160401b0382116101c8576100d0855461027d565b601f811161018d575b50602090601f83116001146101245792826001949360209386955f92610119575b50505f19600383901b1c191690841b1786555b0193019101909161009c565b015190505f806100fa565b90601f19831691865f52815f20925f5b818110610175575093602093600196938796938388951061015d575b505050811b01865561010d565b01515f1960f88460031b161c191690555f8080610150565b82840151855560019094019360209384019301610134565b6101b890865f5260205f20601f850160051c810191602086106101be575b601f0160051c01906102b5565b5f6100d9565b90915081906101ab565b634e487b7160e01b5f52604160045260245ffd5b5f80525f5160206125905f395f51905f52017f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5645b81811061021d5750610087565b8061022a6001925461027d565b80610237575b5001610210565b601f8111831461024c57505f81555b5f610230565b61026890825f5283601f60205f20920160051c820191016102b5565b805f525f6020812081835555610246565b5f80fd5b90600182811c921680156102ab575b602083101461029757565b634e487b7160e01b5f52602260045260245ffd5b91607f169161028c565b8181106102c0575050565b5f81556001016102b556fe6080806040526004361015610012575f80fd5b5f3560e01c90816301b6800014611a8f575080630c05e9e4146119055780630da84768146118f3578063151732ec146117eb5780631b050207146116f9578063201139a2146116aa5780632947221b14611574578063296c60aa146114f8578063382d823c146114ac57806346e16d341461147d578063613d4de81461130e57806361bc221a146112ee5780636b7a547c146112585780636f669da41461123a57806378a5dfd11461120c578063796b96d2146111af5780637c9db0bb1461115957806388b2d58114610de057806393574cd114610d51578063963516e414610cc1578063ad5c4cdd14610c6a578063b2d1788314610b50578063b6a216ae146109ea578063be4efc5714610897578063cb85aa0a146107f1578063d0e30db0146107e4578063d3f831be1461073f578063dd987c20146106b3578063ddbfa271146105ac578063e0421e3914610506578063e236c7a6146102f15763f9ed9b671461017c575f80fd5b3461026757608036600319011261026757610195611b0b565b6024356001600160401b038111610267576101b4903690600401611d64565b9061020260206101c2611e1d565b926101cb611e2c565b936102a5575b60405180938192630b4ac1e760e21b835260018060a01b031696876004840152604060248401526044830190611ce1565b03815f6108015af190811561029a575f9161026b575b50156102675761022457005b5f808080600f6102659560015461023d8160070b61211b565b6001600160401b0316906001600160401b031916176001555af161025f611e7e565b50612147565b005b5f80fd5b61028d915060203d602011610293575b6102858183611ba5565b81019061219d565b5f610218565b503d61027b565b6040513d5f823e3d90fd5b6001546102b48160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556102ec5f808080600f6001600160a01b0387165af161025f611e7e565b6101d1565b346102675760203660031901126102675761030a611b0b565b604051630a97c34560e31b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f905f926103dc575b5090604051809260408201926040835281518094526060830193602060608260051b8601019301945f905b82821061038b57858061038787878382036020850152611c27565b0390f35b919360019193955060206103ca8192605f198b8203018652895190836103ba8351604084526040840190611b37565b9201519084818403910152611c27565b9701920192018694929593919561036c565b9150503d805f833e6103ee8183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019180601f840112156102675782519261042584611d4d565b936104336040519586611ba5565b80855260208086019160051b830101918383116102675760208101915b83831061047f575050505060208201516001600160401b038111610267576104789201611f57565b9082610341565b82516001600160401b038111610267578201906040828703601f19011261026757604051906104ad82611b8a565b60208301516001600160401b038111610267578760206104cf92860101611f2f565b82526040830151916001600160401b038311610267576104f788602080969581960101611f57565b83820152815201920191610450565b34610267576020366003190112610267576004356001600160401b038111610267575f61053a61055c923690600401611be1565b60405180938192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af1801561029a57610387915f9161058a575b50604051918291602083526020830190611ce1565b6105a691503d805f833e61059e8183611ba5565b810190612024565b82610575565b34610267576060366003190112610267576105c5611b0b565b6024356001600160401b038111610267576105e4903690600401611be1565b604435906001600160401b038211610267576106066020923690600401611d64565b926001546106168160070b612210565b6001600160401b0316906001600160401b0319161760015561064c6040519485938493631758efa960e11b8552600485016121b5565b03815f6108015af1801561029a576020915f91610696575b506001546106748160070b612235565b6001600160401b0316906001600160401b031916176001556040519015158152f35b6106ad9150823d8411610293576102858183611ba5565b82610664565b6040366003190112610267576004356001600160401b0381116102675760206106e361070b923690600401611be1565b604051809381926353266bbb60e01b8352306004840152606060248401526064830190611b37565b602435604483015203815f6108005af1801561029a5761072757005b6102659060203d602011610293576102858183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267575f610773610795923690600401611be1565b604051809381926342d9696d60e11b8352602060048401526024830190611b37565b03816108015afa801561029a57610387915f916107c2575b50604051918291602083526020830190611c27565b6107de91503d805f833e6107d68183611ba5565b8101906121eb565b826107ad565b5f36600319011261026757005b346102675760203660031901126102675761080a611b0b565b6040516305431f4560e41b81526001600160a01b0390911660048201525f816024816108015afa801561029a575f90610856575b61038790604051918291602083526020830190611b37565b503d805f833e6108668183611ba5565b810190602081830312610267578051916001600160401b03831161026757610387926108929201611f2f565b61083e565b346102675760603660031901126102675760043563ffffffff81168103610267576108ef60206108c5611e3b565b926108ce611e1d565b936109aa575b60405180938192632efe8a5f60e01b8352306004840161225a565b03815f6108015af190811561029a575f9161098b575b501561094c5761091157005b6001546109208160070b61211b565b6001600160401b0316906001600160401b031916176001556102655f808080600f335af161025f611e7e565b60405162461bcd60e51b81526020600482015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152606490fd5b6109a4915060203d602011610293576102858183611ba5565b82610905565b6001546109b98160070b61211b565b6001600160401b0316906001600160401b031916176001556109e55f808080600f335af161025f611e7e565b6108d4565b3461026757602036600319011261026757610a03611b0b565b60405163a66cb60560e01b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f91610a9f575b506040518091602082016020835281518091526040830190602060408260051b8601019301915f905b828210610a7057505050500390f35b91936001919395506020610a8f8192603f198a82030186528851611b37565b9601920192018594939192610a61565b90503d805f833e610ab08183611ba5565b810190602081830312610267578051906001600160401b03821161026757019080601f83011215610267578151610ae681611d4d565b92610af46040519485611ba5565b81845260208085019260051b820101918383116102675760208201905b838210610b2357505050505081610a38565b81516001600160401b03811161026757602091610b4587848094880101611f2f565b815201910190610b11565b34610267576060366003190112610267576004356001600160401b03811161026757610b80903690600401611be1565b610b88611b21565b6044356001600160401b038111610267576020610bac610bc8923690600401611be1565b9360405180938192632d4ecd4b60e11b835233600484016120f9565b03815f6108015af190811561029a575f91610c4b575b5015610c065760405163b46a8d6160e01b8152915f918391829161055c9190600484016120f9565b60405162461bcd60e51b815260206004820152601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610c64915060203d602011610293576102858183611ba5565b83610bde565b3461026757610c985f610c7c36611c9f565b60405163b46a8d6160e01b8152938492839290600484016120f9565b0381836108015af1801561029a57610cae575f80fd5b610267903d805f833e61059e8183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267576020610cf6610d11923690600401611be1565b60405180938192632d4ecd4b60e11b835230600484016120f9565b03815f6108015af1801561029a576020915f91610d34575b506040519015158152f35b610d4b9150823d8411610293576102858183611ba5565b82610d29565b3461026757604036600319011261026757610d936020610d6f611b0b565b610d77611e57565b604051632efe8a5f60e01b81529384928392906004840161225a565b03815f6108015af15f9181610dbf575b50610db7575060205f5b6040519015158152f35b602090610dad565b610dd991925060203d602011610293576102858183611ba5565b9082610da3565b34610267576080366003190112610267576004356001600160401b03811161026757610e10903690600401611be1565b6024356001600160401b038116809103610267576044356001600160401b03811680910361026757606435906001600160401b038211610267578136039060a0600319830112610267575f6020604051610e6981611b8a565b60608152015260405163479239e760e11b81526080600482015294610e92906084870190611b37565b936024860152604485015260031984840301606485015281600401359060221901811215610267578101906024600483013592016001600160401b038311610267578236038113610267578383610f4e608460c0958997889660a05f9b528160a088015288870137888785870101526001600160401b03610f1560248301611e6a565b1660208601526001600160401b03610f2f60448301611e6a565b166040860152610f4160648201611e4a565b1515606086015201611e4a565b15156080830152601f01601f1916010301816108015afa801561029a575f915f91611007575b506040519060408201926040835280518094526020606084019101935f5b818110610fcf575050828094508103602084015260206001600160401b0381610fc48551604086526040860190611b37565b940151169101520390f35b855180516001600160401b0316845260209081015180518286015281015160ff16604085015290950194606090920191600101610f92565b9150503d805f833e6110198183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019082601f8301121561026757815161104f81611d4d565b9261105d6040519485611ba5565b8184526020606081860193028201019085821161026757602001915b8183106110f5575050506020810151906001600160401b038211610267570160408184031261026757604051926110af84611b8a565b81516001600160401b0381116102675782019181601f84011215610267576110e160209284846110e996519101611ef9565b85520161227a565b60208301529082610f74565b8286036060811261026757604080519161110e83611b8a565b6111178661227a565b8352601f1901126102675760609160209160405161113481611b8a565b83870151815261114660408801611f49565b8482015283820152815201920191611079565b34610267576020366003190112610267576004356001600160401b038111610267575f61118d610795923690600401611be1565b604051809381926307ba81ef60e31b8352602060048401526024830190611b37565b34610267576102655f806111f76111e96111c836611c9f565b6040939193519283916020830195632d4ecd4b60e11b8752602484016120f9565b03601f198101835282611ba5565b51906108015afa611206611e7e565b50611ead565b34610267576107955f61121e36611c9f565b6040516326b558ed60e21b8152938492839290600484016120f9565b3461026757604036600319011261026757610d116020610d6f611b0b565b3461026757604036600319011261026757611271611b0b565b6024356001600160401b0381116102675761064c916112966020923690600401611d64565b906001546112a68160070b612210565b6001600160401b0316906001600160401b031916176001556040519384928392630b4ac1e760e21b845260018060a01b03166004840152604060248401526044830190611ce1565b34610267575f36600319011261026757602060015460070b604051908152f35b34610267576080366003190112610267576004356001600160401b03811161026757611341611383913690600401611be1565b611349611b21565b5f611352611e1d565b9261135b611e2c565b93611421575b60405180958192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af191821561029a57610387935f93611405575b506113b75750604051918291602083526020830190611ce1565b6001546113c68160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b0316308114610575575f808080600f6105a6955af161025f611e7e565b61141a9193503d805f833e61059e8183611ba5565b918461139d565b6001546114308160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b038316308103611463575b50611361565b82808080600f611477955af161025f611e7e565b8561145d565b3461026757610d11602061149036611c9f565b604051632d4ecd4b60e11b8152938492839290600484016120f9565b34610267575f3660031901126102675760405163014d140b60e41b81525f816004816108015afa801561029a57610387915f916107c25750604051918291602083526020830190611c27565b34610267575f8061150e6111e96111c836611c9f565b51906108015af461151d611e7e565b501561152557005b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b34610267576060366003190112610267576004356001600160401b038111610267576115a76115da913690600401611be1565b5f6115b0611e3b565b916115b9611e1d565b9261166a575b6040518094819263b46a8d6160e01b835230600484016120f9565b0381836108015af190811561029a57610387925f9261164e575b5061160e575b604051918291602083526020830190611ce1565b60015461161d8160070b61211b565b6001600160401b0316906001600160401b031916176001556116495f808080600f335af161025f611e7e565b6115fa565b6116639192503d805f833e61059e8183611ba5565b90836115f4565b6001546116798160070b61211b565b6001600160401b0316906001600160401b031916176001556116a582808080600f335af161025f611e7e565b6115bf565b34610267576020366003190112610267576004356001600160401b038111610267575f6116de61055c923690600401611be1565b6040518093819263b46a8d6160e01b835230600484016120f9565b3461026757608036600319011261026757611712611b0b565b61171a611b21565b906044356001600160401b038111610267575f61173e61177a923690600401611be1565b611746611e2c565b6040805163ad5c4cdd60e01b81526001600160a01b0390961660048701526024860152939283918291906044830190611b37565b038183305af16117d3575b5061178c57005b5f808080600f610265956001546117a58160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b03165af161025f611e7e565b6117e6903d805f833e61059e8183611ba5565b611785565b34610267576080366003190112610267576004356001600160401b0381116102675761181b903690600401611be1565b6024356001600160401b03811161026757602061183f611872923690600401611d64565b611847611e1d565b93611850611e2c565b946118b3575b604051631758efa960e11b8152938492839230600485016121b5565b03815f6108015af190811561029a575f91611894575b50156102675761091157005b6118ad915060203d602011610293576102858183611ba5565b82611888565b6001546118c28160070b61211b565b6001600160401b0316906001600160401b031916176001556118ee5f808080600f335af161025f611e7e565b611856565b346102675761055c5f610c7c36611c9f565b34610267576020366003190112610267576004356001600160401b038111610267575f611939611975923690600401611be1565b60606040805161194881611b5b565b8281528260208201520152604051809381926354212a8960e01b8352602060048401526024830190611b37565b03816108015afa801561029a575f906119db575b610387906040519182916020835260406119c76119b28351606060208801526080870190611b37565b6020840151868203601f190184880152611c27565b910151838203601f19016060850152611c27565b503d805f833e6119eb8183611ba5565b810190602081830312610267578051906001600160401b03821161026757016060818303126102675760405190611a2182611b5b565b80516001600160401b0381116102675783611a3d918301611f2f565b825260208101516001600160401b0381116102675783611a5e918301611f57565b60208301526040810151926001600160401b0384116102675761038793611a859201611f57565b6040820152611989565b34610267576020366003190112610267575f8061038792611aae611b0b565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611adf604482611ba5565b51906108015afa611af7611af1611e7e565b91611ead565b604051918291602083526020830190611b37565b600435906001600160a01b038216820361026757565b602435906001600160a01b038216820361026757565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b606081019081106001600160401b03821117611b7657604052565b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b03821117611b7657604052565b90601f801991011681019081106001600160401b03821117611b7657604052565b6001600160401b038111611b7657601f01601f191660200190565b81601f8201121561026757803590611bf882611bc6565b92611c066040519485611ba5565b8284526020838301011161026757815f926020809301838601378301015290565b9080602083519182815201916020808360051b8301019401925f915b838310611c5257505050505090565b9091929394602080600192601f19858203018652885190604060ff81611c818551606086526060860190611b37565b94868101518786015201511691015297019301930191939290611c43565b906040600319830112610267576004356001600160a01b03811681036102675791602435906001600160401b03821161026757611cde91600401611be1565b90565b9080602083519182815201916020808360051b8301019401925f915b838310611d0c57505050505090565b9091929394602080600192601f198582030186528851908280611d388451604085526040850190611b37565b93015191015297019301930191939290611cfd565b6001600160401b038111611b765760051b60200190565b81601f8201121561026757803590611d7b82611d4d565b92611d896040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b838510611db557505050505090565b84356001600160401b0381116102675782016040818503601f1901126102675760405191611de283611b8a565b6020820135926001600160401b03841161026757604083611e0a886020809881980101611be1565b8352013583820152815201940193611da6565b60443590811515820361026757565b60643590811515820361026757565b60243590811515820361026757565b3590811515820361026757565b6024359063ffffffff8216820361026757565b35906001600160401b038216820361026757565b3d15611ea8573d90611e8f82611bc6565b91611e9d6040519384611ba5565b82523d5f602084013e565b606090565b15611eb457565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fd5b929192611f0582611bc6565b91611f136040519384611ba5565b829481845281830111610267578281602093845f96015e010152565b9080601f83011215610267578151611cde92602001611ef9565b519060ff8216820361026757565b9080601f8301121561026757815191611f6f83611d4d565b92611f7d6040519485611ba5565b80845260208085019160051b830101918383116102675760208101915b838310611fa957505050505090565b82516001600160401b038111610267578201906060828703601f1901126102675760405190611fd782611b5b565b6020830151916001600160401b038311610267576120146060856120038b602080999881990101611f2f565b845260408101518685015201611f49565b6040820152815201920191611f9a565b602081830312610267578051906001600160401b038211610267570181601f820112156102675780519061205782611d4d565b926120656040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b83851061209157505050505090565b84516001600160401b0381116102675782016040818503601f19011261026757604051916120be83611b8a565b6020820151926001600160401b038411610267576040836120e6886020809881980101611f2f565b8352015183820152815201940193612082565b6001600160a01b039091168152604060208201819052611cde92910190611b37565b60070b677fffffffffffffff81146121335760010190565b634e487b7160e01b5f52601160045260245ffd5b1561214e57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b90816020910312610267575180151581036102675790565b6001600160a01b039091168152606060208201819052611cde9391926121dd91840190611b37565b916040818403910152611ce1565b906020828203126102675781516001600160401b03811161026757611cde9201611f57565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213357565b60070b5f190190677fffffffffffffff198212677fffffffffffffff83131761213357565b6001600160a01b03909116815263ffffffff909116602082015260400190565b51906001600160401b03821682036102675756fea26469706673582212204285fecbb5b7c0f1b6d9257eddcf266c329538b09451a3c8aa67780d6932f77a64736f6c634300081c0033290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301b6800014611a8f575080630c05e9e4146119055780630da84768146118f3578063151732ec146117eb5780631b050207146116f9578063201139a2146116aa5780632947221b14611574578063296c60aa146114f8578063382d823c146114ac57806346e16d341461147d578063613d4de81461130e57806361bc221a146112ee5780636b7a547c146112585780636f669da41461123a57806378a5dfd11461120c578063796b96d2146111af5780637c9db0bb1461115957806388b2d58114610de057806393574cd114610d51578063963516e414610cc1578063ad5c4cdd14610c6a578063b2d1788314610b50578063b6a216ae146109ea578063be4efc5714610897578063cb85aa0a146107f1578063d0e30db0146107e4578063d3f831be1461073f578063dd987c20146106b3578063ddbfa271146105ac578063e0421e3914610506578063e236c7a6146102f15763f9ed9b671461017c575f80fd5b3461026757608036600319011261026757610195611b0b565b6024356001600160401b038111610267576101b4903690600401611d64565b9061020260206101c2611e1d565b926101cb611e2c565b936102a5575b60405180938192630b4ac1e760e21b835260018060a01b031696876004840152604060248401526044830190611ce1565b03815f6108015af190811561029a575f9161026b575b50156102675761022457005b5f808080600f6102659560015461023d8160070b61211b565b6001600160401b0316906001600160401b031916176001555af161025f611e7e565b50612147565b005b5f80fd5b61028d915060203d602011610293575b6102858183611ba5565b81019061219d565b5f610218565b503d61027b565b6040513d5f823e3d90fd5b6001546102b48160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556102ec5f808080600f6001600160a01b0387165af161025f611e7e565b6101d1565b346102675760203660031901126102675761030a611b0b565b604051630a97c34560e31b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f905f926103dc575b5090604051809260408201926040835281518094526060830193602060608260051b8601019301945f905b82821061038b57858061038787878382036020850152611c27565b0390f35b919360019193955060206103ca8192605f198b8203018652895190836103ba8351604084526040840190611b37565b9201519084818403910152611c27565b9701920192018694929593919561036c565b9150503d805f833e6103ee8183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019180601f840112156102675782519261042584611d4d565b936104336040519586611ba5565b80855260208086019160051b830101918383116102675760208101915b83831061047f575050505060208201516001600160401b038111610267576104789201611f57565b9082610341565b82516001600160401b038111610267578201906040828703601f19011261026757604051906104ad82611b8a565b60208301516001600160401b038111610267578760206104cf92860101611f2f565b82526040830151916001600160401b038311610267576104f788602080969581960101611f57565b83820152815201920191610450565b34610267576020366003190112610267576004356001600160401b038111610267575f61053a61055c923690600401611be1565b60405180938192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af1801561029a57610387915f9161058a575b50604051918291602083526020830190611ce1565b6105a691503d805f833e61059e8183611ba5565b810190612024565b82610575565b34610267576060366003190112610267576105c5611b0b565b6024356001600160401b038111610267576105e4903690600401611be1565b604435906001600160401b038211610267576106066020923690600401611d64565b926001546106168160070b612210565b6001600160401b0316906001600160401b0319161760015561064c6040519485938493631758efa960e11b8552600485016121b5565b03815f6108015af1801561029a576020915f91610696575b506001546106748160070b612235565b6001600160401b0316906001600160401b031916176001556040519015158152f35b6106ad9150823d8411610293576102858183611ba5565b82610664565b6040366003190112610267576004356001600160401b0381116102675760206106e361070b923690600401611be1565b604051809381926353266bbb60e01b8352306004840152606060248401526064830190611b37565b602435604483015203815f6108005af1801561029a5761072757005b6102659060203d602011610293576102858183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267575f610773610795923690600401611be1565b604051809381926342d9696d60e11b8352602060048401526024830190611b37565b03816108015afa801561029a57610387915f916107c2575b50604051918291602083526020830190611c27565b6107de91503d805f833e6107d68183611ba5565b8101906121eb565b826107ad565b5f36600319011261026757005b346102675760203660031901126102675761080a611b0b565b6040516305431f4560e41b81526001600160a01b0390911660048201525f816024816108015afa801561029a575f90610856575b61038790604051918291602083526020830190611b37565b503d805f833e6108668183611ba5565b810190602081830312610267578051916001600160401b03831161026757610387926108929201611f2f565b61083e565b346102675760603660031901126102675760043563ffffffff81168103610267576108ef60206108c5611e3b565b926108ce611e1d565b936109aa575b60405180938192632efe8a5f60e01b8352306004840161225a565b03815f6108015af190811561029a575f9161098b575b501561094c5761091157005b6001546109208160070b61211b565b6001600160401b0316906001600160401b031916176001556102655f808080600f335af161025f611e7e565b60405162461bcd60e51b81526020600482015260176024820152766661696c656420746f20636c61696d207265776172647360481b6044820152606490fd5b6109a4915060203d602011610293576102858183611ba5565b82610905565b6001546109b98160070b61211b565b6001600160401b0316906001600160401b031916176001556109e55f808080600f335af161025f611e7e565b6108d4565b3461026757602036600319011261026757610a03611b0b565b60405163a66cb60560e01b81526001600160a01b0390911660048201525f816024816108015afa90811561029a575f91610a9f575b506040518091602082016020835281518091526040830190602060408260051b8601019301915f905b828210610a7057505050500390f35b91936001919395506020610a8f8192603f198a82030186528851611b37565b9601920192018594939192610a61565b90503d805f833e610ab08183611ba5565b810190602081830312610267578051906001600160401b03821161026757019080601f83011215610267578151610ae681611d4d565b92610af46040519485611ba5565b81845260208085019260051b820101918383116102675760208201905b838210610b2357505050505081610a38565b81516001600160401b03811161026757602091610b4587848094880101611f2f565b815201910190610b11565b34610267576060366003190112610267576004356001600160401b03811161026757610b80903690600401611be1565b610b88611b21565b6044356001600160401b038111610267576020610bac610bc8923690600401611be1565b9360405180938192632d4ecd4b60e11b835233600484016120f9565b03815f6108015af190811561029a575f91610c4b575b5015610c065760405163b46a8d6160e01b8152915f918391829161055c9190600484016120f9565b60405162461bcd60e51b815260206004820152601e60248201527f6661696c656420746f20736574207769746864726177206164647265737300006044820152606490fd5b610c64915060203d602011610293576102858183611ba5565b83610bde565b3461026757610c985f610c7c36611c9f565b60405163b46a8d6160e01b8152938492839290600484016120f9565b0381836108015af1801561029a57610cae575f80fd5b610267903d805f833e61059e8183611ba5565b34610267576020366003190112610267576004356001600160401b038111610267576020610cf6610d11923690600401611be1565b60405180938192632d4ecd4b60e11b835230600484016120f9565b03815f6108015af1801561029a576020915f91610d34575b506040519015158152f35b610d4b9150823d8411610293576102858183611ba5565b82610d29565b3461026757604036600319011261026757610d936020610d6f611b0b565b610d77611e57565b604051632efe8a5f60e01b81529384928392906004840161225a565b03815f6108015af15f9181610dbf575b50610db7575060205f5b6040519015158152f35b602090610dad565b610dd991925060203d602011610293576102858183611ba5565b9082610da3565b34610267576080366003190112610267576004356001600160401b03811161026757610e10903690600401611be1565b6024356001600160401b038116809103610267576044356001600160401b03811680910361026757606435906001600160401b038211610267578136039060a0600319830112610267575f6020604051610e6981611b8a565b60608152015260405163479239e760e11b81526080600482015294610e92906084870190611b37565b936024860152604485015260031984840301606485015281600401359060221901811215610267578101906024600483013592016001600160401b038311610267578236038113610267578383610f4e608460c0958997889660a05f9b528160a088015288870137888785870101526001600160401b03610f1560248301611e6a565b1660208601526001600160401b03610f2f60448301611e6a565b166040860152610f4160648201611e4a565b1515606086015201611e4a565b15156080830152601f01601f1916010301816108015afa801561029a575f915f91611007575b506040519060408201926040835280518094526020606084019101935f5b818110610fcf575050828094508103602084015260206001600160401b0381610fc48551604086526040860190611b37565b940151169101520390f35b855180516001600160401b0316845260209081015180518286015281015160ff16604085015290950194606090920191600101610f92565b9150503d805f833e6110198183611ba5565b8101906040818303126102675780516001600160401b0381116102675781019082601f8301121561026757815161104f81611d4d565b9261105d6040519485611ba5565b8184526020606081860193028201019085821161026757602001915b8183106110f5575050506020810151906001600160401b038211610267570160408184031261026757604051926110af84611b8a565b81516001600160401b0381116102675782019181601f84011215610267576110e160209284846110e996519101611ef9565b85520161227a565b60208301529082610f74565b8286036060811261026757604080519161110e83611b8a565b6111178661227a565b8352601f1901126102675760609160209160405161113481611b8a565b83870151815261114660408801611f49565b8482015283820152815201920191611079565b34610267576020366003190112610267576004356001600160401b038111610267575f61118d610795923690600401611be1565b604051809381926307ba81ef60e31b8352602060048401526024830190611b37565b34610267576102655f806111f76111e96111c836611c9f565b6040939193519283916020830195632d4ecd4b60e11b8752602484016120f9565b03601f198101835282611ba5565b51906108015afa611206611e7e565b50611ead565b34610267576107955f61121e36611c9f565b6040516326b558ed60e21b8152938492839290600484016120f9565b3461026757604036600319011261026757610d116020610d6f611b0b565b3461026757604036600319011261026757611271611b0b565b6024356001600160401b0381116102675761064c916112966020923690600401611d64565b906001546112a68160070b612210565b6001600160401b0316906001600160401b031916176001556040519384928392630b4ac1e760e21b845260018060a01b03166004840152604060248401526044830190611ce1565b34610267575f36600319011261026757602060015460070b604051908152f35b34610267576080366003190112610267576004356001600160401b03811161026757611341611383913690600401611be1565b611349611b21565b5f611352611e1d565b9261135b611e2c565b93611421575b60405180958192631e7271df60e11b8352602060048401526024830190611b37565b0381836108015af191821561029a57610387935f93611405575b506113b75750604051918291602083526020830190611ce1565b6001546113c68160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b0316308114610575575f808080600f6105a6955af161025f611e7e565b61141a9193503d805f833e61059e8183611ba5565b918461139d565b6001546114308160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b038316308103611463575b50611361565b82808080600f611477955af161025f611e7e565b8561145d565b3461026757610d11602061149036611c9f565b604051632d4ecd4b60e11b8152938492839290600484016120f9565b34610267575f3660031901126102675760405163014d140b60e41b81525f816004816108015afa801561029a57610387915f916107c25750604051918291602083526020830190611c27565b34610267575f8061150e6111e96111c836611c9f565b51906108015af461151d611e7e565b501561152557005b60405162461bcd60e51b815260206004820152602160248201527f6661696c65642064656c656761746543616c6c20746f20707265636f6d70696c6044820152606560f81b6064820152608490fd5b34610267576060366003190112610267576004356001600160401b038111610267576115a76115da913690600401611be1565b5f6115b0611e3b565b916115b9611e1d565b9261166a575b6040518094819263b46a8d6160e01b835230600484016120f9565b0381836108015af190811561029a57610387925f9261164e575b5061160e575b604051918291602083526020830190611ce1565b60015461161d8160070b61211b565b6001600160401b0316906001600160401b031916176001556116495f808080600f335af161025f611e7e565b6115fa565b6116639192503d805f833e61059e8183611ba5565b90836115f4565b6001546116798160070b61211b565b6001600160401b0316906001600160401b031916176001556116a582808080600f335af161025f611e7e565b6115bf565b34610267576020366003190112610267576004356001600160401b038111610267575f6116de61055c923690600401611be1565b6040518093819263b46a8d6160e01b835230600484016120f9565b3461026757608036600319011261026757611712611b0b565b61171a611b21565b906044356001600160401b038111610267575f61173e61177a923690600401611be1565b611746611e2c565b6040805163ad5c4cdd60e01b81526001600160a01b0390961660048701526024860152939283918291906044830190611b37565b038183305af16117d3575b5061178c57005b5f808080600f610265956001546117a58160070b61211b565b6001600160401b031667ffffffffffffffff1991909116176001556001600160a01b03165af161025f611e7e565b6117e6903d805f833e61059e8183611ba5565b611785565b34610267576080366003190112610267576004356001600160401b0381116102675761181b903690600401611be1565b6024356001600160401b03811161026757602061183f611872923690600401611d64565b611847611e1d565b93611850611e2c565b946118b3575b604051631758efa960e11b8152938492839230600485016121b5565b03815f6108015af190811561029a575f91611894575b50156102675761091157005b6118ad915060203d602011610293576102858183611ba5565b82611888565b6001546118c28160070b61211b565b6001600160401b0316906001600160401b031916176001556118ee5f808080600f335af161025f611e7e565b611856565b346102675761055c5f610c7c36611c9f565b34610267576020366003190112610267576004356001600160401b038111610267575f611939611975923690600401611be1565b60606040805161194881611b5b565b8281528260208201520152604051809381926354212a8960e01b8352602060048401526024830190611b37565b03816108015afa801561029a575f906119db575b610387906040519182916020835260406119c76119b28351606060208801526080870190611b37565b6020840151868203601f190184880152611c27565b910151838203601f19016060850152611c27565b503d805f833e6119eb8183611ba5565b810190602081830312610267578051906001600160401b03821161026757016060818303126102675760405190611a2182611b5b565b80516001600160401b0381116102675783611a3d918301611f2f565b825260208101516001600160401b0381116102675783611a5e918301611f57565b60208301526040810151926001600160401b0384116102675761038793611a859201611f57565b6040820152611989565b34610267576020366003190112610267575f8061038792611aae611b0b565b6305431f4560e41b602083019081526001600160a01b03909116602480840191909152825290611adf604482611ba5565b51906108015afa611af7611af1611e7e565b91611ead565b604051918291602083526020830190611b37565b600435906001600160a01b038216820361026757565b602435906001600160a01b038216820361026757565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b606081019081106001600160401b03821117611b7657604052565b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b03821117611b7657604052565b90601f801991011681019081106001600160401b03821117611b7657604052565b6001600160401b038111611b7657601f01601f191660200190565b81601f8201121561026757803590611bf882611bc6565b92611c066040519485611ba5565b8284526020838301011161026757815f926020809301838601378301015290565b9080602083519182815201916020808360051b8301019401925f915b838310611c5257505050505090565b9091929394602080600192601f19858203018652885190604060ff81611c818551606086526060860190611b37565b94868101518786015201511691015297019301930191939290611c43565b906040600319830112610267576004356001600160a01b03811681036102675791602435906001600160401b03821161026757611cde91600401611be1565b90565b9080602083519182815201916020808360051b8301019401925f915b838310611d0c57505050505090565b9091929394602080600192601f198582030186528851908280611d388451604085526040850190611b37565b93015191015297019301930191939290611cfd565b6001600160401b038111611b765760051b60200190565b81601f8201121561026757803590611d7b82611d4d565b92611d896040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b838510611db557505050505090565b84356001600160401b0381116102675782016040818503601f1901126102675760405191611de283611b8a565b6020820135926001600160401b03841161026757604083611e0a886020809881980101611be1565b8352013583820152815201940193611da6565b60443590811515820361026757565b60643590811515820361026757565b60243590811515820361026757565b3590811515820361026757565b6024359063ffffffff8216820361026757565b35906001600160401b038216820361026757565b3d15611ea8573d90611e8f82611bc6565b91611e9d6040519384611ba5565b82523d5f602084013e565b606090565b15611eb457565b60405162461bcd60e51b815260206004820152601f60248201527f6661696c65642073746174696343616c6c20746f20707265636f6d70696c65006044820152606490fd5b929192611f0582611bc6565b91611f136040519384611ba5565b829481845281830111610267578281602093845f96015e010152565b9080601f83011215610267578151611cde92602001611ef9565b519060ff8216820361026757565b9080601f8301121561026757815191611f6f83611d4d565b92611f7d6040519485611ba5565b80845260208085019160051b830101918383116102675760208101915b838310611fa957505050505090565b82516001600160401b038111610267578201906060828703601f1901126102675760405190611fd782611b5b565b6020830151916001600160401b038311610267576120146060856120038b602080999881990101611f2f565b845260408101518685015201611f49565b6040820152815201920191611f9a565b602081830312610267578051906001600160401b038211610267570181601f820112156102675780519061205782611d4d565b926120656040519485611ba5565b82845260208085019360051b830101918183116102675760208101935b83851061209157505050505090565b84516001600160401b0381116102675782016040818503601f19011261026757604051916120be83611b8a565b6020820151926001600160401b038411610267576040836120e6886020809881980101611f2f565b8352015183820152815201940193612082565b6001600160a01b039091168152604060208201819052611cde92910190611b37565b60070b677fffffffffffffff81146121335760010190565b634e487b7160e01b5f52601160045260245ffd5b1561214e57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b90816020910312610267575180151581036102675790565b6001600160a01b039091168152606060208201819052611cde9391926121dd91840190611b37565b916040818403910152611ce1565b906020828203126102675781516001600160401b03811161026757611cde9201611f57565b60070b60010190677fffffffffffffff8213677fffffffffffffff1983121761213357565b60070b5f190190677fffffffffffffff198212677fffffffffffffff83131761213357565b6001600160a01b03909116815263ffffffff909116602082015260400190565b51906001600160401b03821682036102675756fea26469706673582212204285fecbb5b7c0f1b6d9257eddcf266c329538b09451a3c8aa67780d6932f77a64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/DistributionCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/FlashLoan.json b/precompiles/testutil/contracts/FlashLoan.json index 74775848c..2710c5b23 100644 --- a/precompiles/testutil/contracts/FlashLoan.json +++ b/precompiles/testutil/contracts/FlashLoan.json @@ -93,11 +93,11 @@ "type": "function" } ], - "bytecode": "0x608080604052346026575f80546001600160a01b03191633179055610a2d908161002b8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081638da5cb5b14610713575080638f5184301461066d5780639b4f21a91461044a5763b86219241461004a575f80fd5b610053366107c1565b919061006960018060a01b03835416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b03919091169290602081604481875afa8015610317578390610416575b6100b391503411156108f4565b6040516370a0823160e01b815230600482015290602082602481875afa9182156103175783926103e2575b506040516323b872dd60e01b815233600482015230602482015234604482015260208160648187895af19081156103b857906101219185916103c3575b50610939565b6040516370a0823160e01b815230600482015291602083602481885afa9283156103b8578493610380575b5090610168610185936101626020943490610996565b146109b7565b604051809381926353266bbb60e01b83523490306004850161081c565b0381856108005af190811561035657906101a6918391610361575b5061085d565b6040516370a0823160e01b815230600482015291602083602481845afa928315610356578293610322575b5060405163a9059cbb60e01b815233600482015234602482015260208160448186865af18015610317576024939260209290916102ec575b506040516370a0823160e01b815230600482015293849182905afa9182156102df5781926102a7575b5034830392831161029357500361024e57602060405160018152f35b60405162461bcd60e51b815260206004820152601b60248201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152606490fd5b634e487b7160e01b81526011600452602490fd5b9091506020813d6020116102d7575b816102c360209383610735565b810103126102d35751905f610232565b5f80fd5b3d91506102b6565b50604051903d90823e3d90fd5b61030b90833d8511610310575b6103038183610735565b810190610804565b610209565b503d6102f9565b6040513d85823e3d90fd5b9092506020813d60201161034e575b8161033e60209383610735565b810103126102d35751915f6101d1565b3d9150610331565b6040513d84823e3d90fd5b61037a915060203d602011610310576103038183610735565b5f6101a0565b9250906020833d6020116103b0575b8161039c60209383610735565b810103126102d3579151919061016861014c565b3d915061038f565b6040513d86823e3d90fd5b6103dc915060203d602011610310576103038183610735565b5f61011b565b9091506020813d60201161040e575b816103fe60209383610735565b810103126102d35751905f6100de565b3d91506103f1565b506020813d602011610442575b8161043060209383610735565b810103126102d3576100b390516100a6565b3d9150610423565b610453366107c1565b9061046860018060a01b035f5416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b039190911690602081604481855afa80156105df575f90610639575b6104b191503411156108f4565b6040516370a0823160e01b8152306004820152602081602481855afa9081156105df575f91610607575b506040516323b872dd60e01b8152336004820152306024820152346044820152916020836064815f855af19081156105df576105226020926024955f916105ea5750610939565b6040516370a0823160e01b815230600482015293849182905afa9182156105df575f926105a9575b509061016261055a923490610996565b303b156102d3575f61058391604051809381926308f5184360e41b83523490306004850161081c565b038183305af1610599575b602060405160018152f35b5f6105a391610735565b5f61058e565b91506020823d6020116105d7575b816105c460209383610735565b810103126102d35790519061016261054a565b3d91506105b7565b6040513d5f823e3d90fd5b6106019150843d8611610310576103038183610735565b8761011b565b90506020813d602011610631575b8161062260209383610735565b810103126102d35751836104db565b3d9150610615565b506020813d602011610665575b8161065360209383610735565b810103126102d3576104b190516104a4565b3d9150610646565b346102d35760603660031901126102d3576004356001600160a01b03811681036102d35760243567ffffffffffffffff81116102d3576106d6916106b7602092369060040161076b565b6040516353266bbb60e01b81529384928392604435916004850161081c565b03815f6108005af180156105df576102d3915f916106f4575061085d565b61070d915060203d602011610310576103038183610735565b826101a0565b346102d3575f3660031901126102d3575f546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075757604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156102d35780359067ffffffffffffffff821161075757604051926107a0601f8401601f191660200185610735565b828452602083830101116102d357815f926020809301838601378301015290565b9060406003198301126102d3576004356001600160a01b03811681036102d357916024359067ffffffffffffffff82116102d3576108019160040161076b565b90565b908160209103126102d3575180151581036102d35790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b1561086457565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fd5b156108a557565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b156108fb57565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b1561094057565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b919082018092116109a357565b634e487b7160e01b5f52601160045260245ffd5b156109be57565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fdfea2646970667358221220d02b60367bcc46753c839fb50f1a05ab25329578122c2a62c8c25e6d33d6582964736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081638da5cb5b14610713575080638f5184301461066d5780639b4f21a91461044a5763b86219241461004a575f80fd5b610053366107c1565b919061006960018060a01b03835416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b03919091169290602081604481875afa8015610317578390610416575b6100b391503411156108f4565b6040516370a0823160e01b815230600482015290602082602481875afa9182156103175783926103e2575b506040516323b872dd60e01b815233600482015230602482015234604482015260208160648187895af19081156103b857906101219185916103c3575b50610939565b6040516370a0823160e01b815230600482015291602083602481885afa9283156103b8578493610380575b5090610168610185936101626020943490610996565b146109b7565b604051809381926353266bbb60e01b83523490306004850161081c565b0381856108005af190811561035657906101a6918391610361575b5061085d565b6040516370a0823160e01b815230600482015291602083602481845afa928315610356578293610322575b5060405163a9059cbb60e01b815233600482015234602482015260208160448186865af18015610317576024939260209290916102ec575b506040516370a0823160e01b815230600482015293849182905afa9182156102df5781926102a7575b5034830392831161029357500361024e57602060405160018152f35b60405162461bcd60e51b815260206004820152601b60248201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152606490fd5b634e487b7160e01b81526011600452602490fd5b9091506020813d6020116102d7575b816102c360209383610735565b810103126102d35751905f610232565b5f80fd5b3d91506102b6565b50604051903d90823e3d90fd5b61030b90833d8511610310575b6103038183610735565b810190610804565b610209565b503d6102f9565b6040513d85823e3d90fd5b9092506020813d60201161034e575b8161033e60209383610735565b810103126102d35751915f6101d1565b3d9150610331565b6040513d84823e3d90fd5b61037a915060203d602011610310576103038183610735565b5f6101a0565b9250906020833d6020116103b0575b8161039c60209383610735565b810103126102d3579151919061016861014c565b3d915061038f565b6040513d86823e3d90fd5b6103dc915060203d602011610310576103038183610735565b5f61011b565b9091506020813d60201161040e575b816103fe60209383610735565b810103126102d35751905f6100de565b3d91506103f1565b506020813d602011610442575b8161043060209383610735565b810103126102d3576100b390516100a6565b3d9150610423565b610453366107c1565b9061046860018060a01b035f5416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b039190911690602081604481855afa80156105df575f90610639575b6104b191503411156108f4565b6040516370a0823160e01b8152306004820152602081602481855afa9081156105df575f91610607575b506040516323b872dd60e01b8152336004820152306024820152346044820152916020836064815f855af19081156105df576105226020926024955f916105ea5750610939565b6040516370a0823160e01b815230600482015293849182905afa9182156105df575f926105a9575b509061016261055a923490610996565b303b156102d3575f61058391604051809381926308f5184360e41b83523490306004850161081c565b038183305af1610599575b602060405160018152f35b5f6105a391610735565b5f61058e565b91506020823d6020116105d7575b816105c460209383610735565b810103126102d35790519061016261054a565b3d91506105b7565b6040513d5f823e3d90fd5b6106019150843d8611610310576103038183610735565b8761011b565b90506020813d602011610631575b8161062260209383610735565b810103126102d35751836104db565b3d9150610615565b506020813d602011610665575b8161065360209383610735565b810103126102d3576104b190516104a4565b3d9150610646565b346102d35760603660031901126102d3576004356001600160a01b03811681036102d35760243567ffffffffffffffff81116102d3576106d6916106b7602092369060040161076b565b6040516353266bbb60e01b81529384928392604435916004850161081c565b03815f6108005af180156105df576102d3915f916106f4575061085d565b61070d915060203d602011610310576103038183610735565b826101a0565b346102d3575f3660031901126102d3575f546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075757604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156102d35780359067ffffffffffffffff821161075757604051926107a0601f8401601f191660200185610735565b828452602083830101116102d357815f926020809301838601378301015290565b9060406003198301126102d3576004356001600160a01b03811681036102d357916024359067ffffffffffffffff82116102d3576108019160040161076b565b90565b908160209103126102d3575180151581036102d35790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b1561086457565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fd5b156108a557565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b156108fb57565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b1561094057565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b919082018092116109a357565b634e487b7160e01b5f52601160045260245ffd5b156109be57565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fdfea2646970667358221220d02b60367bcc46753c839fb50f1a05ab25329578122c2a62c8c25e6d33d6582964736f6c634300081c0033", + "bytecode": "0x608080604052346026575f80546001600160a01b03191633179055610a2d908161002b8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081638da5cb5b14610713575080638f5184301461066d5780639b4f21a91461044a5763b86219241461004a575f80fd5b610053366107c1565b919061006960018060a01b03835416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b03919091169290602081604481875afa8015610317578390610416575b6100b391503411156108f4565b6040516370a0823160e01b815230600482015290602082602481875afa9182156103175783926103e2575b506040516323b872dd60e01b815233600482015230602482015234604482015260208160648187895af19081156103b857906101219185916103c3575b50610939565b6040516370a0823160e01b815230600482015291602083602481885afa9283156103b8578493610380575b5090610168610185936101626020943490610996565b146109b7565b604051809381926353266bbb60e01b83523490306004850161081c565b0381856108005af190811561035657906101a6918391610361575b5061085d565b6040516370a0823160e01b815230600482015291602083602481845afa928315610356578293610322575b5060405163a9059cbb60e01b815233600482015234602482015260208160448186865af18015610317576024939260209290916102ec575b506040516370a0823160e01b815230600482015293849182905afa9182156102df5781926102a7575b5034830392831161029357500361024e57602060405160018152f35b60405162461bcd60e51b815260206004820152601b60248201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152606490fd5b634e487b7160e01b81526011600452602490fd5b9091506020813d6020116102d7575b816102c360209383610735565b810103126102d35751905f610232565b5f80fd5b3d91506102b6565b50604051903d90823e3d90fd5b61030b90833d8511610310575b6103038183610735565b810190610804565b610209565b503d6102f9565b6040513d85823e3d90fd5b9092506020813d60201161034e575b8161033e60209383610735565b810103126102d35751915f6101d1565b3d9150610331565b6040513d84823e3d90fd5b61037a915060203d602011610310576103038183610735565b5f6101a0565b9250906020833d6020116103b0575b8161039c60209383610735565b810103126102d3579151919061016861014c565b3d915061038f565b6040513d86823e3d90fd5b6103dc915060203d602011610310576103038183610735565b5f61011b565b9091506020813d60201161040e575b816103fe60209383610735565b810103126102d35751905f6100de565b3d91506103f1565b506020813d602011610442575b8161043060209383610735565b810103126102d3576100b390516100a6565b3d9150610423565b610453366107c1565b9061046860018060a01b035f5416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b039190911690602081604481855afa80156105df575f90610639575b6104b191503411156108f4565b6040516370a0823160e01b8152306004820152602081602481855afa9081156105df575f91610607575b506040516323b872dd60e01b8152336004820152306024820152346044820152916020836064815f855af19081156105df576105226020926024955f916105ea5750610939565b6040516370a0823160e01b815230600482015293849182905afa9182156105df575f926105a9575b509061016261055a923490610996565b303b156102d3575f61058391604051809381926308f5184360e41b83523490306004850161081c565b038183305af1610599575b602060405160018152f35b5f6105a391610735565b5f61058e565b91506020823d6020116105d7575b816105c460209383610735565b810103126102d35790519061016261054a565b3d91506105b7565b6040513d5f823e3d90fd5b6106019150843d8611610310576103038183610735565b8761011b565b90506020813d602011610631575b8161062260209383610735565b810103126102d35751836104db565b3d9150610615565b506020813d602011610665575b8161065360209383610735565b810103126102d3576104b190516104a4565b3d9150610646565b346102d35760603660031901126102d3576004356001600160a01b03811681036102d35760243567ffffffffffffffff81116102d3576106d6916106b7602092369060040161076b565b6040516353266bbb60e01b81529384928392604435916004850161081c565b03815f6108005af180156105df576102d3915f916106f4575061085d565b61070d915060203d602011610310576103038183610735565b826101a0565b346102d3575f3660031901126102d3575f546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075757604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156102d35780359067ffffffffffffffff821161075757604051926107a0601f8401601f191660200185610735565b828452602083830101116102d357815f926020809301838601378301015290565b9060406003198301126102d3576004356001600160a01b03811681036102d357916024359067ffffffffffffffff82116102d3576108019160040161076b565b90565b908160209103126102d3575180151581036102d35790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b1561086457565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fd5b156108a557565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b156108fb57565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b1561094057565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b919082018092116109a357565b634e487b7160e01b5f52601160045260245ffd5b156109be57565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fdfea264697066735822122047d7fa8a9914fc70e1368b6c01048c4065dd6735d1dffce3ac30ced869e109d164736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081638da5cb5b14610713575080638f5184301461066d5780639b4f21a91461044a5763b86219241461004a575f80fd5b610053366107c1565b919061006960018060a01b03835416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b03919091169290602081604481875afa8015610317578390610416575b6100b391503411156108f4565b6040516370a0823160e01b815230600482015290602082602481875afa9182156103175783926103e2575b506040516323b872dd60e01b815233600482015230602482015234604482015260208160648187895af19081156103b857906101219185916103c3575b50610939565b6040516370a0823160e01b815230600482015291602083602481885afa9283156103b8578493610380575b5090610168610185936101626020943490610996565b146109b7565b604051809381926353266bbb60e01b83523490306004850161081c565b0381856108005af190811561035657906101a6918391610361575b5061085d565b6040516370a0823160e01b815230600482015291602083602481845afa928315610356578293610322575b5060405163a9059cbb60e01b815233600482015234602482015260208160448186865af18015610317576024939260209290916102ec575b506040516370a0823160e01b815230600482015293849182905afa9182156102df5781926102a7575b5034830392831161029357500361024e57602060405160018152f35b60405162461bcd60e51b815260206004820152601b60248201527f466c617368206c6f616e2072657061796d656e74206661696c656400000000006044820152606490fd5b634e487b7160e01b81526011600452602490fd5b9091506020813d6020116102d7575b816102c360209383610735565b810103126102d35751905f610232565b5f80fd5b3d91506102b6565b50604051903d90823e3d90fd5b61030b90833d8511610310575b6103038183610735565b810190610804565b610209565b503d6102f9565b6040513d85823e3d90fd5b9092506020813d60201161034e575b8161033e60209383610735565b810103126102d35751915f6101d1565b3d9150610331565b6040513d84823e3d90fd5b61037a915060203d602011610310576103038183610735565b5f6101a0565b9250906020833d6020116103b0575b8161039c60209383610735565b810103126102d3579151919061016861014c565b3d915061038f565b6040513d86823e3d90fd5b6103dc915060203d602011610310576103038183610735565b5f61011b565b9091506020813d60201161040e575b816103fe60209383610735565b810103126102d35751905f6100de565b3d91506103f1565b506020813d602011610442575b8161043060209383610735565b810103126102d3576100b390516100a6565b3d9150610423565b610453366107c1565b9061046860018060a01b035f5416331461089e565b604051636eb1769f60e11b81523360048201523060248201526001600160a01b039190911690602081604481855afa80156105df575f90610639575b6104b191503411156108f4565b6040516370a0823160e01b8152306004820152602081602481855afa9081156105df575f91610607575b506040516323b872dd60e01b8152336004820152306024820152346044820152916020836064815f855af19081156105df576105226020926024955f916105ea5750610939565b6040516370a0823160e01b815230600482015293849182905afa9182156105df575f926105a9575b509061016261055a923490610996565b303b156102d3575f61058391604051809381926308f5184360e41b83523490306004850161081c565b038183305af1610599575b602060405160018152f35b5f6105a391610735565b5f61058e565b91506020823d6020116105d7575b816105c460209383610735565b810103126102d35790519061016261054a565b3d91506105b7565b6040513d5f823e3d90fd5b6106019150843d8611610310576103038183610735565b8761011b565b90506020813d602011610631575b8161062260209383610735565b810103126102d35751836104db565b3d9150610615565b506020813d602011610665575b8161065360209383610735565b810103126102d3576104b190516104a4565b3d9150610646565b346102d35760603660031901126102d3576004356001600160a01b03811681036102d35760243567ffffffffffffffff81116102d3576106d6916106b7602092369060040161076b565b6040516353266bbb60e01b81529384928392604435916004850161081c565b03815f6108005af180156105df576102d3915f916106f4575061085d565b61070d915060203d602011610310576103038183610735565b826101a0565b346102d3575f3660031901126102d3575f546001600160a01b03168152602090f35b90601f8019910116810190811067ffffffffffffffff82111761075757604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156102d35780359067ffffffffffffffff821161075757604051926107a0601f8401601f191660200185610735565b828452602083830101116102d357815f926020809301838601378301015290565b9060406003198301126102d3576004356001600160a01b03811681036102d357916024359067ffffffffffffffff82116102d3576108019160040161076b565b90565b908160209103126102d3575180151581036102d35790565b939291602060809160409360018060a01b0316875260608288015280519182918260608a0152018388015e5f828288010152601f8019910116850101930152565b1561086457565b60405162461bcd60e51b81526020600482015260126024820152716661696c656420746f2064656c656761746560701b6044820152606490fd5b156108a557565b60405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608490fd5b156108fb57565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b1561094057565b60405162461bcd60e51b815260206004820152602860248201527f4661696c656420746f207472616e7366657220746f6b656e7320666f7220666c60448201526730b9b4103637b0b760c11b6064820152608490fd5b919082018092116109a357565b634e487b7160e01b5f52601160045260245ffd5b156109be57565b60405162461bcd60e51b8152602060048201526011602482015270119b185cda081b1bd85b8819985a5b1959607a1b6044820152606490fdfea264697066735822122047d7fa8a9914fc70e1368b6c01048c4065dd6735d1dffce3ac30ced869e109d164736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/FlashLoan.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/GovCaller.json b/precompiles/testutil/contracts/GovCaller.json index aa440bc86..fb5ebf0f7 100644 --- a/precompiles/testutil/contracts/GovCaller.json +++ b/precompiles/testutil/contracts/GovCaller.json @@ -652,11 +652,11 @@ "type": "receive" } ], - "bytecode": "0x60808060405234601557611c86908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630f6265fb146110e9578063258691e214610fcc57806326c11ffa14610f3f5780635e615a6b14610b0f57806361bc221a14610af057806361f09ad214610a8057806372ff5ec4146109315780637726ece0146107f55780638e7431d31461077557806391d6d8e71461062557806397fd84d2146105f1578063b94c9822146103db578063bc7bdf751461032a578063d0e30db01461031d578063e8702c34146102505763ed6c08f70361000e5760a03660031901126101f3576100e26115be565b6100ea6115d4565b604435916001600160401b0383116101f35761010c60209336906004016117b1565b9390610116611703565b9361011f611712565b9461020a575b610144604051968793849363592581bb60e11b85523060048601611c23565b03815f6108055af19182156101ff575f926101bf575b6020935061016e575b506040519015158152f35b5f808080600f6101b99582546101868160070b6117f8565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b3611810565b506119b0565b5f610163565b91506020833d6020116101f7575b816101da60209383611664565b810103126101f3576101ed60209361183f565b9161015a565b5f80fd5b3d91506101cd565b6040513d5f823e3d90fd5b5f546102188160070b6117f8565b6001600160401b0316906001600160401b031916175f5561024b5f808080600f60018060a01b038a165af16101b3611810565b610125565b60603660031901126101f3576102646115be565b6024356001600160401b0381116101f357610283903690600401611600565b9190604435916001600160401b0383116101f3576102c66102aa60209436906004016117b1565b90604051968795869563a8fdc91960e01b875260048701611bef565b03815f6108055af180156101ff576020915f916102f0575b506001600160401b0360405191168152f35b6103109150823d8411610316575b6103088183611664565b810190611b08565b826102de565b503d6102fe565b5f3660031901126101f357005b60403660031901126101f35761033e6115ea565b6024356001600160401b0381116101f35761035f60209136906004016117b1565b9261037f604051948593849363592581bb60e11b85523060048601611c23565b03815f6108055af180156101ff575f906103a1575b6020906040519015158152f35b506020813d6020116103d3575b816103bb60209383611664565b810103126101f3576103ce60209161183f565b610394565b3d91506103ae565b346101f35760603660031901126101f3576103f46115be565b6024356001600160401b0381116101f3576104139036906004016116d6565b90604435916001600160401b0383116101f357366023840112156101f357826004013561043f816117e1565b9361044d6040519586611664565b8185526024602086019260051b820101903682116101f35760248101925b82841061058657505050505f549160018360070b0192677fffffffffffffff198412677fffffffffffffff851317610538576020936001600160401b0316906001600160401b031916175f556104d56040519485938493631758efa960e11b85526004850161191d565b03815f6108015af19081156101ff575f9161054c575b505f54600781900b5f19019190677fffffffffffffff198312677fffffffffffffff841317610538576020926001600160401b0316906001600160401b031916175f556040519015158152f35b634e487b7160e01b5f52601160045260245ffd5b90506020813d60201161057e575b8161056760209383611664565b810103126101f3576105789061183f565b816104eb565b3d915061055a565b83356001600160401b0381116101f3578201604060231982360301126101f357604051916105b38361162d565b6024820135926001600160401b0384116101f3576044602094936105de8695602436918401016116d6565b835201358382015281520193019261046b565b60203660031901126101f35761037f602061060a6115ea565b6040518093819263519f184360e11b8352306004840161184c565b60803660031901126101f3576004356001600160401b0381116101f357610650903690600401611600565b6024356001600160401b0381116101f35761067160209136906004016117b1565b9290936106aa61067f6116f4565b94610688611703565b95610737575b60405163a8fdc91960e01b815296879485943060048701611bef565b03815f6108055af19081156101ff576020925f92610718575b506106da575b6001600160401b0360405191168152f35b5f546106e88160070b6117f8565b6001600160401b0316906001600160401b031916175f556107135f808080600f335af16101b3611810565b6106c9565b610730919250833d8511610316576103088183611664565b90836106c3565b5f546107458160070b6117f8565b6001600160401b0316906001600160401b031916175f556107705f808080600f335af16101b3611810565b61068e565b60603660031901126101f3576107896115be565b6107916115d4565b604435906001600160401b0382116101f3576001600160401b039261037f6107bf60209436906004016117b1565b604051968795869563592581bb60e11b875260018060a01b03166004870152166024850152606060448501526064840191611b47565b60a03660031901126101f3576108096115be565b6024356001600160401b0381116101f357610828903690600401611600565b90916044356001600160401b0381116101f35761084b60209136906004016117b1565b939094610884610859611703565b95610862611712565b966108eb575b60405163a8fdc91960e01b815297889485943060048701611bef565b03815f6108055af19182156101ff576020935f936108cc575b506108b457506001600160401b0360405191168152f35b5f808080600f6103109582546101868160070b6117f8565b6108e4919350843d8611610316576103088183611664565b918461089d565b5f546108f98160070b6117f8565b6001600160401b0316906001600160401b031916175f5561092c5f808080600f60018060a01b038c165af16101b3611810565b610868565b60803660031901126101f3576109456115ea565b602435906001600160401b0382116101f35761096760209236906004016117b1565b92906109716116f4565b9261097a611703565b93610a42575b61099f604051958693849363592581bb60e11b85523060048601611c23565b03815f6108055af19081156101ff575f91610a06575b602092506109c8575b6040519015158152f35b5f546109d68160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a015f808080600f335af16101b3611810565b6109be565b90506020823d602011610a3a575b81610a2160209383611664565b810103126101f357610a3460209261183f565b906109b5565b3d9150610a14565b5f54610a508160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a7b5f808080600f335af16101b3611810565b610980565b60403660031901126101f3576004356001600160401b0381116101f357610aab903690600401611600565b602435906001600160401b0382116101f3576102c692610ad160209336906004016117b1565b60405163a8fdc91960e01b815295869485949193913060048701611bef565b346101f3575f3660031901126101f35760205f5460070b604051908152f35b346101f3575f3660031901126101f35760606101e0604051610b3081611648565b5f81528260208201525f604082015282808201528260808201528260a08201528260c08201528260e0820152826101008201525f61012082015282610140820152826101608201525f6101808201525f6101a08201525f6101c08201520152604051635e615a6b60e01b81525f816004816108055afa80156101ff575f90610d18575b610d149060405191829160208352805160070b60208401526101e0610cd7610cbf610c98610c80610c69610c53610c3d610c27610c028c61022060208d01519161020060408201520190611745565b8c606060408d015160070b91015260608b01518d6080601f1982850301910152611721565b60808a01518c8203601f190160a08e0152611721565b60a08901518b8203601f190160c08d0152611721565b60c08801518a8203601f190160e08c0152611721565b60e0870151898203601f19016101008b0152611721565b610100860151888203601f19016101208a0152611721565b61012085015160070b610140880152610140850151601f1988830301610160890152611721565b610160840151868203601f1901610180880152611745565b9161018081015115156101a08601526101a081015115156101c08601526101c08101511515828601520151601f1984830301610200850152611721565b0390f35b503d805f833e610d288183611664565b8101906020818303126101f3578051906001600160401b0382116101f35701610200818303126101f35760405190610d5f82611648565b610d68816119fb565b825260208101516001600160401b0381116101f35783610d89918301611a4f565b6020830152610d9a604082016119fb565b604083015260608101516001600160401b0381116101f35783610dbe918301611a09565b606083015260808101516001600160401b0381116101f35783610de2918301611a09565b608083015260a08101516001600160401b0381116101f35783610e06918301611a09565b60a083015260c08101516001600160401b0381116101f35783610e2a918301611a09565b60c083015260e08101516001600160401b0381116101f35783610e4e918301611a09565b60e08301526101008101516001600160401b0381116101f35783610e73918301611a09565b610100830152610e8661012082016119fb565b6101208301526101408101516001600160401b0381116101f35783610eac918301611a09565b6101408301526101608101516001600160401b0381116101f35783610ed2918301611a4f565b610160830152610ee5610180820161183f565b610180830152610ef86101a0820161183f565b6101a0830152610f0b6101c0820161183f565b6101c08301526101e0810151926001600160401b0384116101f357610d1493610f349201611a09565b6101e0820152610bb3565b60603660031901126101f357610f536115ea565b60243580151581036101f357602061099f92610f6d6116f4565b92610f8e575b6040518094819263519f184360e11b8352306004840161184c565b5f54610f9c8160070b6117f8565b6001600160401b0316906001600160401b031916175f55610fc75f808080600f335af16101b3611810565b610f73565b60803660031901126101f357611020610fe36115be565b610feb6115d4565b906020610ff66116f4565b92610fff611703565b936110a3575b6040518095819263519f184360e11b8352306004840161184c565b03815f6108055af19182156101ff575f92611067575b6020935061104957506040519015158152f35b5f808080600f6110619582546101868160070b6117f8565b82610163565b91506020833d60201161109b575b8161108260209383611664565b810103126101f35761109560209361183f565b91611036565b3d9150611075565b5f546110b18160070b6117f8565b6001600160401b0316906001600160401b031916175f556110e45f808080600f60018060a01b0389165af16101b3611810565b611005565b60803660031901126101f3576110fd6115be565b6111056115d4565b6044356001600160401b0381116101f357611124903690600401611600565b6064939193356001600160401b0381116101f3576111469036906004016116d6565b9160018060a01b0316925f5461115e8160070b6117f8565b6001600160401b0316906001600160401b031916175f555f8080806001885af1611186611810565b501561156f5760206111ad916040518093819263519f184360e11b8352306004840161184c565b03815f6108055af15f9181611533575b506112a1576111ca61186f565b6308c379a01461121a575b60405162461bcd60e51b815260206004820152601e60248201527f63616e63656c50726f706f73616c206661696c65642073696c656e746c7900006044820152606490fd5b61122261188a565b8061122d57506111d5565b602061127d603761129d9360405193849176031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b828401528051918291018484015e81015f838201520301601f198101835282611664565b60405162461bcd60e51b8152602060048201529182916024830190611721565b0390fd5b156114ee575f546112b48160070b6117f8565b6001600160401b031667ffffffffffffffff1991909116175f556040805194906112de8187611664565b60018652601f19015f5b8181106114b65761134a60208888888861131089604051926113098461162d565b36916116a0565b8152600285820152611321846118fc565b5261132b836118fc565b505f604051809681958294635ca64c1160e11b8452866004850161191d565b03925af15f918161147a575b506114265761136361186f565b6308c379a0146113bd575b60405162461bcd60e51b815260206004820152602160248201527f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c6044820152607960f81b6064820152608490fd5b6113c561188a565b806113d0575061136e565b602061127d603a61129d936040519384917f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000828401528051918291018484015e81015f838201520301601f198101835282611664565b1561143657602060405160018152f35b606460405162461bcd60e51b815260206004820152602060248201527f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c73656044820152fd5b9091506020813d6020116114ae575b8161149660209383611664565b810103126101f3576114a79061183f565b9082611356565b3d9150611489565b6020906040516114c58161162d565b606081525f8382015282828a010152016112e8565b634e487b7160e01b5f52604160045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c73650000006044820152606490fd5b9091506020813d602011611567575b8161154f60209383611664565b810103126101f3576115609061183f565b90866111bd565b3d9150611542565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f6044820152603960f91b6064820152608490fd5b600435906001600160a01b03821682036101f357565b602435906001600160401b03821682036101f357565b600435906001600160401b03821682036101f357565b9181601f840112156101f3578235916001600160401b0383116101f357602083818601950101116101f357565b604081019081106001600160401b038211176114da57604052565b61020081019081106001600160401b038211176114da57604052565b90601f801991011681019081106001600160401b038211176114da57604052565b6001600160401b0381116114da57601f01601f191660200190565b9291926116ac82611685565b916116ba6040519384611664565b8294818452818301116101f3578281602093845f960137010152565b9080601f830112156101f3578160206116f1933591016116a0565b90565b6044359081151582036101f357565b6064359081151582036101f357565b6084359081151582036101f357565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9080602083519182815201916020808360051b8301019401925f915b83831061177057505050505090565b9091929394602080600192601f19858203018652885190828061179c8451604085526040850190611721565b93015191015297019301930191939290611761565b9181601f840112156101f3578235916001600160401b0383116101f3576020808501948460051b0101116101f357565b6001600160401b0381116114da5760051b60200190565b60070b677fffffffffffffff81146105385760010190565b3d1561183a573d9061182182611685565b9161182f6040519384611664565b82523d5f602084013e565b606090565b519081151582036101f357565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b5f9060033d1161187b57565b905060045f803e5f5160e01c90565b5f60443d106116f1576040513d600319016004823e8051913d60248401116001600160401b038411176118f657828201928351916001600160401b0383116118ee573d840160031901858401602001116118ee57506116f192910160200190611664565b949350505050565b92915050565b8051156119095760200190565b634e487b7160e01b5f52603260045260245ffd5b9161193d9160018060a01b03168352606060208401526060830190611721565b906040818303910152815180825260208201916020808360051b8301019401925f915b83831061196f57505050505090565b9091929394602080600192601f19858203018652885190828061199b8451604085526040850190611721565b93015191015297019301930191939290611960565b156119b757565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f357565b81601f820112156101f357805190611a2082611685565b92611a2e6040519485611664565b828452602083830101116101f357815f9260208093018386015e8301015290565b81601f820112156101f357805190611a66826117e1565b92611a746040519485611664565b82845260208085019360051b830101918183116101f35760208101935b838510611aa057505050505090565b84516001600160401b0381116101f35782016040818503601f1901126101f35760405191611acd8361162d565b6020820151926001600160401b0384116101f357604083611af5886020809881980101611a09565b8352015183820152815201940193611a91565b908160209103126101f357516001600160401b03811681036101f35790565b908060209392818452848401375f828201840152601f01601f1916010190565b906020838281520160208260051b85010193835f915b848310611b6d5750505050505090565b909192939495601f198282030185528635603e19843603018112156101f35783018035601e19823603018112156101f357810190602082359201906001600160401b0383116101f35782360382136101f35783602080611bdb8196958296604060019a526040860191611b27565b930135910152980196950193019190611b5d565b93916116f19593611c159260018060a01b03168652606060208701526060860191611b27565b926040818503910152611b47565b6001600160401b036116f1959360609360018060a01b031683521660208201528160408201520191611b4756fea26469706673582212203c62aeaa5dee2e27869ae5dc1f968f5f3a5c88ccaaa26be5c987422199ebf18a64736f6c634300081c0033", - "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630f6265fb146110e9578063258691e214610fcc57806326c11ffa14610f3f5780635e615a6b14610b0f57806361bc221a14610af057806361f09ad214610a8057806372ff5ec4146109315780637726ece0146107f55780638e7431d31461077557806391d6d8e71461062557806397fd84d2146105f1578063b94c9822146103db578063bc7bdf751461032a578063d0e30db01461031d578063e8702c34146102505763ed6c08f70361000e5760a03660031901126101f3576100e26115be565b6100ea6115d4565b604435916001600160401b0383116101f35761010c60209336906004016117b1565b9390610116611703565b9361011f611712565b9461020a575b610144604051968793849363592581bb60e11b85523060048601611c23565b03815f6108055af19182156101ff575f926101bf575b6020935061016e575b506040519015158152f35b5f808080600f6101b99582546101868160070b6117f8565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b3611810565b506119b0565b5f610163565b91506020833d6020116101f7575b816101da60209383611664565b810103126101f3576101ed60209361183f565b9161015a565b5f80fd5b3d91506101cd565b6040513d5f823e3d90fd5b5f546102188160070b6117f8565b6001600160401b0316906001600160401b031916175f5561024b5f808080600f60018060a01b038a165af16101b3611810565b610125565b60603660031901126101f3576102646115be565b6024356001600160401b0381116101f357610283903690600401611600565b9190604435916001600160401b0383116101f3576102c66102aa60209436906004016117b1565b90604051968795869563a8fdc91960e01b875260048701611bef565b03815f6108055af180156101ff576020915f916102f0575b506001600160401b0360405191168152f35b6103109150823d8411610316575b6103088183611664565b810190611b08565b826102de565b503d6102fe565b5f3660031901126101f357005b60403660031901126101f35761033e6115ea565b6024356001600160401b0381116101f35761035f60209136906004016117b1565b9261037f604051948593849363592581bb60e11b85523060048601611c23565b03815f6108055af180156101ff575f906103a1575b6020906040519015158152f35b506020813d6020116103d3575b816103bb60209383611664565b810103126101f3576103ce60209161183f565b610394565b3d91506103ae565b346101f35760603660031901126101f3576103f46115be565b6024356001600160401b0381116101f3576104139036906004016116d6565b90604435916001600160401b0383116101f357366023840112156101f357826004013561043f816117e1565b9361044d6040519586611664565b8185526024602086019260051b820101903682116101f35760248101925b82841061058657505050505f549160018360070b0192677fffffffffffffff198412677fffffffffffffff851317610538576020936001600160401b0316906001600160401b031916175f556104d56040519485938493631758efa960e11b85526004850161191d565b03815f6108015af19081156101ff575f9161054c575b505f54600781900b5f19019190677fffffffffffffff198312677fffffffffffffff841317610538576020926001600160401b0316906001600160401b031916175f556040519015158152f35b634e487b7160e01b5f52601160045260245ffd5b90506020813d60201161057e575b8161056760209383611664565b810103126101f3576105789061183f565b816104eb565b3d915061055a565b83356001600160401b0381116101f3578201604060231982360301126101f357604051916105b38361162d565b6024820135926001600160401b0384116101f3576044602094936105de8695602436918401016116d6565b835201358382015281520193019261046b565b60203660031901126101f35761037f602061060a6115ea565b6040518093819263519f184360e11b8352306004840161184c565b60803660031901126101f3576004356001600160401b0381116101f357610650903690600401611600565b6024356001600160401b0381116101f35761067160209136906004016117b1565b9290936106aa61067f6116f4565b94610688611703565b95610737575b60405163a8fdc91960e01b815296879485943060048701611bef565b03815f6108055af19081156101ff576020925f92610718575b506106da575b6001600160401b0360405191168152f35b5f546106e88160070b6117f8565b6001600160401b0316906001600160401b031916175f556107135f808080600f335af16101b3611810565b6106c9565b610730919250833d8511610316576103088183611664565b90836106c3565b5f546107458160070b6117f8565b6001600160401b0316906001600160401b031916175f556107705f808080600f335af16101b3611810565b61068e565b60603660031901126101f3576107896115be565b6107916115d4565b604435906001600160401b0382116101f3576001600160401b039261037f6107bf60209436906004016117b1565b604051968795869563592581bb60e11b875260018060a01b03166004870152166024850152606060448501526064840191611b47565b60a03660031901126101f3576108096115be565b6024356001600160401b0381116101f357610828903690600401611600565b90916044356001600160401b0381116101f35761084b60209136906004016117b1565b939094610884610859611703565b95610862611712565b966108eb575b60405163a8fdc91960e01b815297889485943060048701611bef565b03815f6108055af19182156101ff576020935f936108cc575b506108b457506001600160401b0360405191168152f35b5f808080600f6103109582546101868160070b6117f8565b6108e4919350843d8611610316576103088183611664565b918461089d565b5f546108f98160070b6117f8565b6001600160401b0316906001600160401b031916175f5561092c5f808080600f60018060a01b038c165af16101b3611810565b610868565b60803660031901126101f3576109456115ea565b602435906001600160401b0382116101f35761096760209236906004016117b1565b92906109716116f4565b9261097a611703565b93610a42575b61099f604051958693849363592581bb60e11b85523060048601611c23565b03815f6108055af19081156101ff575f91610a06575b602092506109c8575b6040519015158152f35b5f546109d68160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a015f808080600f335af16101b3611810565b6109be565b90506020823d602011610a3a575b81610a2160209383611664565b810103126101f357610a3460209261183f565b906109b5565b3d9150610a14565b5f54610a508160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a7b5f808080600f335af16101b3611810565b610980565b60403660031901126101f3576004356001600160401b0381116101f357610aab903690600401611600565b602435906001600160401b0382116101f3576102c692610ad160209336906004016117b1565b60405163a8fdc91960e01b815295869485949193913060048701611bef565b346101f3575f3660031901126101f35760205f5460070b604051908152f35b346101f3575f3660031901126101f35760606101e0604051610b3081611648565b5f81528260208201525f604082015282808201528260808201528260a08201528260c08201528260e0820152826101008201525f61012082015282610140820152826101608201525f6101808201525f6101a08201525f6101c08201520152604051635e615a6b60e01b81525f816004816108055afa80156101ff575f90610d18575b610d149060405191829160208352805160070b60208401526101e0610cd7610cbf610c98610c80610c69610c53610c3d610c27610c028c61022060208d01519161020060408201520190611745565b8c606060408d015160070b91015260608b01518d6080601f1982850301910152611721565b60808a01518c8203601f190160a08e0152611721565b60a08901518b8203601f190160c08d0152611721565b60c08801518a8203601f190160e08c0152611721565b60e0870151898203601f19016101008b0152611721565b610100860151888203601f19016101208a0152611721565b61012085015160070b610140880152610140850151601f1988830301610160890152611721565b610160840151868203601f1901610180880152611745565b9161018081015115156101a08601526101a081015115156101c08601526101c08101511515828601520151601f1984830301610200850152611721565b0390f35b503d805f833e610d288183611664565b8101906020818303126101f3578051906001600160401b0382116101f35701610200818303126101f35760405190610d5f82611648565b610d68816119fb565b825260208101516001600160401b0381116101f35783610d89918301611a4f565b6020830152610d9a604082016119fb565b604083015260608101516001600160401b0381116101f35783610dbe918301611a09565b606083015260808101516001600160401b0381116101f35783610de2918301611a09565b608083015260a08101516001600160401b0381116101f35783610e06918301611a09565b60a083015260c08101516001600160401b0381116101f35783610e2a918301611a09565b60c083015260e08101516001600160401b0381116101f35783610e4e918301611a09565b60e08301526101008101516001600160401b0381116101f35783610e73918301611a09565b610100830152610e8661012082016119fb565b6101208301526101408101516001600160401b0381116101f35783610eac918301611a09565b6101408301526101608101516001600160401b0381116101f35783610ed2918301611a4f565b610160830152610ee5610180820161183f565b610180830152610ef86101a0820161183f565b6101a0830152610f0b6101c0820161183f565b6101c08301526101e0810151926001600160401b0384116101f357610d1493610f349201611a09565b6101e0820152610bb3565b60603660031901126101f357610f536115ea565b60243580151581036101f357602061099f92610f6d6116f4565b92610f8e575b6040518094819263519f184360e11b8352306004840161184c565b5f54610f9c8160070b6117f8565b6001600160401b0316906001600160401b031916175f55610fc75f808080600f335af16101b3611810565b610f73565b60803660031901126101f357611020610fe36115be565b610feb6115d4565b906020610ff66116f4565b92610fff611703565b936110a3575b6040518095819263519f184360e11b8352306004840161184c565b03815f6108055af19182156101ff575f92611067575b6020935061104957506040519015158152f35b5f808080600f6110619582546101868160070b6117f8565b82610163565b91506020833d60201161109b575b8161108260209383611664565b810103126101f35761109560209361183f565b91611036565b3d9150611075565b5f546110b18160070b6117f8565b6001600160401b0316906001600160401b031916175f556110e45f808080600f60018060a01b0389165af16101b3611810565b611005565b60803660031901126101f3576110fd6115be565b6111056115d4565b6044356001600160401b0381116101f357611124903690600401611600565b6064939193356001600160401b0381116101f3576111469036906004016116d6565b9160018060a01b0316925f5461115e8160070b6117f8565b6001600160401b0316906001600160401b031916175f555f8080806001885af1611186611810565b501561156f5760206111ad916040518093819263519f184360e11b8352306004840161184c565b03815f6108055af15f9181611533575b506112a1576111ca61186f565b6308c379a01461121a575b60405162461bcd60e51b815260206004820152601e60248201527f63616e63656c50726f706f73616c206661696c65642073696c656e746c7900006044820152606490fd5b61122261188a565b8061122d57506111d5565b602061127d603761129d9360405193849176031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b828401528051918291018484015e81015f838201520301601f198101835282611664565b60405162461bcd60e51b8152602060048201529182916024830190611721565b0390fd5b156114ee575f546112b48160070b6117f8565b6001600160401b031667ffffffffffffffff1991909116175f556040805194906112de8187611664565b60018652601f19015f5b8181106114b65761134a60208888888861131089604051926113098461162d565b36916116a0565b8152600285820152611321846118fc565b5261132b836118fc565b505f604051809681958294635ca64c1160e11b8452866004850161191d565b03925af15f918161147a575b506114265761136361186f565b6308c379a0146113bd575b60405162461bcd60e51b815260206004820152602160248201527f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c6044820152607960f81b6064820152608490fd5b6113c561188a565b806113d0575061136e565b602061127d603a61129d936040519384917f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000828401528051918291018484015e81015f838201520301601f198101835282611664565b1561143657602060405160018152f35b606460405162461bcd60e51b815260206004820152602060248201527f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c73656044820152fd5b9091506020813d6020116114ae575b8161149660209383611664565b810103126101f3576114a79061183f565b9082611356565b3d9150611489565b6020906040516114c58161162d565b606081525f8382015282828a010152016112e8565b634e487b7160e01b5f52604160045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c73650000006044820152606490fd5b9091506020813d602011611567575b8161154f60209383611664565b810103126101f3576115609061183f565b90866111bd565b3d9150611542565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f6044820152603960f91b6064820152608490fd5b600435906001600160a01b03821682036101f357565b602435906001600160401b03821682036101f357565b600435906001600160401b03821682036101f357565b9181601f840112156101f3578235916001600160401b0383116101f357602083818601950101116101f357565b604081019081106001600160401b038211176114da57604052565b61020081019081106001600160401b038211176114da57604052565b90601f801991011681019081106001600160401b038211176114da57604052565b6001600160401b0381116114da57601f01601f191660200190565b9291926116ac82611685565b916116ba6040519384611664565b8294818452818301116101f3578281602093845f960137010152565b9080601f830112156101f3578160206116f1933591016116a0565b90565b6044359081151582036101f357565b6064359081151582036101f357565b6084359081151582036101f357565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9080602083519182815201916020808360051b8301019401925f915b83831061177057505050505090565b9091929394602080600192601f19858203018652885190828061179c8451604085526040850190611721565b93015191015297019301930191939290611761565b9181601f840112156101f3578235916001600160401b0383116101f3576020808501948460051b0101116101f357565b6001600160401b0381116114da5760051b60200190565b60070b677fffffffffffffff81146105385760010190565b3d1561183a573d9061182182611685565b9161182f6040519384611664565b82523d5f602084013e565b606090565b519081151582036101f357565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b5f9060033d1161187b57565b905060045f803e5f5160e01c90565b5f60443d106116f1576040513d600319016004823e8051913d60248401116001600160401b038411176118f657828201928351916001600160401b0383116118ee573d840160031901858401602001116118ee57506116f192910160200190611664565b949350505050565b92915050565b8051156119095760200190565b634e487b7160e01b5f52603260045260245ffd5b9161193d9160018060a01b03168352606060208401526060830190611721565b906040818303910152815180825260208201916020808360051b8301019401925f915b83831061196f57505050505090565b9091929394602080600192601f19858203018652885190828061199b8451604085526040850190611721565b93015191015297019301930191939290611960565b156119b757565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f357565b81601f820112156101f357805190611a2082611685565b92611a2e6040519485611664565b828452602083830101116101f357815f9260208093018386015e8301015290565b81601f820112156101f357805190611a66826117e1565b92611a746040519485611664565b82845260208085019360051b830101918183116101f35760208101935b838510611aa057505050505090565b84516001600160401b0381116101f35782016040818503601f1901126101f35760405191611acd8361162d565b6020820151926001600160401b0384116101f357604083611af5886020809881980101611a09565b8352015183820152815201940193611a91565b908160209103126101f357516001600160401b03811681036101f35790565b908060209392818452848401375f828201840152601f01601f1916010190565b906020838281520160208260051b85010193835f915b848310611b6d5750505050505090565b909192939495601f198282030185528635603e19843603018112156101f35783018035601e19823603018112156101f357810190602082359201906001600160401b0383116101f35782360382136101f35783602080611bdb8196958296604060019a526040860191611b27565b930135910152980196950193019190611b5d565b93916116f19593611c159260018060a01b03168652606060208701526060860191611b27565b926040818503910152611b47565b6001600160401b036116f1959360609360018060a01b031683521660208201528160408201520191611b4756fea26469706673582212203c62aeaa5dee2e27869ae5dc1f968f5f3a5c88ccaaa26be5c987422199ebf18a64736f6c634300081c0033", + "bytecode": "0x60808060405234601557611c86908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630f6265fb146110e9578063258691e214610fcc57806326c11ffa14610f3f5780635e615a6b14610b0f57806361bc221a14610af057806361f09ad214610a8057806372ff5ec4146109315780637726ece0146107f55780638e7431d31461077557806391d6d8e71461062557806397fd84d2146105f1578063b94c9822146103db578063bc7bdf751461032a578063d0e30db01461031d578063e8702c34146102505763ed6c08f70361000e5760a03660031901126101f3576100e26115be565b6100ea6115d4565b604435916001600160401b0383116101f35761010c60209336906004016117b1565b9390610116611703565b9361011f611712565b9461020a575b610144604051968793849363592581bb60e11b85523060048601611c23565b03815f6108055af19182156101ff575f926101bf575b6020935061016e575b506040519015158152f35b5f808080600f6101b99582546101868160070b6117f8565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b3611810565b506119b0565b5f610163565b91506020833d6020116101f7575b816101da60209383611664565b810103126101f3576101ed60209361183f565b9161015a565b5f80fd5b3d91506101cd565b6040513d5f823e3d90fd5b5f546102188160070b6117f8565b6001600160401b0316906001600160401b031916175f5561024b5f808080600f60018060a01b038a165af16101b3611810565b610125565b60603660031901126101f3576102646115be565b6024356001600160401b0381116101f357610283903690600401611600565b9190604435916001600160401b0383116101f3576102c66102aa60209436906004016117b1565b90604051968795869563a8fdc91960e01b875260048701611bef565b03815f6108055af180156101ff576020915f916102f0575b506001600160401b0360405191168152f35b6103109150823d8411610316575b6103088183611664565b810190611b08565b826102de565b503d6102fe565b5f3660031901126101f357005b60403660031901126101f35761033e6115ea565b6024356001600160401b0381116101f35761035f60209136906004016117b1565b9261037f604051948593849363592581bb60e11b85523060048601611c23565b03815f6108055af180156101ff575f906103a1575b6020906040519015158152f35b506020813d6020116103d3575b816103bb60209383611664565b810103126101f3576103ce60209161183f565b610394565b3d91506103ae565b346101f35760603660031901126101f3576103f46115be565b6024356001600160401b0381116101f3576104139036906004016116d6565b90604435916001600160401b0383116101f357366023840112156101f357826004013561043f816117e1565b9361044d6040519586611664565b8185526024602086019260051b820101903682116101f35760248101925b82841061058657505050505f549160018360070b0192677fffffffffffffff198412677fffffffffffffff851317610538576020936001600160401b0316906001600160401b031916175f556104d56040519485938493631758efa960e11b85526004850161191d565b03815f6108015af19081156101ff575f9161054c575b505f54600781900b5f19019190677fffffffffffffff198312677fffffffffffffff841317610538576020926001600160401b0316906001600160401b031916175f556040519015158152f35b634e487b7160e01b5f52601160045260245ffd5b90506020813d60201161057e575b8161056760209383611664565b810103126101f3576105789061183f565b816104eb565b3d915061055a565b83356001600160401b0381116101f3578201604060231982360301126101f357604051916105b38361162d565b6024820135926001600160401b0384116101f3576044602094936105de8695602436918401016116d6565b835201358382015281520193019261046b565b60203660031901126101f35761037f602061060a6115ea565b6040518093819263519f184360e11b8352306004840161184c565b60803660031901126101f3576004356001600160401b0381116101f357610650903690600401611600565b6024356001600160401b0381116101f35761067160209136906004016117b1565b9290936106aa61067f6116f4565b94610688611703565b95610737575b60405163a8fdc91960e01b815296879485943060048701611bef565b03815f6108055af19081156101ff576020925f92610718575b506106da575b6001600160401b0360405191168152f35b5f546106e88160070b6117f8565b6001600160401b0316906001600160401b031916175f556107135f808080600f335af16101b3611810565b6106c9565b610730919250833d8511610316576103088183611664565b90836106c3565b5f546107458160070b6117f8565b6001600160401b0316906001600160401b031916175f556107705f808080600f335af16101b3611810565b61068e565b60603660031901126101f3576107896115be565b6107916115d4565b604435906001600160401b0382116101f3576001600160401b039261037f6107bf60209436906004016117b1565b604051968795869563592581bb60e11b875260018060a01b03166004870152166024850152606060448501526064840191611b47565b60a03660031901126101f3576108096115be565b6024356001600160401b0381116101f357610828903690600401611600565b90916044356001600160401b0381116101f35761084b60209136906004016117b1565b939094610884610859611703565b95610862611712565b966108eb575b60405163a8fdc91960e01b815297889485943060048701611bef565b03815f6108055af19182156101ff576020935f936108cc575b506108b457506001600160401b0360405191168152f35b5f808080600f6103109582546101868160070b6117f8565b6108e4919350843d8611610316576103088183611664565b918461089d565b5f546108f98160070b6117f8565b6001600160401b0316906001600160401b031916175f5561092c5f808080600f60018060a01b038c165af16101b3611810565b610868565b60803660031901126101f3576109456115ea565b602435906001600160401b0382116101f35761096760209236906004016117b1565b92906109716116f4565b9261097a611703565b93610a42575b61099f604051958693849363592581bb60e11b85523060048601611c23565b03815f6108055af19081156101ff575f91610a06575b602092506109c8575b6040519015158152f35b5f546109d68160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a015f808080600f335af16101b3611810565b6109be565b90506020823d602011610a3a575b81610a2160209383611664565b810103126101f357610a3460209261183f565b906109b5565b3d9150610a14565b5f54610a508160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a7b5f808080600f335af16101b3611810565b610980565b60403660031901126101f3576004356001600160401b0381116101f357610aab903690600401611600565b602435906001600160401b0382116101f3576102c692610ad160209336906004016117b1565b60405163a8fdc91960e01b815295869485949193913060048701611bef565b346101f3575f3660031901126101f35760205f5460070b604051908152f35b346101f3575f3660031901126101f35760606101e0604051610b3081611648565b5f81528260208201525f604082015282808201528260808201528260a08201528260c08201528260e0820152826101008201525f61012082015282610140820152826101608201525f6101808201525f6101a08201525f6101c08201520152604051635e615a6b60e01b81525f816004816108055afa80156101ff575f90610d18575b610d149060405191829160208352805160070b60208401526101e0610cd7610cbf610c98610c80610c69610c53610c3d610c27610c028c61022060208d01519161020060408201520190611745565b8c606060408d015160070b91015260608b01518d6080601f1982850301910152611721565b60808a01518c8203601f190160a08e0152611721565b60a08901518b8203601f190160c08d0152611721565b60c08801518a8203601f190160e08c0152611721565b60e0870151898203601f19016101008b0152611721565b610100860151888203601f19016101208a0152611721565b61012085015160070b610140880152610140850151601f1988830301610160890152611721565b610160840151868203601f1901610180880152611745565b9161018081015115156101a08601526101a081015115156101c08601526101c08101511515828601520151601f1984830301610200850152611721565b0390f35b503d805f833e610d288183611664565b8101906020818303126101f3578051906001600160401b0382116101f35701610200818303126101f35760405190610d5f82611648565b610d68816119fb565b825260208101516001600160401b0381116101f35783610d89918301611a4f565b6020830152610d9a604082016119fb565b604083015260608101516001600160401b0381116101f35783610dbe918301611a09565b606083015260808101516001600160401b0381116101f35783610de2918301611a09565b608083015260a08101516001600160401b0381116101f35783610e06918301611a09565b60a083015260c08101516001600160401b0381116101f35783610e2a918301611a09565b60c083015260e08101516001600160401b0381116101f35783610e4e918301611a09565b60e08301526101008101516001600160401b0381116101f35783610e73918301611a09565b610100830152610e8661012082016119fb565b6101208301526101408101516001600160401b0381116101f35783610eac918301611a09565b6101408301526101608101516001600160401b0381116101f35783610ed2918301611a4f565b610160830152610ee5610180820161183f565b610180830152610ef86101a0820161183f565b6101a0830152610f0b6101c0820161183f565b6101c08301526101e0810151926001600160401b0384116101f357610d1493610f349201611a09565b6101e0820152610bb3565b60603660031901126101f357610f536115ea565b60243580151581036101f357602061099f92610f6d6116f4565b92610f8e575b6040518094819263519f184360e11b8352306004840161184c565b5f54610f9c8160070b6117f8565b6001600160401b0316906001600160401b031916175f55610fc75f808080600f335af16101b3611810565b610f73565b60803660031901126101f357611020610fe36115be565b610feb6115d4565b906020610ff66116f4565b92610fff611703565b936110a3575b6040518095819263519f184360e11b8352306004840161184c565b03815f6108055af19182156101ff575f92611067575b6020935061104957506040519015158152f35b5f808080600f6110619582546101868160070b6117f8565b82610163565b91506020833d60201161109b575b8161108260209383611664565b810103126101f35761109560209361183f565b91611036565b3d9150611075565b5f546110b18160070b6117f8565b6001600160401b0316906001600160401b031916175f556110e45f808080600f60018060a01b0389165af16101b3611810565b611005565b60803660031901126101f3576110fd6115be565b6111056115d4565b6044356001600160401b0381116101f357611124903690600401611600565b6064939193356001600160401b0381116101f3576111469036906004016116d6565b9160018060a01b0316925f5461115e8160070b6117f8565b6001600160401b0316906001600160401b031916175f555f8080806001885af1611186611810565b501561156f5760206111ad916040518093819263519f184360e11b8352306004840161184c565b03815f6108055af15f9181611533575b506112a1576111ca61186f565b6308c379a01461121a575b60405162461bcd60e51b815260206004820152601e60248201527f63616e63656c50726f706f73616c206661696c65642073696c656e746c7900006044820152606490fd5b61122261188a565b8061122d57506111d5565b602061127d603761129d9360405193849176031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b828401528051918291018484015e81015f838201520301601f198101835282611664565b60405162461bcd60e51b8152602060048201529182916024830190611721565b0390fd5b156114ee575f546112b48160070b6117f8565b6001600160401b031667ffffffffffffffff1991909116175f556040805194906112de8187611664565b60018652601f19015f5b8181106114b65761134a60208888888861131089604051926113098461162d565b36916116a0565b8152600285820152611321846118fc565b5261132b836118fc565b505f604051809681958294635ca64c1160e11b8452866004850161191d565b03925af15f918161147a575b506114265761136361186f565b6308c379a0146113bd575b60405162461bcd60e51b815260206004820152602160248201527f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c6044820152607960f81b6064820152608490fd5b6113c561188a565b806113d0575061136e565b602061127d603a61129d936040519384917f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000828401528051918291018484015e81015f838201520301601f198101835282611664565b1561143657602060405160018152f35b606460405162461bcd60e51b815260206004820152602060248201527f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c73656044820152fd5b9091506020813d6020116114ae575b8161149660209383611664565b810103126101f3576114a79061183f565b9082611356565b3d9150611489565b6020906040516114c58161162d565b606081525f8382015282828a010152016112e8565b634e487b7160e01b5f52604160045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c73650000006044820152606490fd5b9091506020813d602011611567575b8161154f60209383611664565b810103126101f3576115609061183f565b90866111bd565b3d9150611542565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f6044820152603960f91b6064820152608490fd5b600435906001600160a01b03821682036101f357565b602435906001600160401b03821682036101f357565b600435906001600160401b03821682036101f357565b9181601f840112156101f3578235916001600160401b0383116101f357602083818601950101116101f357565b604081019081106001600160401b038211176114da57604052565b61020081019081106001600160401b038211176114da57604052565b90601f801991011681019081106001600160401b038211176114da57604052565b6001600160401b0381116114da57601f01601f191660200190565b9291926116ac82611685565b916116ba6040519384611664565b8294818452818301116101f3578281602093845f960137010152565b9080601f830112156101f3578160206116f1933591016116a0565b90565b6044359081151582036101f357565b6064359081151582036101f357565b6084359081151582036101f357565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9080602083519182815201916020808360051b8301019401925f915b83831061177057505050505090565b9091929394602080600192601f19858203018652885190828061179c8451604085526040850190611721565b93015191015297019301930191939290611761565b9181601f840112156101f3578235916001600160401b0383116101f3576020808501948460051b0101116101f357565b6001600160401b0381116114da5760051b60200190565b60070b677fffffffffffffff81146105385760010190565b3d1561183a573d9061182182611685565b9161182f6040519384611664565b82523d5f602084013e565b606090565b519081151582036101f357565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b5f9060033d1161187b57565b905060045f803e5f5160e01c90565b5f60443d106116f1576040513d600319016004823e8051913d60248401116001600160401b038411176118f657828201928351916001600160401b0383116118ee573d840160031901858401602001116118ee57506116f192910160200190611664565b949350505050565b92915050565b8051156119095760200190565b634e487b7160e01b5f52603260045260245ffd5b9161193d9160018060a01b03168352606060208401526060830190611721565b906040818303910152815180825260208201916020808360051b8301019401925f915b83831061196f57505050505090565b9091929394602080600192601f19858203018652885190828061199b8451604085526040850190611721565b93015191015297019301930191939290611960565b156119b757565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f357565b81601f820112156101f357805190611a2082611685565b92611a2e6040519485611664565b828452602083830101116101f357815f9260208093018386015e8301015290565b81601f820112156101f357805190611a66826117e1565b92611a746040519485611664565b82845260208085019360051b830101918183116101f35760208101935b838510611aa057505050505090565b84516001600160401b0381116101f35782016040818503601f1901126101f35760405191611acd8361162d565b6020820151926001600160401b0384116101f357604083611af5886020809881980101611a09565b8352015183820152815201940193611a91565b908160209103126101f357516001600160401b03811681036101f35790565b908060209392818452848401375f828201840152601f01601f1916010190565b906020838281520160208260051b85010193835f915b848310611b6d5750505050505090565b909192939495601f198282030185528635603e19843603018112156101f35783018035601e19823603018112156101f357810190602082359201906001600160401b0383116101f35782360382136101f35783602080611bdb8196958296604060019a526040860191611b27565b930135910152980196950193019190611b5d565b93916116f19593611c159260018060a01b03168652606060208701526060860191611b27565b926040818503910152611b47565b6001600160401b036116f1959360609360018060a01b031683521660208201528160408201520191611b4756fea2646970667358221220708953a1ba59b253a56cf4bba60c08bff2470569eec60d67be537e3f6b1bf6e164736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c80630f6265fb146110e9578063258691e214610fcc57806326c11ffa14610f3f5780635e615a6b14610b0f57806361bc221a14610af057806361f09ad214610a8057806372ff5ec4146109315780637726ece0146107f55780638e7431d31461077557806391d6d8e71461062557806397fd84d2146105f1578063b94c9822146103db578063bc7bdf751461032a578063d0e30db01461031d578063e8702c34146102505763ed6c08f70361000e5760a03660031901126101f3576100e26115be565b6100ea6115d4565b604435916001600160401b0383116101f35761010c60209336906004016117b1565b9390610116611703565b9361011f611712565b9461020a575b610144604051968793849363592581bb60e11b85523060048601611c23565b03815f6108055af19182156101ff575f926101bf575b6020935061016e575b506040519015158152f35b5f808080600f6101b99582546101868160070b6117f8565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af16101b3611810565b506119b0565b5f610163565b91506020833d6020116101f7575b816101da60209383611664565b810103126101f3576101ed60209361183f565b9161015a565b5f80fd5b3d91506101cd565b6040513d5f823e3d90fd5b5f546102188160070b6117f8565b6001600160401b0316906001600160401b031916175f5561024b5f808080600f60018060a01b038a165af16101b3611810565b610125565b60603660031901126101f3576102646115be565b6024356001600160401b0381116101f357610283903690600401611600565b9190604435916001600160401b0383116101f3576102c66102aa60209436906004016117b1565b90604051968795869563a8fdc91960e01b875260048701611bef565b03815f6108055af180156101ff576020915f916102f0575b506001600160401b0360405191168152f35b6103109150823d8411610316575b6103088183611664565b810190611b08565b826102de565b503d6102fe565b5f3660031901126101f357005b60403660031901126101f35761033e6115ea565b6024356001600160401b0381116101f35761035f60209136906004016117b1565b9261037f604051948593849363592581bb60e11b85523060048601611c23565b03815f6108055af180156101ff575f906103a1575b6020906040519015158152f35b506020813d6020116103d3575b816103bb60209383611664565b810103126101f3576103ce60209161183f565b610394565b3d91506103ae565b346101f35760603660031901126101f3576103f46115be565b6024356001600160401b0381116101f3576104139036906004016116d6565b90604435916001600160401b0383116101f357366023840112156101f357826004013561043f816117e1565b9361044d6040519586611664565b8185526024602086019260051b820101903682116101f35760248101925b82841061058657505050505f549160018360070b0192677fffffffffffffff198412677fffffffffffffff851317610538576020936001600160401b0316906001600160401b031916175f556104d56040519485938493631758efa960e11b85526004850161191d565b03815f6108015af19081156101ff575f9161054c575b505f54600781900b5f19019190677fffffffffffffff198312677fffffffffffffff841317610538576020926001600160401b0316906001600160401b031916175f556040519015158152f35b634e487b7160e01b5f52601160045260245ffd5b90506020813d60201161057e575b8161056760209383611664565b810103126101f3576105789061183f565b816104eb565b3d915061055a565b83356001600160401b0381116101f3578201604060231982360301126101f357604051916105b38361162d565b6024820135926001600160401b0384116101f3576044602094936105de8695602436918401016116d6565b835201358382015281520193019261046b565b60203660031901126101f35761037f602061060a6115ea565b6040518093819263519f184360e11b8352306004840161184c565b60803660031901126101f3576004356001600160401b0381116101f357610650903690600401611600565b6024356001600160401b0381116101f35761067160209136906004016117b1565b9290936106aa61067f6116f4565b94610688611703565b95610737575b60405163a8fdc91960e01b815296879485943060048701611bef565b03815f6108055af19081156101ff576020925f92610718575b506106da575b6001600160401b0360405191168152f35b5f546106e88160070b6117f8565b6001600160401b0316906001600160401b031916175f556107135f808080600f335af16101b3611810565b6106c9565b610730919250833d8511610316576103088183611664565b90836106c3565b5f546107458160070b6117f8565b6001600160401b0316906001600160401b031916175f556107705f808080600f335af16101b3611810565b61068e565b60603660031901126101f3576107896115be565b6107916115d4565b604435906001600160401b0382116101f3576001600160401b039261037f6107bf60209436906004016117b1565b604051968795869563592581bb60e11b875260018060a01b03166004870152166024850152606060448501526064840191611b47565b60a03660031901126101f3576108096115be565b6024356001600160401b0381116101f357610828903690600401611600565b90916044356001600160401b0381116101f35761084b60209136906004016117b1565b939094610884610859611703565b95610862611712565b966108eb575b60405163a8fdc91960e01b815297889485943060048701611bef565b03815f6108055af19182156101ff576020935f936108cc575b506108b457506001600160401b0360405191168152f35b5f808080600f6103109582546101868160070b6117f8565b6108e4919350843d8611610316576103088183611664565b918461089d565b5f546108f98160070b6117f8565b6001600160401b0316906001600160401b031916175f5561092c5f808080600f60018060a01b038c165af16101b3611810565b610868565b60803660031901126101f3576109456115ea565b602435906001600160401b0382116101f35761096760209236906004016117b1565b92906109716116f4565b9261097a611703565b93610a42575b61099f604051958693849363592581bb60e11b85523060048601611c23565b03815f6108055af19081156101ff575f91610a06575b602092506109c8575b6040519015158152f35b5f546109d68160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a015f808080600f335af16101b3611810565b6109be565b90506020823d602011610a3a575b81610a2160209383611664565b810103126101f357610a3460209261183f565b906109b5565b3d9150610a14565b5f54610a508160070b6117f8565b6001600160401b0316906001600160401b031916175f55610a7b5f808080600f335af16101b3611810565b610980565b60403660031901126101f3576004356001600160401b0381116101f357610aab903690600401611600565b602435906001600160401b0382116101f3576102c692610ad160209336906004016117b1565b60405163a8fdc91960e01b815295869485949193913060048701611bef565b346101f3575f3660031901126101f35760205f5460070b604051908152f35b346101f3575f3660031901126101f35760606101e0604051610b3081611648565b5f81528260208201525f604082015282808201528260808201528260a08201528260c08201528260e0820152826101008201525f61012082015282610140820152826101608201525f6101808201525f6101a08201525f6101c08201520152604051635e615a6b60e01b81525f816004816108055afa80156101ff575f90610d18575b610d149060405191829160208352805160070b60208401526101e0610cd7610cbf610c98610c80610c69610c53610c3d610c27610c028c61022060208d01519161020060408201520190611745565b8c606060408d015160070b91015260608b01518d6080601f1982850301910152611721565b60808a01518c8203601f190160a08e0152611721565b60a08901518b8203601f190160c08d0152611721565b60c08801518a8203601f190160e08c0152611721565b60e0870151898203601f19016101008b0152611721565b610100860151888203601f19016101208a0152611721565b61012085015160070b610140880152610140850151601f1988830301610160890152611721565b610160840151868203601f1901610180880152611745565b9161018081015115156101a08601526101a081015115156101c08601526101c08101511515828601520151601f1984830301610200850152611721565b0390f35b503d805f833e610d288183611664565b8101906020818303126101f3578051906001600160401b0382116101f35701610200818303126101f35760405190610d5f82611648565b610d68816119fb565b825260208101516001600160401b0381116101f35783610d89918301611a4f565b6020830152610d9a604082016119fb565b604083015260608101516001600160401b0381116101f35783610dbe918301611a09565b606083015260808101516001600160401b0381116101f35783610de2918301611a09565b608083015260a08101516001600160401b0381116101f35783610e06918301611a09565b60a083015260c08101516001600160401b0381116101f35783610e2a918301611a09565b60c083015260e08101516001600160401b0381116101f35783610e4e918301611a09565b60e08301526101008101516001600160401b0381116101f35783610e73918301611a09565b610100830152610e8661012082016119fb565b6101208301526101408101516001600160401b0381116101f35783610eac918301611a09565b6101408301526101608101516001600160401b0381116101f35783610ed2918301611a4f565b610160830152610ee5610180820161183f565b610180830152610ef86101a0820161183f565b6101a0830152610f0b6101c0820161183f565b6101c08301526101e0810151926001600160401b0384116101f357610d1493610f349201611a09565b6101e0820152610bb3565b60603660031901126101f357610f536115ea565b60243580151581036101f357602061099f92610f6d6116f4565b92610f8e575b6040518094819263519f184360e11b8352306004840161184c565b5f54610f9c8160070b6117f8565b6001600160401b0316906001600160401b031916175f55610fc75f808080600f335af16101b3611810565b610f73565b60803660031901126101f357611020610fe36115be565b610feb6115d4565b906020610ff66116f4565b92610fff611703565b936110a3575b6040518095819263519f184360e11b8352306004840161184c565b03815f6108055af19182156101ff575f92611067575b6020935061104957506040519015158152f35b5f808080600f6110619582546101868160070b6117f8565b82610163565b91506020833d60201161109b575b8161108260209383611664565b810103126101f35761109560209361183f565b91611036565b3d9150611075565b5f546110b18160070b6117f8565b6001600160401b0316906001600160401b031916175f556110e45f808080600f60018060a01b0389165af16101b3611810565b611005565b60803660031901126101f3576110fd6115be565b6111056115d4565b6044356001600160401b0381116101f357611124903690600401611600565b6064939193356001600160401b0381116101f3576111469036906004016116d6565b9160018060a01b0316925f5461115e8160070b6117f8565b6001600160401b0316906001600160401b031916175f555f8080806001885af1611186611810565b501561156f5760206111ad916040518093819263519f184360e11b8352306004840161184c565b03815f6108055af15f9181611533575b506112a1576111ca61186f565b6308c379a01461121a575b60405162461bcd60e51b815260206004820152601e60248201527f63616e63656c50726f706f73616c206661696c65642073696c656e746c7900006044820152606490fd5b61122261188a565b8061122d57506111d5565b602061127d603761129d9360405193849176031b0b731b2b6283937b837b9b0b6103330b4b632b21d1604d1b828401528051918291018484015e81015f838201520301601f198101835282611664565b60405162461bcd60e51b8152602060048201529182916024830190611721565b0390fd5b156114ee575f546112b48160070b6117f8565b6001600160401b031667ffffffffffffffff1991909116175f556040805194906112de8187611664565b60018652601f19015f5b8181106114b65761134a60208888888861131089604051926113098461162d565b36916116a0565b8152600285820152611321846118fc565b5261132b836118fc565b505f604051809681958294635ca64c1160e11b8452866004850161191d565b03925af15f918161147a575b506114265761136361186f565b6308c379a0146113bd575b60405162461bcd60e51b815260206004820152602160248201527f66756e64436f6d6d756e697479506f6f6c206661696c65642073696c656e746c6044820152607960f81b6064820152608490fd5b6113c561188a565b806113d0575061136e565b602061127d603a61129d936040519384917f66756e64436f6d6d756e697479506f6f6c206661696c65643a20000000000000828401528051918291018484015e81015f838201520301601f198101835282611664565b1561143657602060405160018152f35b606460405162461bcd60e51b815260206004820152602060248201527f66756e64436f6d6d756e697479506f6f6c2072657475726e65642066616c73656044820152fd5b9091506020813d6020116114ae575b8161149660209383611664565b810103126101f3576114a79061183f565b9082611356565b3d9150611489565b6020906040516114c58161162d565b606081525f8382015282828a010152016112e8565b634e487b7160e01b5f52604160045260245ffd5b60405162461bcd60e51b815260206004820152601d60248201527f63616e63656c50726f706f73616c2072657475726e65642066616c73650000006044820152606490fd5b9091506020813d602011611567575b8161154f60209383611664565b810103126101f3576115609061183f565b90866111bd565b3d9150611542565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f206465706f7369746f6044820152603960f91b6064820152608490fd5b600435906001600160a01b03821682036101f357565b602435906001600160401b03821682036101f357565b600435906001600160401b03821682036101f357565b9181601f840112156101f3578235916001600160401b0383116101f357602083818601950101116101f357565b604081019081106001600160401b038211176114da57604052565b61020081019081106001600160401b038211176114da57604052565b90601f801991011681019081106001600160401b038211176114da57604052565b6001600160401b0381116114da57601f01601f191660200190565b9291926116ac82611685565b916116ba6040519384611664565b8294818452818301116101f3578281602093845f960137010152565b9080601f830112156101f3578160206116f1933591016116a0565b90565b6044359081151582036101f357565b6064359081151582036101f357565b6084359081151582036101f357565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9080602083519182815201916020808360051b8301019401925f915b83831061177057505050505090565b9091929394602080600192601f19858203018652885190828061179c8451604085526040850190611721565b93015191015297019301930191939290611761565b9181601f840112156101f3578235916001600160401b0383116101f3576020808501948460051b0101116101f357565b6001600160401b0381116114da5760051b60200190565b60070b677fffffffffffffff81146105385760010190565b3d1561183a573d9061182182611685565b9161182f6040519384611664565b82523d5f602084013e565b606090565b519081151582036101f357565b6001600160a01b0390911681526001600160401b03909116602082015260400190565b5f9060033d1161187b57565b905060045f803e5f5160e01c90565b5f60443d106116f1576040513d600319016004823e8051913d60248401116001600160401b038411176118f657828201928351916001600160401b0383116118ee573d840160031901858401602001116118ee57506116f192910160200190611664565b949350505050565b92915050565b8051156119095760200190565b634e487b7160e01b5f52603260045260245ffd5b9161193d9160018060a01b03168352606060208401526060830190611721565b906040818303910152815180825260208201916020808360051b8301019401925f915b83831061196f57505050505090565b9091929394602080600192601f19858203018652885190828061199b8451604085526040850190611721565b93015191015297019301930191939290611960565b156119b757565b606460405162461bcd60e51b815260206004820152602060248201527f4661696c656420746f2073656e6420457468657220746f2070726f706f7365726044820152fd5b51908160070b82036101f357565b81601f820112156101f357805190611a2082611685565b92611a2e6040519485611664565b828452602083830101116101f357815f9260208093018386015e8301015290565b81601f820112156101f357805190611a66826117e1565b92611a746040519485611664565b82845260208085019360051b830101918183116101f35760208101935b838510611aa057505050505090565b84516001600160401b0381116101f35782016040818503601f1901126101f35760405191611acd8361162d565b6020820151926001600160401b0384116101f357604083611af5886020809881980101611a09565b8352015183820152815201940193611a91565b908160209103126101f357516001600160401b03811681036101f35790565b908060209392818452848401375f828201840152601f01601f1916010190565b906020838281520160208260051b85010193835f915b848310611b6d5750505050505090565b909192939495601f198282030185528635603e19843603018112156101f35783018035601e19823603018112156101f357810190602082359201906001600160401b0383116101f35782360382136101f35783602080611bdb8196958296604060019a526040860191611b27565b930135910152980196950193019190611b5d565b93916116f19593611c159260018060a01b03168652606060208701526060860191611b27565b926040818503910152611b47565b6001600160401b036116f1959360609360018060a01b031683521660208201528160408201520191611b4756fea2646970667358221220708953a1ba59b253a56cf4bba60c08bff2470569eec60d67be537e3f6b1bf6e164736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/GovCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/ICS20Caller.json b/precompiles/testutil/contracts/ICS20Caller.json index 1e62ec72a..4b47514f3 100644 --- a/precompiles/testutil/contracts/ICS20Caller.json +++ b/precompiles/testutil/contracts/ICS20Caller.json @@ -388,11 +388,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234601557610a94908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816361bc221a146106cb57508063b42bc5a9146104b3578063bcc45b791461037f578063c352645014610158578063d0e30db01461014b578063d8bb6c0e146100f15763e12e9b2714610069575f80fd5b346100db576100a4602061007c366107d2565b60405163632535b960e01b81529a8b998a999198929793969495949392919060048b01610920565b03815f6108025af180156100e6576100ba575f80fd5b6100db9060203d6020116100df575b6100d38183610716565b8101906108dd565b5f80fd5b503d6100c9565b6040513d5f823e3d90fd5b346100db57610104602061007c366107d2565b03815f6108025af180156100e6576020915f9161012e575b506001600160401b0360405191168152f35b6101459150823d84116100df576100d38183610716565b8261011c565b5f3660031901126100db57005b346100db576101803660031901126100db576004356001600160401b0381116100db57610189903690600401610752565b6024356001600160401b0381116100db576101a8903690600401610752565b6044356001600160401b0381116100db576101c7903690600401610752565b906101d0610798565b9160a4356001600160401b0381116100db576101f0903690600401610752565b9160403660c31901126100db576040519361020a856106e7565b60c4356001600160401b03811681036100db57855260e4356001600160401b03811681036100db576020860152610104356001600160401b03811681036100db57610124356001600160401b0381116100db5761026b903690600401610752565b90610144359687151588036100db576020966102ae946102896107c2565b99610341575b60405163632535b960e01b81529a8b9889986064359260048b01610920565b03815f6108025af19081156100e6576020925f92610322575b506102de575b6001600160401b0360405191168152f35b5f546102ec8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561031d5f808080600f335af16103176109e3565b50610a12565b6102cd565b61033a919250833d85116100df576100d38183610716565b90836102c7565b5f5461034f8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561037a5f808080600f335af16103176109e3565b61028f565b346100db576101203660031901126100db576004356001600160401b0381116100db576103b0903690600401610752565b6024356001600160401b0381116100db576103cf903690600401610752565b906044356001600160401b0381116100db576103ef903690600401610752565b906084356001600160401b0381116100db5761040f903690600401610752565b9160403660a31901126100db5760405192610429846106e7565b60a4356001600160401b03811681036100db57845260c4356001600160401b03811681036100db57602085015260e435906001600160401b03821682036100db5761010435916001600160401b0383116100db57602095610491610104943690600401610752565b92604051988997889763632535b960e01b895230926064359260048b01610920565b346100db576101803660031901126100db576004356001600160401b0381116100db576104e4903690600401610752565b6024356001600160401b0381116100db57610503903690600401610752565b906044356001600160401b0381116100db57610523903690600401610752565b9061052c610798565b9160a4356001600160401b0381116100db5761054c903690600401610752565b60c435949091906001600160a01b03861686036100db5760403660e31901126100db576040519261057c846106e7565b60e4356001600160401b03811681036100db578452610104356001600160401b03811681036100db57602085015261012435906001600160401b03821682036100db5761014435916001600160401b0383116100db576020956105e661060f943690600401610752565b926105ef6107c2565b99604051998a98899863e12e9b2760e01b8a526064359260048b01610920565b03815f305af16106ae575b5061062157005b5f8080600f819482546106368160070b6109b7565b6001600160401b0316906001600160401b0319161783555af16106576109e3565b501561065f57005b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6106c69060203d6020116100df576100d38183610716565b61061a565b346100db575f3660031901126100db576020905f5460070b8152f35b604081019081106001600160401b0382111761070257604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761070257604052565b6001600160401b03811161070257601f01601f191660200190565b81601f820112156100db5780359061076982610737565b926107776040519485610716565b828452602083830101116100db57815f926020809301838601378301015290565b608435906001600160a01b03821682036100db57565b35906001600160401b03821682036100db57565b610164359081151582036100db57565b6101406003198201126100db576004356001600160401b0381116100db57816107fd91600401610752565b916024356001600160401b0381116100db578261081c91600401610752565b916044356001600160401b0381116100db578161083b91600401610752565b91606435916084356001600160a01b03811681036100db579160a4356001600160401b0381116100db578261087291600401610752565b91604060c48203126100db5760405161088a816106e7565b61089460c46107ae565b81526108a060e46107ae565b602082015291610104356001600160401b03811681036100db579161012435906001600160401b0382116100db576108da91600401610752565b90565b908160209103126100db57516001600160401b03811681036100db5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b95936108da999798946001600160401b039661096d889661095f602097610952610990986101408f81815201906108fc565b8d81038a8f0152906108fc565b908b820360408d01526108fc565b60608a01939093526001600160a01b0316608089015287820360a08901526108fc565b968281511660c087015201511660e0840152166101008201526101208184039101526108fc565b60070b677fffffffffffffff81146109cf5760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610a0d573d906109f482610737565b91610a026040519384610716565b82523d5f602084013e565b606090565b15610a1957565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea264697066735822122036fa33249127f13d4dea233181a6ee19792d5ed1de4314120e4ee662321dea3064736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816361bc221a146106cb57508063b42bc5a9146104b3578063bcc45b791461037f578063c352645014610158578063d0e30db01461014b578063d8bb6c0e146100f15763e12e9b2714610069575f80fd5b346100db576100a4602061007c366107d2565b60405163632535b960e01b81529a8b998a999198929793969495949392919060048b01610920565b03815f6108025af180156100e6576100ba575f80fd5b6100db9060203d6020116100df575b6100d38183610716565b8101906108dd565b5f80fd5b503d6100c9565b6040513d5f823e3d90fd5b346100db57610104602061007c366107d2565b03815f6108025af180156100e6576020915f9161012e575b506001600160401b0360405191168152f35b6101459150823d84116100df576100d38183610716565b8261011c565b5f3660031901126100db57005b346100db576101803660031901126100db576004356001600160401b0381116100db57610189903690600401610752565b6024356001600160401b0381116100db576101a8903690600401610752565b6044356001600160401b0381116100db576101c7903690600401610752565b906101d0610798565b9160a4356001600160401b0381116100db576101f0903690600401610752565b9160403660c31901126100db576040519361020a856106e7565b60c4356001600160401b03811681036100db57855260e4356001600160401b03811681036100db576020860152610104356001600160401b03811681036100db57610124356001600160401b0381116100db5761026b903690600401610752565b90610144359687151588036100db576020966102ae946102896107c2565b99610341575b60405163632535b960e01b81529a8b9889986064359260048b01610920565b03815f6108025af19081156100e6576020925f92610322575b506102de575b6001600160401b0360405191168152f35b5f546102ec8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561031d5f808080600f335af16103176109e3565b50610a12565b6102cd565b61033a919250833d85116100df576100d38183610716565b90836102c7565b5f5461034f8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561037a5f808080600f335af16103176109e3565b61028f565b346100db576101203660031901126100db576004356001600160401b0381116100db576103b0903690600401610752565b6024356001600160401b0381116100db576103cf903690600401610752565b906044356001600160401b0381116100db576103ef903690600401610752565b906084356001600160401b0381116100db5761040f903690600401610752565b9160403660a31901126100db5760405192610429846106e7565b60a4356001600160401b03811681036100db57845260c4356001600160401b03811681036100db57602085015260e435906001600160401b03821682036100db5761010435916001600160401b0383116100db57602095610491610104943690600401610752565b92604051988997889763632535b960e01b895230926064359260048b01610920565b346100db576101803660031901126100db576004356001600160401b0381116100db576104e4903690600401610752565b6024356001600160401b0381116100db57610503903690600401610752565b906044356001600160401b0381116100db57610523903690600401610752565b9061052c610798565b9160a4356001600160401b0381116100db5761054c903690600401610752565b60c435949091906001600160a01b03861686036100db5760403660e31901126100db576040519261057c846106e7565b60e4356001600160401b03811681036100db578452610104356001600160401b03811681036100db57602085015261012435906001600160401b03821682036100db5761014435916001600160401b0383116100db576020956105e661060f943690600401610752565b926105ef6107c2565b99604051998a98899863e12e9b2760e01b8a526064359260048b01610920565b03815f305af16106ae575b5061062157005b5f8080600f819482546106368160070b6109b7565b6001600160401b0316906001600160401b0319161783555af16106576109e3565b501561065f57005b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6106c69060203d6020116100df576100d38183610716565b61061a565b346100db575f3660031901126100db576020905f5460070b8152f35b604081019081106001600160401b0382111761070257604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761070257604052565b6001600160401b03811161070257601f01601f191660200190565b81601f820112156100db5780359061076982610737565b926107776040519485610716565b828452602083830101116100db57815f926020809301838601378301015290565b608435906001600160a01b03821682036100db57565b35906001600160401b03821682036100db57565b610164359081151582036100db57565b6101406003198201126100db576004356001600160401b0381116100db57816107fd91600401610752565b916024356001600160401b0381116100db578261081c91600401610752565b916044356001600160401b0381116100db578161083b91600401610752565b91606435916084356001600160a01b03811681036100db579160a4356001600160401b0381116100db578261087291600401610752565b91604060c48203126100db5760405161088a816106e7565b61089460c46107ae565b81526108a060e46107ae565b602082015291610104356001600160401b03811681036100db579161012435906001600160401b0382116100db576108da91600401610752565b90565b908160209103126100db57516001600160401b03811681036100db5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b95936108da999798946001600160401b039661096d889661095f602097610952610990986101408f81815201906108fc565b8d81038a8f0152906108fc565b908b820360408d01526108fc565b60608a01939093526001600160a01b0316608089015287820360a08901526108fc565b968281511660c087015201511660e0840152166101008201526101208184039101526108fc565b60070b677fffffffffffffff81146109cf5760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610a0d573d906109f482610737565b91610a026040519384610716565b82523d5f602084013e565b606090565b15610a1957565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea264697066735822122036fa33249127f13d4dea233181a6ee19792d5ed1de4314120e4ee662321dea3064736f6c634300081c0033", + "bytecode": "0x60808060405234601557610a94908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816361bc221a146106cb57508063b42bc5a9146104b3578063bcc45b791461037f578063c352645014610158578063d0e30db01461014b578063d8bb6c0e146100f15763e12e9b2714610069575f80fd5b346100db576100a4602061007c366107d2565b60405163632535b960e01b81529a8b998a999198929793969495949392919060048b01610920565b03815f6108025af180156100e6576100ba575f80fd5b6100db9060203d6020116100df575b6100d38183610716565b8101906108dd565b5f80fd5b503d6100c9565b6040513d5f823e3d90fd5b346100db57610104602061007c366107d2565b03815f6108025af180156100e6576020915f9161012e575b506001600160401b0360405191168152f35b6101459150823d84116100df576100d38183610716565b8261011c565b5f3660031901126100db57005b346100db576101803660031901126100db576004356001600160401b0381116100db57610189903690600401610752565b6024356001600160401b0381116100db576101a8903690600401610752565b6044356001600160401b0381116100db576101c7903690600401610752565b906101d0610798565b9160a4356001600160401b0381116100db576101f0903690600401610752565b9160403660c31901126100db576040519361020a856106e7565b60c4356001600160401b03811681036100db57855260e4356001600160401b03811681036100db576020860152610104356001600160401b03811681036100db57610124356001600160401b0381116100db5761026b903690600401610752565b90610144359687151588036100db576020966102ae946102896107c2565b99610341575b60405163632535b960e01b81529a8b9889986064359260048b01610920565b03815f6108025af19081156100e6576020925f92610322575b506102de575b6001600160401b0360405191168152f35b5f546102ec8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561031d5f808080600f335af16103176109e3565b50610a12565b6102cd565b61033a919250833d85116100df576100d38183610716565b90836102c7565b5f5461034f8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561037a5f808080600f335af16103176109e3565b61028f565b346100db576101203660031901126100db576004356001600160401b0381116100db576103b0903690600401610752565b6024356001600160401b0381116100db576103cf903690600401610752565b906044356001600160401b0381116100db576103ef903690600401610752565b906084356001600160401b0381116100db5761040f903690600401610752565b9160403660a31901126100db5760405192610429846106e7565b60a4356001600160401b03811681036100db57845260c4356001600160401b03811681036100db57602085015260e435906001600160401b03821682036100db5761010435916001600160401b0383116100db57602095610491610104943690600401610752565b92604051988997889763632535b960e01b895230926064359260048b01610920565b346100db576101803660031901126100db576004356001600160401b0381116100db576104e4903690600401610752565b6024356001600160401b0381116100db57610503903690600401610752565b906044356001600160401b0381116100db57610523903690600401610752565b9061052c610798565b9160a4356001600160401b0381116100db5761054c903690600401610752565b60c435949091906001600160a01b03861686036100db5760403660e31901126100db576040519261057c846106e7565b60e4356001600160401b03811681036100db578452610104356001600160401b03811681036100db57602085015261012435906001600160401b03821682036100db5761014435916001600160401b0383116100db576020956105e661060f943690600401610752565b926105ef6107c2565b99604051998a98899863e12e9b2760e01b8a526064359260048b01610920565b03815f305af16106ae575b5061062157005b5f8080600f819482546106368160070b6109b7565b6001600160401b0316906001600160401b0319161783555af16106576109e3565b501561065f57005b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6106c69060203d6020116100df576100d38183610716565b61061a565b346100db575f3660031901126100db576020905f5460070b8152f35b604081019081106001600160401b0382111761070257604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761070257604052565b6001600160401b03811161070257601f01601f191660200190565b81601f820112156100db5780359061076982610737565b926107776040519485610716565b828452602083830101116100db57815f926020809301838601378301015290565b608435906001600160a01b03821682036100db57565b35906001600160401b03821682036100db57565b610164359081151582036100db57565b6101406003198201126100db576004356001600160401b0381116100db57816107fd91600401610752565b916024356001600160401b0381116100db578261081c91600401610752565b916044356001600160401b0381116100db578161083b91600401610752565b91606435916084356001600160a01b03811681036100db579160a4356001600160401b0381116100db578261087291600401610752565b91604060c48203126100db5760405161088a816106e7565b61089460c46107ae565b81526108a060e46107ae565b602082015291610104356001600160401b03811681036100db579161012435906001600160401b0382116100db576108da91600401610752565b90565b908160209103126100db57516001600160401b03811681036100db5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b95936108da999798946001600160401b039661096d889661095f602097610952610990986101408f81815201906108fc565b8d81038a8f0152906108fc565b908b820360408d01526108fc565b60608a01939093526001600160a01b0316608089015287820360a08901526108fc565b968281511660c087015201511660e0840152166101008201526101208184039101526108fc565b60070b677fffffffffffffff81146109cf5760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610a0d573d906109f482610737565b91610a026040519384610716565b82523d5f602084013e565b606090565b15610a1957565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea2646970667358221220f748583a19a37b2aafc4be948806a8d8676de38545599acd78097f4ac4715b5d64736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816361bc221a146106cb57508063b42bc5a9146104b3578063bcc45b791461037f578063c352645014610158578063d0e30db01461014b578063d8bb6c0e146100f15763e12e9b2714610069575f80fd5b346100db576100a4602061007c366107d2565b60405163632535b960e01b81529a8b998a999198929793969495949392919060048b01610920565b03815f6108025af180156100e6576100ba575f80fd5b6100db9060203d6020116100df575b6100d38183610716565b8101906108dd565b5f80fd5b503d6100c9565b6040513d5f823e3d90fd5b346100db57610104602061007c366107d2565b03815f6108025af180156100e6576020915f9161012e575b506001600160401b0360405191168152f35b6101459150823d84116100df576100d38183610716565b8261011c565b5f3660031901126100db57005b346100db576101803660031901126100db576004356001600160401b0381116100db57610189903690600401610752565b6024356001600160401b0381116100db576101a8903690600401610752565b6044356001600160401b0381116100db576101c7903690600401610752565b906101d0610798565b9160a4356001600160401b0381116100db576101f0903690600401610752565b9160403660c31901126100db576040519361020a856106e7565b60c4356001600160401b03811681036100db57855260e4356001600160401b03811681036100db576020860152610104356001600160401b03811681036100db57610124356001600160401b0381116100db5761026b903690600401610752565b90610144359687151588036100db576020966102ae946102896107c2565b99610341575b60405163632535b960e01b81529a8b9889986064359260048b01610920565b03815f6108025af19081156100e6576020925f92610322575b506102de575b6001600160401b0360405191168152f35b5f546102ec8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561031d5f808080600f335af16103176109e3565b50610a12565b6102cd565b61033a919250833d85116100df576100d38183610716565b90836102c7565b5f5461034f8160070b6109b7565b6001600160401b0316906001600160401b031916175f5561037a5f808080600f335af16103176109e3565b61028f565b346100db576101203660031901126100db576004356001600160401b0381116100db576103b0903690600401610752565b6024356001600160401b0381116100db576103cf903690600401610752565b906044356001600160401b0381116100db576103ef903690600401610752565b906084356001600160401b0381116100db5761040f903690600401610752565b9160403660a31901126100db5760405192610429846106e7565b60a4356001600160401b03811681036100db57845260c4356001600160401b03811681036100db57602085015260e435906001600160401b03821682036100db5761010435916001600160401b0383116100db57602095610491610104943690600401610752565b92604051988997889763632535b960e01b895230926064359260048b01610920565b346100db576101803660031901126100db576004356001600160401b0381116100db576104e4903690600401610752565b6024356001600160401b0381116100db57610503903690600401610752565b906044356001600160401b0381116100db57610523903690600401610752565b9061052c610798565b9160a4356001600160401b0381116100db5761054c903690600401610752565b60c435949091906001600160a01b03861686036100db5760403660e31901126100db576040519261057c846106e7565b60e4356001600160401b03811681036100db578452610104356001600160401b03811681036100db57602085015261012435906001600160401b03821682036100db5761014435916001600160401b0383116100db576020956105e661060f943690600401610752565b926105ef6107c2565b99604051998a98899863e12e9b2760e01b8a526064359260048b01610920565b03815f305af16106ae575b5061062157005b5f8080600f819482546106368160070b6109b7565b6001600160401b0316906001600160401b0319161783555af16106576109e3565b501561065f57005b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b6106c69060203d6020116100df576100d38183610716565b61061a565b346100db575f3660031901126100db576020905f5460070b8152f35b604081019081106001600160401b0382111761070257604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b0382111761070257604052565b6001600160401b03811161070257601f01601f191660200190565b81601f820112156100db5780359061076982610737565b926107776040519485610716565b828452602083830101116100db57815f926020809301838601378301015290565b608435906001600160a01b03821682036100db57565b35906001600160401b03821682036100db57565b610164359081151582036100db57565b6101406003198201126100db576004356001600160401b0381116100db57816107fd91600401610752565b916024356001600160401b0381116100db578261081c91600401610752565b916044356001600160401b0381116100db578161083b91600401610752565b91606435916084356001600160a01b03811681036100db579160a4356001600160401b0381116100db578261087291600401610752565b91604060c48203126100db5760405161088a816106e7565b61089460c46107ae565b81526108a060e46107ae565b602082015291610104356001600160401b03811681036100db579161012435906001600160401b0382116100db576108da91600401610752565b90565b908160209103126100db57516001600160401b03811681036100db5790565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b95936108da999798946001600160401b039661096d889661095f602097610952610990986101408f81815201906108fc565b8d81038a8f0152906108fc565b908b820360408d01526108fc565b60608a01939093526001600160a01b0316608089015287820360a08901526108fc565b968281511660c087015201511660e0840152166101008201526101208184039101526108fc565b60070b677fffffffffffffff81146109cf5760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610a0d573d906109f482610737565b91610a026040519384610716565b82523d5f602084013e565b606090565b15610a1957565b60405162461bcd60e51b815260206004820152601e60248201527f4661696c656420746f2073656e6420457468657220746f2073656e64657200006044820152606490fdfea2646970667358221220f748583a19a37b2aafc4be948806a8d8676de38545599acd78097f4ac4715b5d64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/ICS20Caller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/InterchainSender.json b/precompiles/testutil/contracts/InterchainSender.json index 14a139b89..866168b5e 100644 --- a/precompiles/testutil/contracts/InterchainSender.json +++ b/precompiles/testutil/contracts/InterchainSender.json @@ -404,11 +404,11 @@ "type": "function" } ], - "bytecode": "0x60808060405234601557611116908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631dba685b1461083f57806344c286701461056957806361bc221a1461054a5780636fdf23cc146105135780637492bdd814610479578063accc7b90146103a1578063b9672879146101475763c595699a14610071575f80fd5b34610138576020366003190112610138576004356001600160401b038111610138575f6100a56100c7923690600401610afe565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610b70565b03816108025afa801561013c575f906100f7575b6100f390604051918291602083526020830190610b70565b0390f35b503d805f833e6101078183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926101339201610ef8565b6100db565b5f80fd5b6040513d5f823e3d90fd5b346101385761012036600319011261013857610161610a7d565b6024356001600160a01b03811690819003610138576044356001600160401b03811161013857610195903690600401610afe565b906064356001600160401b038111610138576101b5903690600401610afe565b906084356001600160401b038111610138576101d5903690600401610afe565b9060c435926001600160401b0384116101385785946102c36102a360049460209694610284889661027261020f6101409c36908c01610afe565b93610218610b44565b9d610221610b53565b9e61037e575b50610260604051996102388b610a93565b60648b5260648c8c01526040519e8f9d8e63632535b960e01b815201526101448d0190610b70565b8b81036003190160248d015290610b70565b8981036003190160448b015290610b70565b9160a435606489015260848801526003198783030160a4880152610b70565b9160c48501906001600160401b0360208092828151168552015116910152565b5f6101048401525f8382039160031983016101248601525201815f6108025af1801561013c57610347575b506102f557005b5f808080650da475abf0006103459582546103128160070b610d49565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af161033f610d75565b50610da4565b005b6020813d602011610376575b8161036060209383610ac2565b810103126101385761037190610dfa565b6102ee565b3d9150610353565b5f808080650da475abf00061039b9582546103128160070b610d49565b8e610227565b34610138576020366003190112610138576004356001600160401b038111610138575f6103d561040c923690600401610afe565b606060206040516103e581610a93565b828152015260405180938192632f8fcc5160e11b8352602060048401526024830190610b70565b03816108025afa801561013c575f90610438575b6100f390604051918291602083526020830190610b94565b503d805f833e6104488183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926104749201610f12565b610420565b34610138576104b0602061048c36610c3f565b93989496604093919351998a98899863632535b960e01b8a52339360048b0161103b565b03815f6108025af1801561013c575f906104d9575b6020906001600160401b0360405191168152f35b506020813d60201161050b575b816104f360209383610ac2565b8101031261013857610506602091610dfa565b6104c5565b3d91506104e6565b34610138576104b0602061052636610c3f565b93989496604093919351998a98899863632535b960e01b8a52309360048b0161103b565b34610138575f3660031901126101385760205f5460070b604051908152f35b34610138576020366003190112610138576004356001600160401b038111610138578036039060a0600319830112610138575f60206040516105aa81610a93565b6060815201526040519163303eac4160e21b83526020600484015281600401359060221901811215610138578101602460048201359101916001600160401b03821161013857813603831361013857838261066b608460e49484965f9860a060248801528160c488015287870137878685870101526001600160401b0361063360248301610c2b565b1660448601526001600160401b0361064d60448301610c2b565b16606486015261065f60648201610b63565b15158286015201610b63565b151560a4830152601f01601f191681010301816108025afa801561013c575f915f91610722575b506040519060408201926040835280518094526060830193602060608260051b8601019201945f905b8282106106f75785808686828103602084015260206001600160401b03816106ec8551604086526040860190610b70565b940151169101520390f35b909192602080610713600193605f198a82030186528a51610b94565b980192019201909592916106bb565b9150503d805f833e6107348183610ac2565b8101906040818303126101385780516001600160401b0381116101385781019082601f8301121561013857815161076a81610eab565b926107786040519485610ac2565b81845260208085019260051b820101918583116101385760208201905b83821061081257505050506020810151906001600160401b038211610138570160408184031261013857604051926107cc84610a93565b81516001600160401b0381116101385782019181601f84011215610138576107fe602092848461080696519101610ec2565b855201610dfa565b60208301529082610692565b81516001600160401b0381116101385760209161083489848094880101610f12565b815201910190610795565b346101385761012036600319011261013857610859610a7d565b6024356001600160401b03811161013857610878903690600401610afe565b6044356001600160401b03811161013857610897903690600401610afe565b6064356001600160401b038111610138576108b6903690600401610afe565b9060a4356001600160401b038111610138576108d6903690600401610afe565b9060c4359384151585036101385785926108ee610b44565b906108f7610b53565b96610a32575b856040519261090b84610a93565b606484526064602085015260208686610942878760843560011c9c8d604051998a97889763632535b960e01b895260048901610e0e565b03815f6108025af191821561013c578a926109e7575b509060209661098394939261099c575b60405163632535b960e01b8152988997889760048901610e0e565b03815f6108025af1801561013c5761034757506102f557005b5f546109aa8160070b610d49565b6001600160401b0316906001600160401b031916175f556109e25f808080650da475abf00060018060a01b0388165af161033f610d75565b610968565b90939291506020813d602011610a2a575b81610a0560209383610ac2565b810103126101385760209661098394610a1e8c93610dfa565b50919293945096610958565b3d91506109f8565b5f54610a408160070b610d49565b6001600160401b0316906001600160401b031916175f55610a785f808080650da475abf00060018060a01b038b165af161033f610d75565b6108fd565b600435906001600160a01b038216820361013857565b604081019081106001600160401b03821117610aae57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b03821117610aae57604052565b6001600160401b038111610aae57601f01601f191660200190565b81601f8201121561013857803590610b1582610ae3565b92610b236040519485610ac2565b8284526020838301011161013857815f926020809301838601378301015290565b60e43590811515820361013857565b6101043590811515820361013857565b3590811515820361013857565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6020610ba98251604085526040850190610b70565b910151916020818303910152815180825260208201916020808360051b8301019401925f915b838310610bde57505050505090565b9091929394602080610c1c600193601f1986820301875289519083610c0c8351604084526040840190610b70565b9201519084818403910152610b70565b97019301930191939290610bcf565b35906001600160401b038216820361013857565b90610120600319830112610138576004356001600160401b0381116101385782610c6b91600401610afe565b916024356001600160401b0381116101385781610c8a91600401610afe565b916044356001600160401b0381116101385782610ca991600401610afe565b91606435916084356001600160401b0381116101385782610ccc91600401610afe565b91604060a31982011261013857604051610ce581610a93565b60a4356001600160401b038116810361013857815260c4356001600160401b03811681036101385760208201529160e4356001600160401b0381168103610138579161010435906001600160401b03821161013857610d4691600401610afe565b90565b60070b677fffffffffffffff8114610d615760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610d9f573d90610d8682610ae3565b91610d946040519384610ac2565b82523d5f602084013e565b606090565b15610dab57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b51906001600160401b038216820361013857565b94610e51610e7494610e43610e949795610e3660209c9b966101408c526101408c0190610b70565b908a82038d8c0152610b70565b9088820360408a0152610b70565b60608701939093526001600160a01b0316608086015284820360a0860152610b70565b9260c08301906001600160401b0360208092828151168552015116910152565b5f6101008201526101208183039101525f81520190565b6001600160401b038111610aae5760051b60200190565b929192610ece82610ae3565b91610edc6040519384610ac2565b829481845281830111610138578281602093845f96015e010152565b9080601f83011215610138578151610d4692602001610ec2565b919060408382031261013857604051610f2a81610a93565b809380516001600160401b0381116101385783610f48918301610ef8565b82526020810151906001600160401b03821161013857019180601f8401121561013857825192610f7784610eab565b93610f856040519586610ac2565b80855260208086019160051b830101918383116101385760208101915b838310610fb457505050505060200152565b82516001600160401b038111610138578201906040828703601f1901126101385760405190610fe282610a93565b60208301516001600160401b0381116101385787602061100492860101610ef8565b82526040830151916001600160401b0383116101385761102c88602080969581960101610ef8565b83820152815201920191610fa2565b956001600160401b03956110886110cb9561107a6110ab9661106c610d469f9d9e9a976101408e8181520190610b70565b8c810360208e015290610b70565b908a820360408c0152610b70565b60608901939093526001600160a01b0316608088015286820360a0880152610b70565b9560c08501906001600160401b0360208092828151168552015116910152565b16610100820152610120818403910152610b7056fea26469706673582212208b712e02517d07b13e05213d4f3bc7baff7d01d495d0307ef4d5a73820e3819d64736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631dba685b1461083f57806344c286701461056957806361bc221a1461054a5780636fdf23cc146105135780637492bdd814610479578063accc7b90146103a1578063b9672879146101475763c595699a14610071575f80fd5b34610138576020366003190112610138576004356001600160401b038111610138575f6100a56100c7923690600401610afe565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610b70565b03816108025afa801561013c575f906100f7575b6100f390604051918291602083526020830190610b70565b0390f35b503d805f833e6101078183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926101339201610ef8565b6100db565b5f80fd5b6040513d5f823e3d90fd5b346101385761012036600319011261013857610161610a7d565b6024356001600160a01b03811690819003610138576044356001600160401b03811161013857610195903690600401610afe565b906064356001600160401b038111610138576101b5903690600401610afe565b906084356001600160401b038111610138576101d5903690600401610afe565b9060c435926001600160401b0384116101385785946102c36102a360049460209694610284889661027261020f6101409c36908c01610afe565b93610218610b44565b9d610221610b53565b9e61037e575b50610260604051996102388b610a93565b60648b5260648c8c01526040519e8f9d8e63632535b960e01b815201526101448d0190610b70565b8b81036003190160248d015290610b70565b8981036003190160448b015290610b70565b9160a435606489015260848801526003198783030160a4880152610b70565b9160c48501906001600160401b0360208092828151168552015116910152565b5f6101048401525f8382039160031983016101248601525201815f6108025af1801561013c57610347575b506102f557005b5f808080650da475abf0006103459582546103128160070b610d49565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af161033f610d75565b50610da4565b005b6020813d602011610376575b8161036060209383610ac2565b810103126101385761037190610dfa565b6102ee565b3d9150610353565b5f808080650da475abf00061039b9582546103128160070b610d49565b8e610227565b34610138576020366003190112610138576004356001600160401b038111610138575f6103d561040c923690600401610afe565b606060206040516103e581610a93565b828152015260405180938192632f8fcc5160e11b8352602060048401526024830190610b70565b03816108025afa801561013c575f90610438575b6100f390604051918291602083526020830190610b94565b503d805f833e6104488183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926104749201610f12565b610420565b34610138576104b0602061048c36610c3f565b93989496604093919351998a98899863632535b960e01b8a52339360048b0161103b565b03815f6108025af1801561013c575f906104d9575b6020906001600160401b0360405191168152f35b506020813d60201161050b575b816104f360209383610ac2565b8101031261013857610506602091610dfa565b6104c5565b3d91506104e6565b34610138576104b0602061052636610c3f565b93989496604093919351998a98899863632535b960e01b8a52309360048b0161103b565b34610138575f3660031901126101385760205f5460070b604051908152f35b34610138576020366003190112610138576004356001600160401b038111610138578036039060a0600319830112610138575f60206040516105aa81610a93565b6060815201526040519163303eac4160e21b83526020600484015281600401359060221901811215610138578101602460048201359101916001600160401b03821161013857813603831361013857838261066b608460e49484965f9860a060248801528160c488015287870137878685870101526001600160401b0361063360248301610c2b565b1660448601526001600160401b0361064d60448301610c2b565b16606486015261065f60648201610b63565b15158286015201610b63565b151560a4830152601f01601f191681010301816108025afa801561013c575f915f91610722575b506040519060408201926040835280518094526060830193602060608260051b8601019201945f905b8282106106f75785808686828103602084015260206001600160401b03816106ec8551604086526040860190610b70565b940151169101520390f35b909192602080610713600193605f198a82030186528a51610b94565b980192019201909592916106bb565b9150503d805f833e6107348183610ac2565b8101906040818303126101385780516001600160401b0381116101385781019082601f8301121561013857815161076a81610eab565b926107786040519485610ac2565b81845260208085019260051b820101918583116101385760208201905b83821061081257505050506020810151906001600160401b038211610138570160408184031261013857604051926107cc84610a93565b81516001600160401b0381116101385782019181601f84011215610138576107fe602092848461080696519101610ec2565b855201610dfa565b60208301529082610692565b81516001600160401b0381116101385760209161083489848094880101610f12565b815201910190610795565b346101385761012036600319011261013857610859610a7d565b6024356001600160401b03811161013857610878903690600401610afe565b6044356001600160401b03811161013857610897903690600401610afe565b6064356001600160401b038111610138576108b6903690600401610afe565b9060a4356001600160401b038111610138576108d6903690600401610afe565b9060c4359384151585036101385785926108ee610b44565b906108f7610b53565b96610a32575b856040519261090b84610a93565b606484526064602085015260208686610942878760843560011c9c8d604051998a97889763632535b960e01b895260048901610e0e565b03815f6108025af191821561013c578a926109e7575b509060209661098394939261099c575b60405163632535b960e01b8152988997889760048901610e0e565b03815f6108025af1801561013c5761034757506102f557005b5f546109aa8160070b610d49565b6001600160401b0316906001600160401b031916175f556109e25f808080650da475abf00060018060a01b0388165af161033f610d75565b610968565b90939291506020813d602011610a2a575b81610a0560209383610ac2565b810103126101385760209661098394610a1e8c93610dfa565b50919293945096610958565b3d91506109f8565b5f54610a408160070b610d49565b6001600160401b0316906001600160401b031916175f55610a785f808080650da475abf00060018060a01b038b165af161033f610d75565b6108fd565b600435906001600160a01b038216820361013857565b604081019081106001600160401b03821117610aae57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b03821117610aae57604052565b6001600160401b038111610aae57601f01601f191660200190565b81601f8201121561013857803590610b1582610ae3565b92610b236040519485610ac2565b8284526020838301011161013857815f926020809301838601378301015290565b60e43590811515820361013857565b6101043590811515820361013857565b3590811515820361013857565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6020610ba98251604085526040850190610b70565b910151916020818303910152815180825260208201916020808360051b8301019401925f915b838310610bde57505050505090565b9091929394602080610c1c600193601f1986820301875289519083610c0c8351604084526040840190610b70565b9201519084818403910152610b70565b97019301930191939290610bcf565b35906001600160401b038216820361013857565b90610120600319830112610138576004356001600160401b0381116101385782610c6b91600401610afe565b916024356001600160401b0381116101385781610c8a91600401610afe565b916044356001600160401b0381116101385782610ca991600401610afe565b91606435916084356001600160401b0381116101385782610ccc91600401610afe565b91604060a31982011261013857604051610ce581610a93565b60a4356001600160401b038116810361013857815260c4356001600160401b03811681036101385760208201529160e4356001600160401b0381168103610138579161010435906001600160401b03821161013857610d4691600401610afe565b90565b60070b677fffffffffffffff8114610d615760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610d9f573d90610d8682610ae3565b91610d946040519384610ac2565b82523d5f602084013e565b606090565b15610dab57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b51906001600160401b038216820361013857565b94610e51610e7494610e43610e949795610e3660209c9b966101408c526101408c0190610b70565b908a82038d8c0152610b70565b9088820360408a0152610b70565b60608701939093526001600160a01b0316608086015284820360a0860152610b70565b9260c08301906001600160401b0360208092828151168552015116910152565b5f6101008201526101208183039101525f81520190565b6001600160401b038111610aae5760051b60200190565b929192610ece82610ae3565b91610edc6040519384610ac2565b829481845281830111610138578281602093845f96015e010152565b9080601f83011215610138578151610d4692602001610ec2565b919060408382031261013857604051610f2a81610a93565b809380516001600160401b0381116101385783610f48918301610ef8565b82526020810151906001600160401b03821161013857019180601f8401121561013857825192610f7784610eab565b93610f856040519586610ac2565b80855260208086019160051b830101918383116101385760208101915b838310610fb457505050505060200152565b82516001600160401b038111610138578201906040828703601f1901126101385760405190610fe282610a93565b60208301516001600160401b0381116101385787602061100492860101610ef8565b82526040830151916001600160401b0383116101385761102c88602080969581960101610ef8565b83820152815201920191610fa2565b956001600160401b03956110886110cb9561107a6110ab9661106c610d469f9d9e9a976101408e8181520190610b70565b8c810360208e015290610b70565b908a820360408c0152610b70565b60608901939093526001600160a01b0316608088015286820360a0880152610b70565b9560c08501906001600160401b0360208092828151168552015116910152565b16610100820152610120818403910152610b7056fea26469706673582212208b712e02517d07b13e05213d4f3bc7baff7d01d495d0307ef4d5a73820e3819d64736f6c634300081c0033", + "bytecode": "0x60808060405234601557611116908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631dba685b1461083f57806344c286701461056957806361bc221a1461054a5780636fdf23cc146105135780637492bdd814610479578063accc7b90146103a1578063b9672879146101475763c595699a14610071575f80fd5b34610138576020366003190112610138576004356001600160401b038111610138575f6100a56100c7923690600401610afe565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610b70565b03816108025afa801561013c575f906100f7575b6100f390604051918291602083526020830190610b70565b0390f35b503d805f833e6101078183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926101339201610ef8565b6100db565b5f80fd5b6040513d5f823e3d90fd5b346101385761012036600319011261013857610161610a7d565b6024356001600160a01b03811690819003610138576044356001600160401b03811161013857610195903690600401610afe565b906064356001600160401b038111610138576101b5903690600401610afe565b906084356001600160401b038111610138576101d5903690600401610afe565b9060c435926001600160401b0384116101385785946102c36102a360049460209694610284889661027261020f6101409c36908c01610afe565b93610218610b44565b9d610221610b53565b9e61037e575b50610260604051996102388b610a93565b60648b5260648c8c01526040519e8f9d8e63632535b960e01b815201526101448d0190610b70565b8b81036003190160248d015290610b70565b8981036003190160448b015290610b70565b9160a435606489015260848801526003198783030160a4880152610b70565b9160c48501906001600160401b0360208092828151168552015116910152565b5f6101048401525f8382039160031983016101248601525201815f6108025af1801561013c57610347575b506102f557005b5f808080650da475abf0006103459582546103128160070b610d49565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af161033f610d75565b50610da4565b005b6020813d602011610376575b8161036060209383610ac2565b810103126101385761037190610dfa565b6102ee565b3d9150610353565b5f808080650da475abf00061039b9582546103128160070b610d49565b8e610227565b34610138576020366003190112610138576004356001600160401b038111610138575f6103d561040c923690600401610afe565b606060206040516103e581610a93565b828152015260405180938192632f8fcc5160e11b8352602060048401526024830190610b70565b03816108025afa801561013c575f90610438575b6100f390604051918291602083526020830190610b94565b503d805f833e6104488183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926104749201610f12565b610420565b34610138576104b0602061048c36610c3f565b93989496604093919351998a98899863632535b960e01b8a52339360048b0161103b565b03815f6108025af1801561013c575f906104d9575b6020906001600160401b0360405191168152f35b506020813d60201161050b575b816104f360209383610ac2565b8101031261013857610506602091610dfa565b6104c5565b3d91506104e6565b34610138576104b0602061052636610c3f565b93989496604093919351998a98899863632535b960e01b8a52309360048b0161103b565b34610138575f3660031901126101385760205f5460070b604051908152f35b34610138576020366003190112610138576004356001600160401b038111610138578036039060a0600319830112610138575f60206040516105aa81610a93565b6060815201526040519163303eac4160e21b83526020600484015281600401359060221901811215610138578101602460048201359101916001600160401b03821161013857813603831361013857838261066b608460e49484965f9860a060248801528160c488015287870137878685870101526001600160401b0361063360248301610c2b565b1660448601526001600160401b0361064d60448301610c2b565b16606486015261065f60648201610b63565b15158286015201610b63565b151560a4830152601f01601f191681010301816108025afa801561013c575f915f91610722575b506040519060408201926040835280518094526060830193602060608260051b8601019201945f905b8282106106f75785808686828103602084015260206001600160401b03816106ec8551604086526040860190610b70565b940151169101520390f35b909192602080610713600193605f198a82030186528a51610b94565b980192019201909592916106bb565b9150503d805f833e6107348183610ac2565b8101906040818303126101385780516001600160401b0381116101385781019082601f8301121561013857815161076a81610eab565b926107786040519485610ac2565b81845260208085019260051b820101918583116101385760208201905b83821061081257505050506020810151906001600160401b038211610138570160408184031261013857604051926107cc84610a93565b81516001600160401b0381116101385782019181601f84011215610138576107fe602092848461080696519101610ec2565b855201610dfa565b60208301529082610692565b81516001600160401b0381116101385760209161083489848094880101610f12565b815201910190610795565b346101385761012036600319011261013857610859610a7d565b6024356001600160401b03811161013857610878903690600401610afe565b6044356001600160401b03811161013857610897903690600401610afe565b6064356001600160401b038111610138576108b6903690600401610afe565b9060a4356001600160401b038111610138576108d6903690600401610afe565b9060c4359384151585036101385785926108ee610b44565b906108f7610b53565b96610a32575b856040519261090b84610a93565b606484526064602085015260208686610942878760843560011c9c8d604051998a97889763632535b960e01b895260048901610e0e565b03815f6108025af191821561013c578a926109e7575b509060209661098394939261099c575b60405163632535b960e01b8152988997889760048901610e0e565b03815f6108025af1801561013c5761034757506102f557005b5f546109aa8160070b610d49565b6001600160401b0316906001600160401b031916175f556109e25f808080650da475abf00060018060a01b0388165af161033f610d75565b610968565b90939291506020813d602011610a2a575b81610a0560209383610ac2565b810103126101385760209661098394610a1e8c93610dfa565b50919293945096610958565b3d91506109f8565b5f54610a408160070b610d49565b6001600160401b0316906001600160401b031916175f55610a785f808080650da475abf00060018060a01b038b165af161033f610d75565b6108fd565b600435906001600160a01b038216820361013857565b604081019081106001600160401b03821117610aae57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b03821117610aae57604052565b6001600160401b038111610aae57601f01601f191660200190565b81601f8201121561013857803590610b1582610ae3565b92610b236040519485610ac2565b8284526020838301011161013857815f926020809301838601378301015290565b60e43590811515820361013857565b6101043590811515820361013857565b3590811515820361013857565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6020610ba98251604085526040850190610b70565b910151916020818303910152815180825260208201916020808360051b8301019401925f915b838310610bde57505050505090565b9091929394602080610c1c600193601f1986820301875289519083610c0c8351604084526040840190610b70565b9201519084818403910152610b70565b97019301930191939290610bcf565b35906001600160401b038216820361013857565b90610120600319830112610138576004356001600160401b0381116101385782610c6b91600401610afe565b916024356001600160401b0381116101385781610c8a91600401610afe565b916044356001600160401b0381116101385782610ca991600401610afe565b91606435916084356001600160401b0381116101385782610ccc91600401610afe565b91604060a31982011261013857604051610ce581610a93565b60a4356001600160401b038116810361013857815260c4356001600160401b03811681036101385760208201529160e4356001600160401b0381168103610138579161010435906001600160401b03821161013857610d4691600401610afe565b90565b60070b677fffffffffffffff8114610d615760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610d9f573d90610d8682610ae3565b91610d946040519384610ac2565b82523d5f602084013e565b606090565b15610dab57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b51906001600160401b038216820361013857565b94610e51610e7494610e43610e949795610e3660209c9b966101408c526101408c0190610b70565b908a82038d8c0152610b70565b9088820360408a0152610b70565b60608701939093526001600160a01b0316608086015284820360a0860152610b70565b9260c08301906001600160401b0360208092828151168552015116910152565b5f6101008201526101208183039101525f81520190565b6001600160401b038111610aae5760051b60200190565b929192610ece82610ae3565b91610edc6040519384610ac2565b829481845281830111610138578281602093845f96015e010152565b9080601f83011215610138578151610d4692602001610ec2565b919060408382031261013857604051610f2a81610a93565b809380516001600160401b0381116101385783610f48918301610ef8565b82526020810151906001600160401b03821161013857019180601f8401121561013857825192610f7784610eab565b93610f856040519586610ac2565b80855260208086019160051b830101918383116101385760208101915b838310610fb457505050505060200152565b82516001600160401b038111610138578201906040828703601f1901126101385760405190610fe282610a93565b60208301516001600160401b0381116101385787602061100492860101610ef8565b82526040830151916001600160401b0383116101385761102c88602080969581960101610ef8565b83820152815201920191610fa2565b956001600160401b03956110886110cb9561107a6110ab9661106c610d469f9d9e9a976101408e8181520190610b70565b8c810360208e015290610b70565b908a820360408c0152610b70565b60608901939093526001600160a01b0316608088015286820360a0880152610b70565b9560c08501906001600160401b0360208092828151168552015116910152565b16610100820152610120818403910152610b7056fea2646970667358221220facf7c1f8ff52decf92638bf2f09ac81cbd2d62977108eea48894c78210cb0d364736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631dba685b1461083f57806344c286701461056957806361bc221a1461054a5780636fdf23cc146105135780637492bdd814610479578063accc7b90146103a1578063b9672879146101475763c595699a14610071575f80fd5b34610138576020366003190112610138576004356001600160401b038111610138575f6100a56100c7923690600401610afe565b6040518093819263b5cb6e7d60e01b8352602060048401526024830190610b70565b03816108025afa801561013c575f906100f7575b6100f390604051918291602083526020830190610b70565b0390f35b503d805f833e6101078183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926101339201610ef8565b6100db565b5f80fd5b6040513d5f823e3d90fd5b346101385761012036600319011261013857610161610a7d565b6024356001600160a01b03811690819003610138576044356001600160401b03811161013857610195903690600401610afe565b906064356001600160401b038111610138576101b5903690600401610afe565b906084356001600160401b038111610138576101d5903690600401610afe565b9060c435926001600160401b0384116101385785946102c36102a360049460209694610284889661027261020f6101409c36908c01610afe565b93610218610b44565b9d610221610b53565b9e61037e575b50610260604051996102388b610a93565b60648b5260648c8c01526040519e8f9d8e63632535b960e01b815201526101448d0190610b70565b8b81036003190160248d015290610b70565b8981036003190160448b015290610b70565b9160a435606489015260848801526003198783030160a4880152610b70565b9160c48501906001600160401b0360208092828151168552015116910152565b5f6101048401525f8382039160031983016101248601525201815f6108025af1801561013c57610347575b506102f557005b5f808080650da475abf0006103459582546103128160070b610d49565b6001600160401b031667ffffffffffffffff19919091161783556001600160a01b03165af161033f610d75565b50610da4565b005b6020813d602011610376575b8161036060209383610ac2565b810103126101385761037190610dfa565b6102ee565b3d9150610353565b5f808080650da475abf00061039b9582546103128160070b610d49565b8e610227565b34610138576020366003190112610138576004356001600160401b038111610138575f6103d561040c923690600401610afe565b606060206040516103e581610a93565b828152015260405180938192632f8fcc5160e11b8352602060048401526024830190610b70565b03816108025afa801561013c575f90610438575b6100f390604051918291602083526020830190610b94565b503d805f833e6104488183610ac2565b810190602081830312610138578051916001600160401b038311610138576100f3926104749201610f12565b610420565b34610138576104b0602061048c36610c3f565b93989496604093919351998a98899863632535b960e01b8a52339360048b0161103b565b03815f6108025af1801561013c575f906104d9575b6020906001600160401b0360405191168152f35b506020813d60201161050b575b816104f360209383610ac2565b8101031261013857610506602091610dfa565b6104c5565b3d91506104e6565b34610138576104b0602061052636610c3f565b93989496604093919351998a98899863632535b960e01b8a52309360048b0161103b565b34610138575f3660031901126101385760205f5460070b604051908152f35b34610138576020366003190112610138576004356001600160401b038111610138578036039060a0600319830112610138575f60206040516105aa81610a93565b6060815201526040519163303eac4160e21b83526020600484015281600401359060221901811215610138578101602460048201359101916001600160401b03821161013857813603831361013857838261066b608460e49484965f9860a060248801528160c488015287870137878685870101526001600160401b0361063360248301610c2b565b1660448601526001600160401b0361064d60448301610c2b565b16606486015261065f60648201610b63565b15158286015201610b63565b151560a4830152601f01601f191681010301816108025afa801561013c575f915f91610722575b506040519060408201926040835280518094526060830193602060608260051b8601019201945f905b8282106106f75785808686828103602084015260206001600160401b03816106ec8551604086526040860190610b70565b940151169101520390f35b909192602080610713600193605f198a82030186528a51610b94565b980192019201909592916106bb565b9150503d805f833e6107348183610ac2565b8101906040818303126101385780516001600160401b0381116101385781019082601f8301121561013857815161076a81610eab565b926107786040519485610ac2565b81845260208085019260051b820101918583116101385760208201905b83821061081257505050506020810151906001600160401b038211610138570160408184031261013857604051926107cc84610a93565b81516001600160401b0381116101385782019181601f84011215610138576107fe602092848461080696519101610ec2565b855201610dfa565b60208301529082610692565b81516001600160401b0381116101385760209161083489848094880101610f12565b815201910190610795565b346101385761012036600319011261013857610859610a7d565b6024356001600160401b03811161013857610878903690600401610afe565b6044356001600160401b03811161013857610897903690600401610afe565b6064356001600160401b038111610138576108b6903690600401610afe565b9060a4356001600160401b038111610138576108d6903690600401610afe565b9060c4359384151585036101385785926108ee610b44565b906108f7610b53565b96610a32575b856040519261090b84610a93565b606484526064602085015260208686610942878760843560011c9c8d604051998a97889763632535b960e01b895260048901610e0e565b03815f6108025af191821561013c578a926109e7575b509060209661098394939261099c575b60405163632535b960e01b8152988997889760048901610e0e565b03815f6108025af1801561013c5761034757506102f557005b5f546109aa8160070b610d49565b6001600160401b0316906001600160401b031916175f556109e25f808080650da475abf00060018060a01b0388165af161033f610d75565b610968565b90939291506020813d602011610a2a575b81610a0560209383610ac2565b810103126101385760209661098394610a1e8c93610dfa565b50919293945096610958565b3d91506109f8565b5f54610a408160070b610d49565b6001600160401b0316906001600160401b031916175f55610a785f808080650da475abf00060018060a01b038b165af161033f610d75565b6108fd565b600435906001600160a01b038216820361013857565b604081019081106001600160401b03821117610aae57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f801991011681019081106001600160401b03821117610aae57604052565b6001600160401b038111610aae57601f01601f191660200190565b81601f8201121561013857803590610b1582610ae3565b92610b236040519485610ac2565b8284526020838301011161013857815f926020809301838601378301015290565b60e43590811515820361013857565b6101043590811515820361013857565b3590811515820361013857565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6020610ba98251604085526040850190610b70565b910151916020818303910152815180825260208201916020808360051b8301019401925f915b838310610bde57505050505090565b9091929394602080610c1c600193601f1986820301875289519083610c0c8351604084526040840190610b70565b9201519084818403910152610b70565b97019301930191939290610bcf565b35906001600160401b038216820361013857565b90610120600319830112610138576004356001600160401b0381116101385782610c6b91600401610afe565b916024356001600160401b0381116101385781610c8a91600401610afe565b916044356001600160401b0381116101385782610ca991600401610afe565b91606435916084356001600160401b0381116101385782610ccc91600401610afe565b91604060a31982011261013857604051610ce581610a93565b60a4356001600160401b038116810361013857815260c4356001600160401b03811681036101385760208201529160e4356001600160401b0381168103610138579161010435906001600160401b03821161013857610d4691600401610afe565b90565b60070b677fffffffffffffff8114610d615760010190565b634e487b7160e01b5f52601160045260245ffd5b3d15610d9f573d90610d8682610ae3565b91610d946040519384610ac2565b82523d5f602084013e565b606090565b15610dab57565b60405162461bcd60e51b815260206004820152602160248201527f4661696c656420746f2073656e6420457468657220746f2064656c656761746f6044820152603960f91b6064820152608490fd5b51906001600160401b038216820361013857565b94610e51610e7494610e43610e949795610e3660209c9b966101408c526101408c0190610b70565b908a82038d8c0152610b70565b9088820360408a0152610b70565b60608701939093526001600160a01b0316608086015284820360a0860152610b70565b9260c08301906001600160401b0360208092828151168552015116910152565b5f6101008201526101208183039101525f81520190565b6001600160401b038111610aae5760051b60200190565b929192610ece82610ae3565b91610edc6040519384610ac2565b829481845281830111610138578281602093845f96015e010152565b9080601f83011215610138578151610d4692602001610ec2565b919060408382031261013857604051610f2a81610a93565b809380516001600160401b0381116101385783610f48918301610ef8565b82526020810151906001600160401b03821161013857019180601f8401121561013857825192610f7784610eab565b93610f856040519586610ac2565b80855260208086019160051b830101918383116101385760208101915b838310610fb457505050505060200152565b82516001600160401b038111610138578201906040828703601f1901126101385760405190610fe282610a93565b60208301516001600160401b0381116101385787602061100492860101610ef8565b82526040830151916001600160401b0383116101385761102c88602080969581960101610ef8565b83820152815201920191610fa2565b956001600160401b03956110886110cb9561107a6110ab9661106c610d469f9d9e9a976101408e8181520190610b70565b8c810360208e015290610b70565b908a820360408c0152610b70565b60608901939093526001600160a01b0316608088015286820360a0880152610b70565b9560c08501906001600160401b0360208092828151168552015116910152565b16610100820152610120818403910152610b7056fea2646970667358221220facf7c1f8ff52decf92638bf2f09ac81cbd2d62977108eea48894c78210cb0d364736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/InterchainSender.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/InterchainSenderCaller.json b/precompiles/testutil/contracts/InterchainSenderCaller.json index 094746ca1..f832bdbc1 100644 --- a/precompiles/testutil/contracts/InterchainSenderCaller.json +++ b/precompiles/testutil/contracts/InterchainSenderCaller.json @@ -180,11 +180,11 @@ "type": "function" } ], - "bytecode": "0x6080601f61068a38819003918201601f19168301916001600160401b03831184841017607c57808492602094604052833981010312607857516001600160a01b03811681036078575f8054600160401b600160e01b031916604092831b600160401b600160e01b0316179055516105f990816100918239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f5f3560e01c8063073989ff146102e2578063427c1cb61461021757806361bc221a146101f757806369a98b2b146100d25763ec3c5a1414610051575f80fd5b346100c05780610060366103ff565b86549295919460409390931c6001600160a01b03169291833b156100ce576100a38896928793604051998a9889978896631dba685b60e01b88526004880161054e565b03925af180156100c3576100b45750fd5b816100be91610375565b505b80fd5b6040513d84823e3d90fd5b8780fd5b50346100c057806100e2366103ff565b86959291949395546100f68160070b6104a2565b67ffffffffffffffff199091166001600160401b03919091161780885560401c6001600160a01b0316803b156100ce578787849287838861014f888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916101d7575b5050303b156101d357869461018b926040519788968796633b0f168560e21b8852600488016104f2565b038183305af16101be575b50546101a48160070b6104a2565b6001600160401b0316906001600160401b03191617815580f35b816101c891610375565b6100c057805f610196565b8680fd5b816101e191610375565b6101d357865f610161565b6040513d8a823e3d90fd5b50346100c057806003193601126100c0576020905460070b604051908152f35b50346100c05780610227366103ff565b8654939591949391929160401c6001600160a01b0316803b156100ce578787849287838861026d888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916102cd575b5050303b156101d35786946102a9926040519788968796633b0f168560e21b8852600488016104f2565b038183305af180156100c3576102bc5750f35b816102c691610375565b6100c05780f35b816102d791610375565b6101d357865f61027f565b5034610371576102f1366103ff565b5f959291949395546103058160070b6104a2565b6001600160401b0316906001600160401b031916175f55303b15610371575f9461034492604051978896879663213e0e5b60e11b8852600488016104f2565b038183305af161035e575b5080546101a48160070b6104a2565b61036a91505f90610375565b5f5f61034f565b5f80fd5b90601f801991011681019081106001600160401b0382111761039657604052565b634e487b7160e01b5f52604160045260245ffd5b81601f82011215610371578035906001600160401b03821161039657604051926103de601f8401601f191660200185610375565b8284526020838301011161037157815f926020809301838601378301015290565b9060c0600319830112610371576004356001600160a01b038116810361037157916024356001600160401b038111610371578161043e916004016103aa565b916044356001600160401b038111610371578261045d916004016103aa565b916064356001600160401b038111610371578161047c916004016103aa565b916084359160a435906001600160401b0382116103715761049f916004016103aa565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b5f52601160045260245ffd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9261052d9061051f61053b9461049f99979460018060a01b0316875260c0602088015260c08701906104ce565b9085820360408701526104ce565b9083820360608501526104ce565b92608082015260a08184039101526104ce565b969590610100946105916105b2956105836001999661012060208e61059f988e8060a01b0316815201526101208d01906104ce565b908b820360408d01526104ce565b9089820360608b01526104ce565b91608088015286820360a08801526104ce565b938260c08201528260e0820152015256fea2646970667358221220f25522701efc45eccede682dcc5d966317dfd3ff193d7afce1a617d165fc821764736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f5f3560e01c8063073989ff146102e2578063427c1cb61461021757806361bc221a146101f757806369a98b2b146100d25763ec3c5a1414610051575f80fd5b346100c05780610060366103ff565b86549295919460409390931c6001600160a01b03169291833b156100ce576100a38896928793604051998a9889978896631dba685b60e01b88526004880161054e565b03925af180156100c3576100b45750fd5b816100be91610375565b505b80fd5b6040513d84823e3d90fd5b8780fd5b50346100c057806100e2366103ff565b86959291949395546100f68160070b6104a2565b67ffffffffffffffff199091166001600160401b03919091161780885560401c6001600160a01b0316803b156100ce578787849287838861014f888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916101d7575b5050303b156101d357869461018b926040519788968796633b0f168560e21b8852600488016104f2565b038183305af16101be575b50546101a48160070b6104a2565b6001600160401b0316906001600160401b03191617815580f35b816101c891610375565b6100c057805f610196565b8680fd5b816101e191610375565b6101d357865f610161565b6040513d8a823e3d90fd5b50346100c057806003193601126100c0576020905460070b604051908152f35b50346100c05780610227366103ff565b8654939591949391929160401c6001600160a01b0316803b156100ce578787849287838861026d888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916102cd575b5050303b156101d35786946102a9926040519788968796633b0f168560e21b8852600488016104f2565b038183305af180156100c3576102bc5750f35b816102c691610375565b6100c05780f35b816102d791610375565b6101d357865f61027f565b5034610371576102f1366103ff565b5f959291949395546103058160070b6104a2565b6001600160401b0316906001600160401b031916175f55303b15610371575f9461034492604051978896879663213e0e5b60e11b8852600488016104f2565b038183305af161035e575b5080546101a48160070b6104a2565b61036a91505f90610375565b5f5f61034f565b5f80fd5b90601f801991011681019081106001600160401b0382111761039657604052565b634e487b7160e01b5f52604160045260245ffd5b81601f82011215610371578035906001600160401b03821161039657604051926103de601f8401601f191660200185610375565b8284526020838301011161037157815f926020809301838601378301015290565b9060c0600319830112610371576004356001600160a01b038116810361037157916024356001600160401b038111610371578161043e916004016103aa565b916044356001600160401b038111610371578261045d916004016103aa565b916064356001600160401b038111610371578161047c916004016103aa565b916084359160a435906001600160401b0382116103715761049f916004016103aa565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b5f52601160045260245ffd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9261052d9061051f61053b9461049f99979460018060a01b0316875260c0602088015260c08701906104ce565b9085820360408701526104ce565b9083820360608501526104ce565b92608082015260a08184039101526104ce565b969590610100946105916105b2956105836001999661012060208e61059f988e8060a01b0316815201526101208d01906104ce565b908b820360408d01526104ce565b9089820360608b01526104ce565b91608088015286820360a08801526104ce565b938260c08201528260e0820152015256fea2646970667358221220f25522701efc45eccede682dcc5d966317dfd3ff193d7afce1a617d165fc821764736f6c634300081c0033", + "bytecode": "0x6080601f61068a38819003918201601f19168301916001600160401b03831184841017607c57808492602094604052833981010312607857516001600160a01b03811681036078575f8054600160401b600160e01b031916604092831b600160401b600160e01b0316179055516105f990816100918239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f5f3560e01c8063073989ff146102e2578063427c1cb61461021757806361bc221a146101f757806369a98b2b146100d25763ec3c5a1414610051575f80fd5b346100c05780610060366103ff565b86549295919460409390931c6001600160a01b03169291833b156100ce576100a38896928793604051998a9889978896631dba685b60e01b88526004880161054e565b03925af180156100c3576100b45750fd5b816100be91610375565b505b80fd5b6040513d84823e3d90fd5b8780fd5b50346100c057806100e2366103ff565b86959291949395546100f68160070b6104a2565b67ffffffffffffffff199091166001600160401b03919091161780885560401c6001600160a01b0316803b156100ce578787849287838861014f888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916101d7575b5050303b156101d357869461018b926040519788968796633b0f168560e21b8852600488016104f2565b038183305af16101be575b50546101a48160070b6104a2565b6001600160401b0316906001600160401b03191617815580f35b816101c891610375565b6100c057805f610196565b8680fd5b816101e191610375565b6101d357865f610161565b6040513d8a823e3d90fd5b50346100c057806003193601126100c0576020905460070b604051908152f35b50346100c05780610227366103ff565b8654939591949391929160401c6001600160a01b0316803b156100ce578787849287838861026d888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916102cd575b5050303b156101d35786946102a9926040519788968796633b0f168560e21b8852600488016104f2565b038183305af180156100c3576102bc5750f35b816102c691610375565b6100c05780f35b816102d791610375565b6101d357865f61027f565b5034610371576102f1366103ff565b5f959291949395546103058160070b6104a2565b6001600160401b0316906001600160401b031916175f55303b15610371575f9461034492604051978896879663213e0e5b60e11b8852600488016104f2565b038183305af161035e575b5080546101a48160070b6104a2565b61036a91505f90610375565b5f5f61034f565b5f80fd5b90601f801991011681019081106001600160401b0382111761039657604052565b634e487b7160e01b5f52604160045260245ffd5b81601f82011215610371578035906001600160401b03821161039657604051926103de601f8401601f191660200185610375565b8284526020838301011161037157815f926020809301838601378301015290565b9060c0600319830112610371576004356001600160a01b038116810361037157916024356001600160401b038111610371578161043e916004016103aa565b916044356001600160401b038111610371578261045d916004016103aa565b916064356001600160401b038111610371578161047c916004016103aa565b916084359160a435906001600160401b0382116103715761049f916004016103aa565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b5f52601160045260245ffd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9261052d9061051f61053b9461049f99979460018060a01b0316875260c0602088015260c08701906104ce565b9085820360408701526104ce565b9083820360608501526104ce565b92608082015260a08184039101526104ce565b969590610100946105916105b2956105836001999661012060208e61059f988e8060a01b0316815201526101208d01906104ce565b908b820360408d01526104ce565b9089820360608b01526104ce565b91608088015286820360a08801526104ce565b938260c08201528260e0820152015256fea264697066735822122053b89a32df54427ea52a4cbcac2462f775d25bea174fd496b421122d57e1412764736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f5f3560e01c8063073989ff146102e2578063427c1cb61461021757806361bc221a146101f757806369a98b2b146100d25763ec3c5a1414610051575f80fd5b346100c05780610060366103ff565b86549295919460409390931c6001600160a01b03169291833b156100ce576100a38896928793604051998a9889978896631dba685b60e01b88526004880161054e565b03925af180156100c3576100b45750fd5b816100be91610375565b505b80fd5b6040513d84823e3d90fd5b8780fd5b50346100c057806100e2366103ff565b86959291949395546100f68160070b6104a2565b67ffffffffffffffff199091166001600160401b03919091161780885560401c6001600160a01b0316803b156100ce578787849287838861014f888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916101d7575b5050303b156101d357869461018b926040519788968796633b0f168560e21b8852600488016104f2565b038183305af16101be575b50546101a48160070b6104a2565b6001600160401b0316906001600160401b03191617815580f35b816101c891610375565b6100c057805f610196565b8680fd5b816101e191610375565b6101d357865f610161565b6040513d8a823e3d90fd5b50346100c057806003193601126100c0576020905460070b604051908152f35b50346100c05780610227366103ff565b8654939591949391929160401c6001600160a01b0316803b156100ce578787849287838861026d888d604051998a9889978896631dba685b60e01b88526004880161054e565b03925af19081156101ec5788916102cd575b5050303b156101d35786946102a9926040519788968796633b0f168560e21b8852600488016104f2565b038183305af180156100c3576102bc5750f35b816102c691610375565b6100c05780f35b816102d791610375565b6101d357865f61027f565b5034610371576102f1366103ff565b5f959291949395546103058160070b6104a2565b6001600160401b0316906001600160401b031916175f55303b15610371575f9461034492604051978896879663213e0e5b60e11b8852600488016104f2565b038183305af161035e575b5080546101a48160070b6104a2565b61036a91505f90610375565b5f5f61034f565b5f80fd5b90601f801991011681019081106001600160401b0382111761039657604052565b634e487b7160e01b5f52604160045260245ffd5b81601f82011215610371578035906001600160401b03821161039657604051926103de601f8401601f191660200185610375565b8284526020838301011161037157815f926020809301838601378301015290565b9060c0600319830112610371576004356001600160a01b038116810361037157916024356001600160401b038111610371578161043e916004016103aa565b916044356001600160401b038111610371578261045d916004016103aa565b916064356001600160401b038111610371578161047c916004016103aa565b916084359160a435906001600160401b0382116103715761049f916004016103aa565b90565b60070b677fffffffffffffff81146104ba5760010190565b634e487b7160e01b5f52601160045260245ffd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9261052d9061051f61053b9461049f99979460018060a01b0316875260c0602088015260c08701906104ce565b9085820360408701526104ce565b9083820360608501526104ce565b92608082015260a08184039101526104ce565b969590610100946105916105b2956105836001999661012060208e61059f988e8060a01b0316815201526101208d01906104ce565b908b820360408d01526104ce565b9089820360608b01526104ce565b91608088015286820360a08801526104ce565b938260c08201528260e0820152015256fea264697066735822122053b89a32df54427ea52a4cbcac2462f775d25bea174fd496b421122d57e1412764736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/InterchainSenderCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/Reverter.json b/precompiles/testutil/contracts/Reverter.json index a31fb5abf..99573906e 100644 --- a/precompiles/testutil/contracts/Reverter.json +++ b/precompiles/testutil/contracts/Reverter.json @@ -38,11 +38,11 @@ "type": "receive" } ], - "bytecode": "0x6080806040525f80556105ba90816100158239f3fe608080604052600436101561001c575b50361561001a575f80fd5b005b5f905f3560e01c90816379388e941461019b575063c04062260361000f5734610197575f366003190112610197576100545f546104c0565b805f5547303b156101975760405191631e4e23a560e21b8352600483015260248201525f8160448183305af19081610182575b5061017d5780805460a2604051906100a2602082018361034f565b80825260208201906104e382396100d86020604051809382820195518091875e810187838201520301601f19810183528261034f565b5190209060405191602083019160ff60f81b83523060601b6021850152603584015260558301526055825261010e60758361034f565b905190206001600160a01b0316803b1561017a57818091600460405180948193633ccfd60b60e01b83525af1801561016f57610157575b50505b61015281546104c0565b815580f35b816101619161034f565b61016c57805f610145565b80fd5b6040513d84823e3d90fd5b50fd5b610148565b61018f9192505f9061034f565b5f905f610087565b5f80fd5b346101975760403660031901126101975760a290818101918183106001600160401b03841117610330576104e3823980600435920390602435f51561034457604051630a97c34560e31b81523060048201525f816024816108015afa801561034457610205575f80fd5b3d805f833e610214818361034f565b81016040828203126101975781516001600160401b03811161019757820181601f8201121561019757805160208061024b83610370565b610258604051918261034f565b838152019160051b830101918383116101975760208101915b838310610299575050505060208201516001600160401b0381116101975761019792016103dc565b82516001600160401b038111610197578201906040828703601f1901126101975760405190604082018281106001600160401b038211176103305760405260208301516001600160401b038111610197578760206102f992860101610387565b82526040830151916001600160401b03831161019757610321886020809695819601016103dc565b83820152815201920191610271565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b90601f801991011681019081106001600160401b0382111761033057604052565b6001600160401b0381116103305760051b60200190565b81601f82011215610197578051906001600160401b03821161033057604051926103bb601f8401601f19166020018561034f565b8284526020838301011161019757815f9260208093018386015e8301015290565b9080601f83011215610197578151916103f483610370565b92610402604051948561034f565b80845260208085019160051b830101918383116101975760208101915b83831061042e57505050505090565b82516001600160401b038111610197578201906060828703601f1901126101975760405191606083018381106001600160401b03821117610330576040526020810151906001600160401b03821161019757610491886020606094840101610387565b84526040810151602085015201519060ff8216820361019757826020939260408594015281520192019161041f565b5f1981146104ce5760010190565b634e487b7160e01b5f52601160045260245ffdfe6080806040526092908160108239f3fe608060405260043610156010575f80fd5b5f3560e01c633ccfd60b146022575f80fd5b346058575f3660031901126058575f808080478181156050575b3390f115604557005b6040513d5f823e3d90fd5b506108fc603c565b5f80fdfea2646970667358221220d719ea0b8c72031e0f33affc01dd68e7e971c7613ba03975f1b74b85671a0b1a64736f6c634300081c0033a2646970667358221220cd9606b84bdeea1ae18a13a27fe9168cbad090580822174a6e8a219519fd59cb64736f6c634300081c0033", - "deployedBytecode": "0x608080604052600436101561001c575b50361561001a575f80fd5b005b5f905f3560e01c90816379388e941461019b575063c04062260361000f5734610197575f366003190112610197576100545f546104c0565b805f5547303b156101975760405191631e4e23a560e21b8352600483015260248201525f8160448183305af19081610182575b5061017d5780805460a2604051906100a2602082018361034f565b80825260208201906104e382396100d86020604051809382820195518091875e810187838201520301601f19810183528261034f565b5190209060405191602083019160ff60f81b83523060601b6021850152603584015260558301526055825261010e60758361034f565b905190206001600160a01b0316803b1561017a57818091600460405180948193633ccfd60b60e01b83525af1801561016f57610157575b50505b61015281546104c0565b815580f35b816101619161034f565b61016c57805f610145565b80fd5b6040513d84823e3d90fd5b50fd5b610148565b61018f9192505f9061034f565b5f905f610087565b5f80fd5b346101975760403660031901126101975760a290818101918183106001600160401b03841117610330576104e3823980600435920390602435f51561034457604051630a97c34560e31b81523060048201525f816024816108015afa801561034457610205575f80fd5b3d805f833e610214818361034f565b81016040828203126101975781516001600160401b03811161019757820181601f8201121561019757805160208061024b83610370565b610258604051918261034f565b838152019160051b830101918383116101975760208101915b838310610299575050505060208201516001600160401b0381116101975761019792016103dc565b82516001600160401b038111610197578201906040828703601f1901126101975760405190604082018281106001600160401b038211176103305760405260208301516001600160401b038111610197578760206102f992860101610387565b82526040830151916001600160401b03831161019757610321886020809695819601016103dc565b83820152815201920191610271565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b90601f801991011681019081106001600160401b0382111761033057604052565b6001600160401b0381116103305760051b60200190565b81601f82011215610197578051906001600160401b03821161033057604051926103bb601f8401601f19166020018561034f565b8284526020838301011161019757815f9260208093018386015e8301015290565b9080601f83011215610197578151916103f483610370565b92610402604051948561034f565b80845260208085019160051b830101918383116101975760208101915b83831061042e57505050505090565b82516001600160401b038111610197578201906060828703601f1901126101975760405191606083018381106001600160401b03821117610330576040526020810151906001600160401b03821161019757610491886020606094840101610387565b84526040810151602085015201519060ff8216820361019757826020939260408594015281520192019161041f565b5f1981146104ce5760010190565b634e487b7160e01b5f52601160045260245ffdfe6080806040526092908160108239f3fe608060405260043610156010575f80fd5b5f3560e01c633ccfd60b146022575f80fd5b346058575f3660031901126058575f808080478181156050575b3390f115604557005b6040513d5f823e3d90fd5b506108fc603c565b5f80fdfea2646970667358221220d719ea0b8c72031e0f33affc01dd68e7e971c7613ba03975f1b74b85671a0b1a64736f6c634300081c0033a2646970667358221220cd9606b84bdeea1ae18a13a27fe9168cbad090580822174a6e8a219519fd59cb64736f6c634300081c0033", + "bytecode": "0x6080806040525f80556105ba90816100158239f3fe608080604052600436101561001c575b50361561001a575f80fd5b005b5f905f3560e01c90816379388e941461019b575063c04062260361000f5734610197575f366003190112610197576100545f546104c0565b805f5547303b156101975760405191631e4e23a560e21b8352600483015260248201525f8160448183305af19081610182575b5061017d5780805460a2604051906100a2602082018361034f565b80825260208201906104e382396100d86020604051809382820195518091875e810187838201520301601f19810183528261034f565b5190209060405191602083019160ff60f81b83523060601b6021850152603584015260558301526055825261010e60758361034f565b905190206001600160a01b0316803b1561017a57818091600460405180948193633ccfd60b60e01b83525af1801561016f57610157575b50505b61015281546104c0565b815580f35b816101619161034f565b61016c57805f610145565b80fd5b6040513d84823e3d90fd5b50fd5b610148565b61018f9192505f9061034f565b5f905f610087565b5f80fd5b346101975760403660031901126101975760a290818101918183106001600160401b03841117610330576104e3823980600435920390602435f51561034457604051630a97c34560e31b81523060048201525f816024816108015afa801561034457610205575f80fd5b3d805f833e610214818361034f565b81016040828203126101975781516001600160401b03811161019757820181601f8201121561019757805160208061024b83610370565b610258604051918261034f565b838152019160051b830101918383116101975760208101915b838310610299575050505060208201516001600160401b0381116101975761019792016103dc565b82516001600160401b038111610197578201906040828703601f1901126101975760405190604082018281106001600160401b038211176103305760405260208301516001600160401b038111610197578760206102f992860101610387565b82526040830151916001600160401b03831161019757610321886020809695819601016103dc565b83820152815201920191610271565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b90601f801991011681019081106001600160401b0382111761033057604052565b6001600160401b0381116103305760051b60200190565b81601f82011215610197578051906001600160401b03821161033057604051926103bb601f8401601f19166020018561034f565b8284526020838301011161019757815f9260208093018386015e8301015290565b9080601f83011215610197578151916103f483610370565b92610402604051948561034f565b80845260208085019160051b830101918383116101975760208101915b83831061042e57505050505090565b82516001600160401b038111610197578201906060828703601f1901126101975760405191606083018381106001600160401b03821117610330576040526020810151906001600160401b03821161019757610491886020606094840101610387565b84526040810151602085015201519060ff8216820361019757826020939260408594015281520192019161041f565b5f1981146104ce5760010190565b634e487b7160e01b5f52601160045260245ffdfe6080806040526092908160108239f3fe608060405260043610156010575f80fd5b5f3560e01c633ccfd60b146022575f80fd5b346058575f3660031901126058575f808080478181156050575b3390f115604557005b6040513d5f823e3d90fd5b506108fc603c565b5f80fdfea26469706673582212206293eb6f85b92a62b400e991d3773663e0977d34a10a34675c64ae80740a257e64736f6c634300081c0033a264697066735822122027d8addcf8bd9b97f1926a8a6addf954d380d877b2c5a181d65d319102c22f6b64736f6c634300081c0033", + "deployedBytecode": "0x608080604052600436101561001c575b50361561001a575f80fd5b005b5f905f3560e01c90816379388e941461019b575063c04062260361000f5734610197575f366003190112610197576100545f546104c0565b805f5547303b156101975760405191631e4e23a560e21b8352600483015260248201525f8160448183305af19081610182575b5061017d5780805460a2604051906100a2602082018361034f565b80825260208201906104e382396100d86020604051809382820195518091875e810187838201520301601f19810183528261034f565b5190209060405191602083019160ff60f81b83523060601b6021850152603584015260558301526055825261010e60758361034f565b905190206001600160a01b0316803b1561017a57818091600460405180948193633ccfd60b60e01b83525af1801561016f57610157575b50505b61015281546104c0565b815580f35b816101619161034f565b61016c57805f610145565b80fd5b6040513d84823e3d90fd5b50fd5b610148565b61018f9192505f9061034f565b5f905f610087565b5f80fd5b346101975760403660031901126101975760a290818101918183106001600160401b03841117610330576104e3823980600435920390602435f51561034457604051630a97c34560e31b81523060048201525f816024816108015afa801561034457610205575f80fd5b3d805f833e610214818361034f565b81016040828203126101975781516001600160401b03811161019757820181601f8201121561019757805160208061024b83610370565b610258604051918261034f565b838152019160051b830101918383116101975760208101915b838310610299575050505060208201516001600160401b0381116101975761019792016103dc565b82516001600160401b038111610197578201906040828703601f1901126101975760405190604082018281106001600160401b038211176103305760405260208301516001600160401b038111610197578760206102f992860101610387565b82526040830151916001600160401b03831161019757610321886020809695819601016103dc565b83820152815201920191610271565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b90601f801991011681019081106001600160401b0382111761033057604052565b6001600160401b0381116103305760051b60200190565b81601f82011215610197578051906001600160401b03821161033057604051926103bb601f8401601f19166020018561034f565b8284526020838301011161019757815f9260208093018386015e8301015290565b9080601f83011215610197578151916103f483610370565b92610402604051948561034f565b80845260208085019160051b830101918383116101975760208101915b83831061042e57505050505090565b82516001600160401b038111610197578201906060828703601f1901126101975760405191606083018381106001600160401b03821117610330576040526020810151906001600160401b03821161019757610491886020606094840101610387565b84526040810151602085015201519060ff8216820361019757826020939260408594015281520192019161041f565b5f1981146104ce5760010190565b634e487b7160e01b5f52601160045260245ffdfe6080806040526092908160108239f3fe608060405260043610156010575f80fd5b5f3560e01c633ccfd60b146022575f80fd5b346058575f3660031901126058575f808080478181156050575b3390f115604557005b6040513d5f823e3d90fd5b506108fc603c565b5f80fdfea26469706673582212206293eb6f85b92a62b400e991d3773663e0977d34a10a34675c64ae80740a257e64736f6c634300081c0033a264697066735822122027d8addcf8bd9b97f1926a8a6addf954d380d877b2c5a181d65d319102c22f6b64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/Reverter.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/testutil/contracts/StakingReverter.json b/precompiles/testutil/contracts/StakingReverter.json index 79340ad3d..aac4eafdc 100644 --- a/precompiles/testutil/contracts/StakingReverter.json +++ b/precompiles/testutil/contracts/StakingReverter.json @@ -243,11 +243,11 @@ "type": "function" } ], - "bytecode": "0x6080806040525f8055610cd490816100158239f3fe6080806040526004361015610012575f80fd5b5f3560e01c9081634d9db92b146108be575080634e5a8fe51461084557806352fce7b1146107c4578063668f452b1461068c578063922a4b6714610529578063cbc367d4146101255763f66013d714610069575f80fd5b3461010e57602036600319011261010e576004356001600160401b03811161010e57602061009e6100c7923690600401610ae1565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610bf9565b600a604483015203815f6108005af1801561011a576100e4575f80fd5b6020813d602011610112575b816100fd60209383610bcb565b8101031261010e5761010e90610bec565b5f80fd5b3d91506100f0565b6040513d5f823e3d90fd5b3461010e57604036600319011261010e576004356024356001600160a01b0381169081900361010e579060405161015b81610b94565b60608152606060208201525f60408201525f60608201525f60808201525f60a082015260405161018a81610bb0565b6060815260606020820152606060408201526060808201526060608082015260c08201525f60e08201525f6101008201525f6101208201525f610140820152915f915b80831061030b5783604051906020825261020e6101f882516101606020860152610180850190610b41565b6020830151848203601f19016040860152610b41565b9060408101511515606084015260608101519160048310156102f7576102c36101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102b26102a061028e61027c865160a0875260a0870190610b41565b60208701518682036020880152610b41565b60408601518582036040870152610b41565b60608501518482036060860152610b41565b920151906080818403910152610b41565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b5f52602160045260245ffd5b9091925060405163111d9dbd60e11b81528260048201525f816024816108005afa801561011a575f90610346575b60019150930191906101cd565b503d805f833e6103568183610bcb565b81019060208183031261010e578051906001600160401b03821161010e57016101608183031261010e576040519061038d82610b94565b80516001600160401b03811161010e57836103a9918301610c3b565b825260208101516001600160401b03811161010e57836103ca918301610c3b565b60208301526103db60408201610bec565b60408301526060810151600481101561010e5760608301526080810151608083015260a081015160a083015260c08101516001600160401b03811161010e5781019060a08285031261010e5760405161043381610bb0565b82516001600160401b03811161010e578561044f918501610c3b565b815260208301516001600160401b03811161010e5785610470918501610c3b565b602082015260408301516001600160401b03811161010e5785610494918501610c3b565b604082015260608301516001600160401b03811161010e57856104b8918501610c3b565b60608201526080830151926001600160401b03841161010e57600195610140946104e29201610c3b565b608082015260c08401526104f860e08201610c90565b60e084015261050a6101008201610c90565b6101008401526101208101516101208401520151610140820152610339565b3461010e5761053736610b0e565b916040516353266bbb60e01b81523060048201526060602482015260208180610564606482018888610bf9565b600a604483015203815f6108005af1801561011a57610655575b505f5b818110610603576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018989610bf9565b600a604483015203815f6108005af1801561011a576105cf57005b6020813d6020116105fb575b816105e860209383610bcb565b8101031261010e576105f990610bec565b005b3d91506105db565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610633602482018a8a610bf9565b038183305af1610645575b5001610581565b5f61064f91610bcb565b8561063e565b6020813d602011610684575b8161066e60209383610bcb565b8101031261010e5761067f90610bec565b61057e565b3d9150610661565b3461010e57602036600319011261010e576004356001600160401b03811161010e575f6106c06106fe923690600401610ae1565b8260206040516106cf81610b65565b606081520152604051938492839263120bba7360e11b8452306004850152604060248501526044840191610bf9565b03816108005afa90811561011a575f905f92610748575b50604051918291825260406020830152602061073c82516040808601526080850190610b41565b91015160608301520390f35b9150503d805f833e61075a8183610bcb565b81019060408183031261010e578051906020810151906001600160401b03821161010e57019160408382031261010e576040519261079784610b65565b80516001600160401b03811161010e576020926107b5918301610c3b565b84520151602083015282610715565b3461010e576107d236610b0e565b6107df5f93929354610c19565b5f555f5b8281106107ec57005b303b1561010e5760405163f66013d760e01b815260206004820152905f828061081960248201878a610bf9565b038183305af191821561011a57600192610835575b50016107e3565b5f61083f91610bcb565b8561082e565b3461010e5761085336610b0e565b919061085f5f54610c19565b5f555f5b82811061086c57005b303b1561010e5760405163f66013d760e01b815260206004820152600191905f818061089c602482018a89610bf9565b038183305af16108ae575b5001610863565b5f6108b891610bcb565b856108a7565b3461010e57606036600319011261010e57602435906004356044356001600160401b03811161010e576108f5903690600401610ae1565b6353266bbb60e01b84523060048501526060602485015293909260208180610921606482018989610bf9565b600a604483015203815f6108005af1801561011a57610aaa575b505f5b828110610971576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018a8a610bf9565b303b1561010e5760405163f66013d760e01b8152602060048201525f818061099d602482018a8a610bf9565b038183305af19081610a9a575b50610a92576040516353266bbb60e01b815230600482015260606024820152602081806109db606482018a8a610bf9565b600a604483015203815f6108005af1801561011a57610a5c575b505f5b828110610a0a57506001905b0161093e565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610a3a602482018c8c610bf9565b038183305af1610a4c575b50016109f8565b5f610a5691610bcb565b87610a45565b6020813d8211610a8a575b81610a7460209383610bcb565b8101031261010e57610a8590610bec565b6109f5565b3d9150610a67565b600190610a04565b5f610aa491610bcb565b866109aa565b6020813d602011610ad9575b81610ac360209383610bcb565b8101031261010e57610ad490610bec565b61093b565b3d9150610ab6565b9181601f8401121561010e578235916001600160401b03831161010e576020838186019501011161010e57565b90604060031983011261010e5760043591602435906001600160401b03821161010e57610b3d91600401610ae1565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b604081019081106001600160401b03821117610b8057604052565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b03821117610b8057604052565b60a081019081106001600160401b03821117610b8057604052565b90601f801991011681019081106001600160401b03821117610b8057604052565b5190811515820361010e57565b908060209392818452848401375f828201840152601f01601f1916010190565b5f198114610c275760010190565b634e487b7160e01b5f52601160045260245ffd5b81601f8201121561010e578051906001600160401b038211610b805760405192610c6f601f8401601f191660200185610bcb565b8284526020838301011161010e57815f9260208093018386015e8301015290565b51908160070b820361010e5756fea264697066735822122043e2b92b58bbf2299a42cb1699f8f5b96a0effcdbb807d3278a1d0275c381b4d64736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c9081634d9db92b146108be575080634e5a8fe51461084557806352fce7b1146107c4578063668f452b1461068c578063922a4b6714610529578063cbc367d4146101255763f66013d714610069575f80fd5b3461010e57602036600319011261010e576004356001600160401b03811161010e57602061009e6100c7923690600401610ae1565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610bf9565b600a604483015203815f6108005af1801561011a576100e4575f80fd5b6020813d602011610112575b816100fd60209383610bcb565b8101031261010e5761010e90610bec565b5f80fd5b3d91506100f0565b6040513d5f823e3d90fd5b3461010e57604036600319011261010e576004356024356001600160a01b0381169081900361010e579060405161015b81610b94565b60608152606060208201525f60408201525f60608201525f60808201525f60a082015260405161018a81610bb0565b6060815260606020820152606060408201526060808201526060608082015260c08201525f60e08201525f6101008201525f6101208201525f610140820152915f915b80831061030b5783604051906020825261020e6101f882516101606020860152610180850190610b41565b6020830151848203601f19016040860152610b41565b9060408101511515606084015260608101519160048310156102f7576102c36101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102b26102a061028e61027c865160a0875260a0870190610b41565b60208701518682036020880152610b41565b60408601518582036040870152610b41565b60608501518482036060860152610b41565b920151906080818403910152610b41565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b5f52602160045260245ffd5b9091925060405163111d9dbd60e11b81528260048201525f816024816108005afa801561011a575f90610346575b60019150930191906101cd565b503d805f833e6103568183610bcb565b81019060208183031261010e578051906001600160401b03821161010e57016101608183031261010e576040519061038d82610b94565b80516001600160401b03811161010e57836103a9918301610c3b565b825260208101516001600160401b03811161010e57836103ca918301610c3b565b60208301526103db60408201610bec565b60408301526060810151600481101561010e5760608301526080810151608083015260a081015160a083015260c08101516001600160401b03811161010e5781019060a08285031261010e5760405161043381610bb0565b82516001600160401b03811161010e578561044f918501610c3b565b815260208301516001600160401b03811161010e5785610470918501610c3b565b602082015260408301516001600160401b03811161010e5785610494918501610c3b565b604082015260608301516001600160401b03811161010e57856104b8918501610c3b565b60608201526080830151926001600160401b03841161010e57600195610140946104e29201610c3b565b608082015260c08401526104f860e08201610c90565b60e084015261050a6101008201610c90565b6101008401526101208101516101208401520151610140820152610339565b3461010e5761053736610b0e565b916040516353266bbb60e01b81523060048201526060602482015260208180610564606482018888610bf9565b600a604483015203815f6108005af1801561011a57610655575b505f5b818110610603576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018989610bf9565b600a604483015203815f6108005af1801561011a576105cf57005b6020813d6020116105fb575b816105e860209383610bcb565b8101031261010e576105f990610bec565b005b3d91506105db565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610633602482018a8a610bf9565b038183305af1610645575b5001610581565b5f61064f91610bcb565b8561063e565b6020813d602011610684575b8161066e60209383610bcb565b8101031261010e5761067f90610bec565b61057e565b3d9150610661565b3461010e57602036600319011261010e576004356001600160401b03811161010e575f6106c06106fe923690600401610ae1565b8260206040516106cf81610b65565b606081520152604051938492839263120bba7360e11b8452306004850152604060248501526044840191610bf9565b03816108005afa90811561011a575f905f92610748575b50604051918291825260406020830152602061073c82516040808601526080850190610b41565b91015160608301520390f35b9150503d805f833e61075a8183610bcb565b81019060408183031261010e578051906020810151906001600160401b03821161010e57019160408382031261010e576040519261079784610b65565b80516001600160401b03811161010e576020926107b5918301610c3b565b84520151602083015282610715565b3461010e576107d236610b0e565b6107df5f93929354610c19565b5f555f5b8281106107ec57005b303b1561010e5760405163f66013d760e01b815260206004820152905f828061081960248201878a610bf9565b038183305af191821561011a57600192610835575b50016107e3565b5f61083f91610bcb565b8561082e565b3461010e5761085336610b0e565b919061085f5f54610c19565b5f555f5b82811061086c57005b303b1561010e5760405163f66013d760e01b815260206004820152600191905f818061089c602482018a89610bf9565b038183305af16108ae575b5001610863565b5f6108b891610bcb565b856108a7565b3461010e57606036600319011261010e57602435906004356044356001600160401b03811161010e576108f5903690600401610ae1565b6353266bbb60e01b84523060048501526060602485015293909260208180610921606482018989610bf9565b600a604483015203815f6108005af1801561011a57610aaa575b505f5b828110610971576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018a8a610bf9565b303b1561010e5760405163f66013d760e01b8152602060048201525f818061099d602482018a8a610bf9565b038183305af19081610a9a575b50610a92576040516353266bbb60e01b815230600482015260606024820152602081806109db606482018a8a610bf9565b600a604483015203815f6108005af1801561011a57610a5c575b505f5b828110610a0a57506001905b0161093e565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610a3a602482018c8c610bf9565b038183305af1610a4c575b50016109f8565b5f610a5691610bcb565b87610a45565b6020813d8211610a8a575b81610a7460209383610bcb565b8101031261010e57610a8590610bec565b6109f5565b3d9150610a67565b600190610a04565b5f610aa491610bcb565b866109aa565b6020813d602011610ad9575b81610ac360209383610bcb565b8101031261010e57610ad490610bec565b61093b565b3d9150610ab6565b9181601f8401121561010e578235916001600160401b03831161010e576020838186019501011161010e57565b90604060031983011261010e5760043591602435906001600160401b03821161010e57610b3d91600401610ae1565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b604081019081106001600160401b03821117610b8057604052565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b03821117610b8057604052565b60a081019081106001600160401b03821117610b8057604052565b90601f801991011681019081106001600160401b03821117610b8057604052565b5190811515820361010e57565b908060209392818452848401375f828201840152601f01601f1916010190565b5f198114610c275760010190565b634e487b7160e01b5f52601160045260245ffd5b81601f8201121561010e578051906001600160401b038211610b805760405192610c6f601f8401601f191660200185610bcb565b8284526020838301011161010e57815f9260208093018386015e8301015290565b51908160070b820361010e5756fea264697066735822122043e2b92b58bbf2299a42cb1699f8f5b96a0effcdbb807d3278a1d0275c381b4d64736f6c634300081c0033", + "bytecode": "0x6080806040525f8055610cd490816100158239f3fe6080806040526004361015610012575f80fd5b5f3560e01c9081634d9db92b146108be575080634e5a8fe51461084557806352fce7b1146107c4578063668f452b1461068c578063922a4b6714610529578063cbc367d4146101255763f66013d714610069575f80fd5b3461010e57602036600319011261010e576004356001600160401b03811161010e57602061009e6100c7923690600401610ae1565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610bf9565b600a604483015203815f6108005af1801561011a576100e4575f80fd5b6020813d602011610112575b816100fd60209383610bcb565b8101031261010e5761010e90610bec565b5f80fd5b3d91506100f0565b6040513d5f823e3d90fd5b3461010e57604036600319011261010e576004356024356001600160a01b0381169081900361010e579060405161015b81610b94565b60608152606060208201525f60408201525f60608201525f60808201525f60a082015260405161018a81610bb0565b6060815260606020820152606060408201526060808201526060608082015260c08201525f60e08201525f6101008201525f6101208201525f610140820152915f915b80831061030b5783604051906020825261020e6101f882516101606020860152610180850190610b41565b6020830151848203601f19016040860152610b41565b9060408101511515606084015260608101519160048310156102f7576102c36101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102b26102a061028e61027c865160a0875260a0870190610b41565b60208701518682036020880152610b41565b60408601518582036040870152610b41565b60608501518482036060860152610b41565b920151906080818403910152610b41565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b5f52602160045260245ffd5b9091925060405163111d9dbd60e11b81528260048201525f816024816108005afa801561011a575f90610346575b60019150930191906101cd565b503d805f833e6103568183610bcb565b81019060208183031261010e578051906001600160401b03821161010e57016101608183031261010e576040519061038d82610b94565b80516001600160401b03811161010e57836103a9918301610c3b565b825260208101516001600160401b03811161010e57836103ca918301610c3b565b60208301526103db60408201610bec565b60408301526060810151600481101561010e5760608301526080810151608083015260a081015160a083015260c08101516001600160401b03811161010e5781019060a08285031261010e5760405161043381610bb0565b82516001600160401b03811161010e578561044f918501610c3b565b815260208301516001600160401b03811161010e5785610470918501610c3b565b602082015260408301516001600160401b03811161010e5785610494918501610c3b565b604082015260608301516001600160401b03811161010e57856104b8918501610c3b565b60608201526080830151926001600160401b03841161010e57600195610140946104e29201610c3b565b608082015260c08401526104f860e08201610c90565b60e084015261050a6101008201610c90565b6101008401526101208101516101208401520151610140820152610339565b3461010e5761053736610b0e565b916040516353266bbb60e01b81523060048201526060602482015260208180610564606482018888610bf9565b600a604483015203815f6108005af1801561011a57610655575b505f5b818110610603576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018989610bf9565b600a604483015203815f6108005af1801561011a576105cf57005b6020813d6020116105fb575b816105e860209383610bcb565b8101031261010e576105f990610bec565b005b3d91506105db565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610633602482018a8a610bf9565b038183305af1610645575b5001610581565b5f61064f91610bcb565b8561063e565b6020813d602011610684575b8161066e60209383610bcb565b8101031261010e5761067f90610bec565b61057e565b3d9150610661565b3461010e57602036600319011261010e576004356001600160401b03811161010e575f6106c06106fe923690600401610ae1565b8260206040516106cf81610b65565b606081520152604051938492839263120bba7360e11b8452306004850152604060248501526044840191610bf9565b03816108005afa90811561011a575f905f92610748575b50604051918291825260406020830152602061073c82516040808601526080850190610b41565b91015160608301520390f35b9150503d805f833e61075a8183610bcb565b81019060408183031261010e578051906020810151906001600160401b03821161010e57019160408382031261010e576040519261079784610b65565b80516001600160401b03811161010e576020926107b5918301610c3b565b84520151602083015282610715565b3461010e576107d236610b0e565b6107df5f93929354610c19565b5f555f5b8281106107ec57005b303b1561010e5760405163f66013d760e01b815260206004820152905f828061081960248201878a610bf9565b038183305af191821561011a57600192610835575b50016107e3565b5f61083f91610bcb565b8561082e565b3461010e5761085336610b0e565b919061085f5f54610c19565b5f555f5b82811061086c57005b303b1561010e5760405163f66013d760e01b815260206004820152600191905f818061089c602482018a89610bf9565b038183305af16108ae575b5001610863565b5f6108b891610bcb565b856108a7565b3461010e57606036600319011261010e57602435906004356044356001600160401b03811161010e576108f5903690600401610ae1565b6353266bbb60e01b84523060048501526060602485015293909260208180610921606482018989610bf9565b600a604483015203815f6108005af1801561011a57610aaa575b505f5b828110610971576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018a8a610bf9565b303b1561010e5760405163f66013d760e01b8152602060048201525f818061099d602482018a8a610bf9565b038183305af19081610a9a575b50610a92576040516353266bbb60e01b815230600482015260606024820152602081806109db606482018a8a610bf9565b600a604483015203815f6108005af1801561011a57610a5c575b505f5b828110610a0a57506001905b0161093e565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610a3a602482018c8c610bf9565b038183305af1610a4c575b50016109f8565b5f610a5691610bcb565b87610a45565b6020813d8211610a8a575b81610a7460209383610bcb565b8101031261010e57610a8590610bec565b6109f5565b3d9150610a67565b600190610a04565b5f610aa491610bcb565b866109aa565b6020813d602011610ad9575b81610ac360209383610bcb565b8101031261010e57610ad490610bec565b61093b565b3d9150610ab6565b9181601f8401121561010e578235916001600160401b03831161010e576020838186019501011161010e57565b90604060031983011261010e5760043591602435906001600160401b03821161010e57610b3d91600401610ae1565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b604081019081106001600160401b03821117610b8057604052565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b03821117610b8057604052565b60a081019081106001600160401b03821117610b8057604052565b90601f801991011681019081106001600160401b03821117610b8057604052565b5190811515820361010e57565b908060209392818452848401375f828201840152601f01601f1916010190565b5f198114610c275760010190565b634e487b7160e01b5f52601160045260245ffd5b81601f8201121561010e578051906001600160401b038211610b805760405192610c6f601f8401601f191660200185610bcb565b8284526020838301011161010e57815f9260208093018386015e8301015290565b51908160070b820361010e5756fea2646970667358221220355938b33bc1a13e68b39e6ba4c5fcace6db513e5a3cefc1ae138318e2ef1a5964736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c9081634d9db92b146108be575080634e5a8fe51461084557806352fce7b1146107c4578063668f452b1461068c578063922a4b6714610529578063cbc367d4146101255763f66013d714610069575f80fd5b3461010e57602036600319011261010e576004356001600160401b03811161010e57602061009e6100c7923690600401610ae1565b6040516353266bbb60e01b81523060048201526060602482015293849283926064840191610bf9565b600a604483015203815f6108005af1801561011a576100e4575f80fd5b6020813d602011610112575b816100fd60209383610bcb565b8101031261010e5761010e90610bec565b5f80fd5b3d91506100f0565b6040513d5f823e3d90fd5b3461010e57604036600319011261010e576004356024356001600160a01b0381169081900361010e579060405161015b81610b94565b60608152606060208201525f60408201525f60608201525f60808201525f60a082015260405161018a81610bb0565b6060815260606020820152606060408201526060808201526060608082015260c08201525f60e08201525f6101008201525f6101208201525f610140820152915f915b80831061030b5783604051906020825261020e6101f882516101606020860152610180850190610b41565b6020830151848203601f19016040860152610b41565b9060408101511515606084015260608101519160048310156102f7576102c36101409185946080860152608084015160a086015260a084015160c086015260c084015190601f198682030160e087015260806102b26102a061028e61027c865160a0875260a0870190610b41565b60208701518682036020880152610b41565b60408601518582036040870152610b41565b60608501518482036060860152610b41565b920151906080818403910152610b41565b9160e081015160070b61010085015261010081015160070b6101208501526101208101518285015201516101608301520390f35b634e487b7160e01b5f52602160045260245ffd5b9091925060405163111d9dbd60e11b81528260048201525f816024816108005afa801561011a575f90610346575b60019150930191906101cd565b503d805f833e6103568183610bcb565b81019060208183031261010e578051906001600160401b03821161010e57016101608183031261010e576040519061038d82610b94565b80516001600160401b03811161010e57836103a9918301610c3b565b825260208101516001600160401b03811161010e57836103ca918301610c3b565b60208301526103db60408201610bec565b60408301526060810151600481101561010e5760608301526080810151608083015260a081015160a083015260c08101516001600160401b03811161010e5781019060a08285031261010e5760405161043381610bb0565b82516001600160401b03811161010e578561044f918501610c3b565b815260208301516001600160401b03811161010e5785610470918501610c3b565b602082015260408301516001600160401b03811161010e5785610494918501610c3b565b604082015260608301516001600160401b03811161010e57856104b8918501610c3b565b60608201526080830151926001600160401b03841161010e57600195610140946104e29201610c3b565b608082015260c08401526104f860e08201610c90565b60e084015261050a6101008201610c90565b6101008401526101208101516101208401520151610140820152610339565b3461010e5761053736610b0e565b916040516353266bbb60e01b81523060048201526060602482015260208180610564606482018888610bf9565b600a604483015203815f6108005af1801561011a57610655575b505f5b818110610603576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018989610bf9565b600a604483015203815f6108005af1801561011a576105cf57005b6020813d6020116105fb575b816105e860209383610bcb565b8101031261010e576105f990610bec565b005b3d91506105db565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610633602482018a8a610bf9565b038183305af1610645575b5001610581565b5f61064f91610bcb565b8561063e565b6020813d602011610684575b8161066e60209383610bcb565b8101031261010e5761067f90610bec565b61057e565b3d9150610661565b3461010e57602036600319011261010e576004356001600160401b03811161010e575f6106c06106fe923690600401610ae1565b8260206040516106cf81610b65565b606081520152604051938492839263120bba7360e11b8452306004850152604060248501526044840191610bf9565b03816108005afa90811561011a575f905f92610748575b50604051918291825260406020830152602061073c82516040808601526080850190610b41565b91015160608301520390f35b9150503d805f833e61075a8183610bcb565b81019060408183031261010e578051906020810151906001600160401b03821161010e57019160408382031261010e576040519261079784610b65565b80516001600160401b03811161010e576020926107b5918301610c3b565b84520151602083015282610715565b3461010e576107d236610b0e565b6107df5f93929354610c19565b5f555f5b8281106107ec57005b303b1561010e5760405163f66013d760e01b815260206004820152905f828061081960248201878a610bf9565b038183305af191821561011a57600192610835575b50016107e3565b5f61083f91610bcb565b8561082e565b3461010e5761085336610b0e565b919061085f5f54610c19565b5f555f5b82811061086c57005b303b1561010e5760405163f66013d760e01b815260206004820152600191905f818061089c602482018a89610bf9565b038183305af16108ae575b5001610863565b5f6108b891610bcb565b856108a7565b3461010e57606036600319011261010e57602435906004356044356001600160401b03811161010e576108f5903690600401610ae1565b6353266bbb60e01b84523060048501526060602485015293909260208180610921606482018989610bf9565b600a604483015203815f6108005af1801561011a57610aaa575b505f5b828110610971576040516353266bbb60e01b815230600482015260606024820152602081806105b4606482018a8a610bf9565b303b1561010e5760405163f66013d760e01b8152602060048201525f818061099d602482018a8a610bf9565b038183305af19081610a9a575b50610a92576040516353266bbb60e01b815230600482015260606024820152602081806109db606482018a8a610bf9565b600a604483015203815f6108005af1801561011a57610a5c575b505f5b828110610a0a57506001905b0161093e565b303b1561010e5760405163f66013d760e01b815260206004820152600191905f8180610a3a602482018c8c610bf9565b038183305af1610a4c575b50016109f8565b5f610a5691610bcb565b87610a45565b6020813d8211610a8a575b81610a7460209383610bcb565b8101031261010e57610a8590610bec565b6109f5565b3d9150610a67565b600190610a04565b5f610aa491610bcb565b866109aa565b6020813d602011610ad9575b81610ac360209383610bcb565b8101031261010e57610ad490610bec565b61093b565b3d9150610ab6565b9181601f8401121561010e578235916001600160401b03831161010e576020838186019501011161010e57565b90604060031983011261010e5760043591602435906001600160401b03821161010e57610b3d91600401610ae1565b9091565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b604081019081106001600160401b03821117610b8057604052565b634e487b7160e01b5f52604160045260245ffd5b61016081019081106001600160401b03821117610b8057604052565b60a081019081106001600160401b03821117610b8057604052565b90601f801991011681019081106001600160401b03821117610b8057604052565b5190811515820361010e57565b908060209392818452848401375f828201840152601f01601f1916010190565b5f198114610c275760010190565b634e487b7160e01b5f52601160045260245ffd5b81601f8201121561010e578051906001600160401b038211610b805760405192610c6f601f8401601f191660200185610bcb565b8284526020838301011161010e57815f9260208093018386015e8301015290565b51908160070b820361010e5756fea2646970667358221220355938b33bc1a13e68b39e6ba4c5fcace6db513e5a3cefc1ae138318e2ef1a5964736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/precompiles/testutil/contracts/StakingReverter.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/precompiles/werc20/testdata/WEVMOS9TestCaller.json b/precompiles/werc20/testdata/WEVMOS9TestCaller.json index 6e9ec3d04..aa7e0fac9 100644 --- a/precompiles/werc20/testdata/WEVMOS9TestCaller.json +++ b/precompiles/werc20/testdata/WEVMOS9TestCaller.json @@ -72,12 +72,12 @@ "type": "function" } ], - "bytecode": "0x60a034606e57601f61029f38819003918201601f19168301916001600160401b03831184841017607257808492602094604052833981010312606e57516001600160a01b0381168103606e576080525f8055604051610218908161008782396080518181816054015260db0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081635dab6f8c146100a35750806361bc221a1461008657637cf5b4fc1461003f575f80fd5b346100835780600319360112610083576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b80fd5b503461008357806003193601126100835760209054604051908152f35b9050604036600319011261019757600435801515810361019757602435918215158303610197575f545f19811461019b576001015f557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b1561019757816004815f93630d0e30db60e41b825234905af1801561018c5761015b575b506101425781548015610147575f190182556101425780f35b6101af565b634e487b7160e01b83526011600452602483fd5b90925067ffffffffffffffff8111610178576040525f915f610129565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea264697066735822122065671176218dbfbea1d97d0eec5246787e071cc98c1b36faea058e3acb3d193464736f6c634300081c0033", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081635dab6f8c146100a35750806361bc221a1461008657637cf5b4fc1461003f575f80fd5b346100835780600319360112610083576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b80fd5b503461008357806003193601126100835760209054604051908152f35b9050604036600319011261019757600435801515810361019757602435918215158303610197575f545f19811461019b576001015f557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b1561019757816004815f93630d0e30db60e41b825234905af1801561018c5761015b575b506101425781548015610147575f190182556101425780f35b6101af565b634e487b7160e01b83526011600452602483fd5b90925067ffffffffffffffff8111610178576040525f915f610129565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea264697066735822122065671176218dbfbea1d97d0eec5246787e071cc98c1b36faea058e3acb3d193464736f6c634300081c0033", + "bytecode": "0x60a034606e57601f61029f38819003918201601f19168301916001600160401b03831184841017607257808492602094604052833981010312606e57516001600160a01b0381168103606e576080525f8055604051610218908161008782396080518181816054015260db0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f905f3560e01c9081635dab6f8c146100a35750806361bc221a1461008657637cf5b4fc1461003f575f80fd5b346100835780600319360112610083576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b80fd5b503461008357806003193601126100835760209054604051908152f35b9050604036600319011261019757600435801515810361019757602435918215158303610197575f545f19811461019b576001015f557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b1561019757816004815f93630d0e30db60e41b825234905af1801561018c5761015b575b506101425781548015610147575f190182556101425780f35b6101af565b634e487b7160e01b83526011600452602483fd5b90925067ffffffffffffffff8111610178576040525f915f610129565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea2646970667358221220c2d6afd17930d8f9626b88afbb1372f014752a5db1fc67b28f16c42922ec2f6464736f6c634300081c0033", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f905f3560e01c9081635dab6f8c146100a35750806361bc221a1461008657637cf5b4fc1461003f575f80fd5b346100835780600319360112610083576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b80fd5b503461008357806003193601126100835760209054604051908152f35b9050604036600319011261019757600435801515810361019757602435918215158303610197575f545f19811461019b576001015f557f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b1561019757816004815f93630d0e30db60e41b825234905af1801561018c5761015b575b506101425781548015610147575f190182556101425780f35b6101af565b634e487b7160e01b83526011600452602483fd5b90925067ffffffffffffffff8111610178576040525f915f610129565b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152600b60248201526a726576657274206865726560a81b6044820152606490fdfea2646970667358221220c2d6afd17930d8f9626b88afbb1372f014752a5db1fc67b28f16c42922ec2f6464736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": { - "26767": [ + "24911": [ { "length": 32, "start": 84 @@ -89,5 +89,5 @@ ] }, "inputSourceName": "project/solidity/precompiles/werc20/testdata/WEVMOS9TestCaller.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json b/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json index 8ad04ef8e..9705ea8c6 100644 --- a/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json +++ b/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.json @@ -89,11 +89,11 @@ "type": "function" } ], - "bytecode": "0x608080604052346015576105d2908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c6357956b5814610024575f80fd5b34610459576020366003190112610459576004356001600160401b03811161045957366023820112156104595780600401356001600160401b038111610459573660248260051b840101116104595790368190036101421901905f5b8381101561049f5760248160051b8301013583811215610459578201903682900360231901602483016101208212610459576040519161012083018381106001600160401b0382111761048b576040526100d9826104d6565b835260448501359460208401868152606482019687356001600160401b0381116104595761010d9060243691860101610556565b976040870198895260848401918235946001600160401b0386116104595787946024878301019b61013f8d3690610556565b60608c0190815260a48401359260808d0184815260c48601359d8e9360a0820194855260e48801359460c08301908682526101048a019788356001600160401b038111610459578b60246101969236920101610556565b9060e086019182526101248c019b8c356001600160401b03811161045957369101602401906101c491610556565b610100870152518051906020012093518051906020012090518051906020012094600160a01b60019003905116965195519151925193604051966020880198895260408801526060870152608086015260a085015260c084015260e083015261010082015230610120820152466101408201526101408152610248610160826104b5565b5190209b6001600160a01b0361025d8a6104a1565b6040516306608bdf60e21b8152606060048201529a9116988a9889989192916001600160a01b0361028d846104d6565b1660648b015260848a01526102a290826104ea565b60a48a0161012090526101848a01906102ba9261051b565b916102c4916104ea565b8883036063190160c48a01526102da929161051b565b9360e48701526101048601526101248501526102f6908a6104ea565b8483036063190161014486015261030d929161051b565b9061031890896104ea565b8383036063190161016485015261032f929161051b565b886024830152604482015f905203815a6020945f91f1908161045d575b5061039c5750600194506001600160a01b039161036991506104a1565b16907f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb7871960206040515f8152a35b01610080565b6103a78394936104a1565b91601e19011315610459578435946001600160401b03861161045957602001908536038213610459575f8060209288827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787199660019b6040519384928337810182815203925af1933d15610454573d61041e8161053b565b9061042c60405192836104b5565b81525f833d92013e5b610444878060a01b03916104a1565b16936040519015158152a3610396565b610435565b5f80fd5b6020813d8211610483575b81610475602093836104b5565b81010312610459575161034c565b3d9150610468565b634e487b7160e01b5f52604160045260245ffd5b005b356001600160a01b03811681036104595790565b90601f801991011681019081106001600160401b0382111761048b57604052565b35906001600160a01b038216820361045957565b9035601e19823603018112156104595701602081359101916001600160401b03821161045957813603831361045957565b908060209392818452848401375f828201840152601f01601f1916010190565b6001600160401b03811161048b57601f01601f191660200190565b81601f820112156104595780359061056d8261053b565b9261057b60405194856104b5565b8284526020838301011161045957815f92602080930183860137830101529056fea2646970667358221220cacea8cfbe8faabc7cfdabc9206e55b1d42854c550af811b1352559270a5c47b64736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c6357956b5814610024575f80fd5b34610459576020366003190112610459576004356001600160401b03811161045957366023820112156104595780600401356001600160401b038111610459573660248260051b840101116104595790368190036101421901905f5b8381101561049f5760248160051b8301013583811215610459578201903682900360231901602483016101208212610459576040519161012083018381106001600160401b0382111761048b576040526100d9826104d6565b835260448501359460208401868152606482019687356001600160401b0381116104595761010d9060243691860101610556565b976040870198895260848401918235946001600160401b0386116104595787946024878301019b61013f8d3690610556565b60608c0190815260a48401359260808d0184815260c48601359d8e9360a0820194855260e48801359460c08301908682526101048a019788356001600160401b038111610459578b60246101969236920101610556565b9060e086019182526101248c019b8c356001600160401b03811161045957369101602401906101c491610556565b610100870152518051906020012093518051906020012090518051906020012094600160a01b60019003905116965195519151925193604051966020880198895260408801526060870152608086015260a085015260c084015260e083015261010082015230610120820152466101408201526101408152610248610160826104b5565b5190209b6001600160a01b0361025d8a6104a1565b6040516306608bdf60e21b8152606060048201529a9116988a9889989192916001600160a01b0361028d846104d6565b1660648b015260848a01526102a290826104ea565b60a48a0161012090526101848a01906102ba9261051b565b916102c4916104ea565b8883036063190160c48a01526102da929161051b565b9360e48701526101048601526101248501526102f6908a6104ea565b8483036063190161014486015261030d929161051b565b9061031890896104ea565b8383036063190161016485015261032f929161051b565b886024830152604482015f905203815a6020945f91f1908161045d575b5061039c5750600194506001600160a01b039161036991506104a1565b16907f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb7871960206040515f8152a35b01610080565b6103a78394936104a1565b91601e19011315610459578435946001600160401b03861161045957602001908536038213610459575f8060209288827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787199660019b6040519384928337810182815203925af1933d15610454573d61041e8161053b565b9061042c60405192836104b5565b81525f833d92013e5b610444878060a01b03916104a1565b16936040519015158152a3610396565b610435565b5f80fd5b6020813d8211610483575b81610475602093836104b5565b81010312610459575161034c565b3d9150610468565b634e487b7160e01b5f52604160045260245ffd5b005b356001600160a01b03811681036104595790565b90601f801991011681019081106001600160401b0382111761048b57604052565b35906001600160a01b038216820361045957565b9035601e19823603018112156104595701602081359101916001600160401b03821161045957813603831361045957565b908060209392818452848401375f828201840152601f01601f1916010190565b6001600160401b03811161048b57601f01601f191660200190565b81601f820112156104595780359061056d8261053b565b9261057b60405194856104b5565b8284526020838301011161045957815f92602080930183860137830101529056fea2646970667358221220cacea8cfbe8faabc7cfdabc9206e55b1d42854c550af811b1352559270a5c47b64736f6c634300081c0033", + "bytecode": "0x608080604052346015576105d2908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c6357956b5814610024575f80fd5b34610459576020366003190112610459576004356001600160401b03811161045957366023820112156104595780600401356001600160401b038111610459573660248260051b840101116104595790368190036101421901905f5b8381101561049f5760248160051b8301013583811215610459578201903682900360231901602483016101208212610459576040519161012083018381106001600160401b0382111761048b576040526100d9826104d6565b835260448501359460208401868152606482019687356001600160401b0381116104595761010d9060243691860101610556565b976040870198895260848401918235946001600160401b0386116104595787946024878301019b61013f8d3690610556565b60608c0190815260a48401359260808d0184815260c48601359d8e9360a0820194855260e48801359460c08301908682526101048a019788356001600160401b038111610459578b60246101969236920101610556565b9060e086019182526101248c019b8c356001600160401b03811161045957369101602401906101c491610556565b610100870152518051906020012093518051906020012090518051906020012094600160a01b60019003905116965195519151925193604051966020880198895260408801526060870152608086015260a085015260c084015260e083015261010082015230610120820152466101408201526101408152610248610160826104b5565b5190209b6001600160a01b0361025d8a6104a1565b6040516306608bdf60e21b8152606060048201529a9116988a9889989192916001600160a01b0361028d846104d6565b1660648b015260848a01526102a290826104ea565b60a48a0161012090526101848a01906102ba9261051b565b916102c4916104ea565b8883036063190160c48a01526102da929161051b565b9360e48701526101048601526101248501526102f6908a6104ea565b8483036063190161014486015261030d929161051b565b9061031890896104ea565b8383036063190161016485015261032f929161051b565b886024830152604482015f905203815a6020945f91f1908161045d575b5061039c5750600194506001600160a01b039161036991506104a1565b16907f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb7871960206040515f8152a35b01610080565b6103a78394936104a1565b91601e19011315610459578435946001600160401b03861161045957602001908536038213610459575f8060209288827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787199660019b6040519384928337810182815203925af1933d15610454573d61041e8161053b565b9061042c60405192836104b5565b81525f833d92013e5b610444878060a01b03916104a1565b16936040519015158152a3610396565b610435565b5f80fd5b6020813d8211610483575b81610475602093836104b5565b81010312610459575161034c565b3d9150610468565b634e487b7160e01b5f52604160045260245ffd5b005b356001600160a01b03811681036104595790565b90601f801991011681019081106001600160401b0382111761048b57604052565b35906001600160a01b038216820361045957565b9035601e19823603018112156104595701602081359101916001600160401b03821161045957813603831361045957565b908060209392818452848401375f828201840152601f01601f1916010190565b6001600160401b03811161048b57601f01601f191660200190565b81601f820112156104595780359061056d8261053b565b9261057b60405194856104b5565b8284526020838301011161045957815f92602080930183860137830101529056fea2646970667358221220f8b111fe27c7bc27b7d52dacd7f324a9e0f746edd4213164ec14c838343d9ba464736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c6357956b5814610024575f80fd5b34610459576020366003190112610459576004356001600160401b03811161045957366023820112156104595780600401356001600160401b038111610459573660248260051b840101116104595790368190036101421901905f5b8381101561049f5760248160051b8301013583811215610459578201903682900360231901602483016101208212610459576040519161012083018381106001600160401b0382111761048b576040526100d9826104d6565b835260448501359460208401868152606482019687356001600160401b0381116104595761010d9060243691860101610556565b976040870198895260848401918235946001600160401b0386116104595787946024878301019b61013f8d3690610556565b60608c0190815260a48401359260808d0184815260c48601359d8e9360a0820194855260e48801359460c08301908682526101048a019788356001600160401b038111610459578b60246101969236920101610556565b9060e086019182526101248c019b8c356001600160401b03811161045957369101602401906101c491610556565b610100870152518051906020012093518051906020012090518051906020012094600160a01b60019003905116965195519151925193604051966020880198895260408801526060870152608086015260a085015260c084015260e083015261010082015230610120820152466101408201526101408152610248610160826104b5565b5190209b6001600160a01b0361025d8a6104a1565b6040516306608bdf60e21b8152606060048201529a9116988a9889989192916001600160a01b0361028d846104d6565b1660648b015260848a01526102a290826104ea565b60a48a0161012090526101848a01906102ba9261051b565b916102c4916104ea565b8883036063190160c48a01526102da929161051b565b9360e48701526101048601526101248501526102f6908a6104ea565b8483036063190161014486015261030d929161051b565b9061031890896104ea565b8383036063190161016485015261032f929161051b565b886024830152604482015f905203815a6020945f91f1908161045d575b5061039c5750600194506001600160a01b039161036991506104a1565b16907f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb7871960206040515f8152a35b01610080565b6103a78394936104a1565b91601e19011315610459578435946001600160401b03861161045957602001908536038213610459575f8060209288827f980a558f47f59a27189b156378a6cc54c9db5693b11ac559c5fa9fb29eb787199660019b6040519384928337810182815203925af1933d15610454573d61041e8161053b565b9061042c60405192836104b5565b81525f833d92013e5b610444878060a01b03916104a1565b16936040519015158152a3610396565b610435565b5f80fd5b6020813d8211610483575b81610475602093836104b5565b81010312610459575161034c565b3d9150610468565b634e487b7160e01b5f52604160045260245ffd5b005b356001600160a01b03811681036104595790565b90601f801991011681019081106001600160401b0382111761048b57604052565b35906001600160a01b038216820361045957565b9035601e19823603018112156104595701602081359101916001600160401b03821161045957813603831361045957565b908060209392818452848401375f828201840152601f01601f1916010190565b6001600160401b03811161048b57601f01601f191660200190565b81601f820112156104595780359061056d8261053b565b9261057b60405194856104b5565b8284526020838301011161045957815f92602080930183860137830101529056fea2646970667358221220f8b111fe27c7bc27b7d52dacd7f324a9e0f746edd4213164ec14c838343d9ba464736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/tests/contracts/account_abstraction/entrypoint/SimpleEntryPoint.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json b/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json index f2fdfdbb7..3d6618985 100644 --- a/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json +++ b/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.json @@ -151,11 +151,11 @@ "type": "receive" } ], - "bytecode": "0x60808060405234601557610506908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806319822f7c14610069578063485cc955146100645780638da5cb5b1461005f578063b0d691fe1461005a5763b61d27f60361000e57610263565b61023b565b610214565b610177565b346101625760603660031901126101625760043567ffffffffffffffff81116101625780360390610120600319830112610162576100b260018060a01b036001541633146102cf565b6101048101359160221901821215610162570160048101359067ffffffffffffffff8211610162576024018136038113610162576101286101006100fb5f936020953691610368565b610472565b60408051602435815260ff909416602085015283019190915260608201529081906080820190565b838052039060015afa1561015d575f80519054610152916001600160a01b039081169116146103a3565b6040515f8152602090f35b610398565b5f80fd5b6001600160a01b0381160361016257565b346101625760403660031901126101625760043561019481610166565b6024356101a081610166565b5f546001600160a01b0381166101d9576001600160a01b039283166001600160a01b0319918216175f5560018054929093169116179055005b60405162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606490fd5b34610162575f366003190112610162575f546040516001600160a01b039091168152602090f35b34610162575f366003190112610162576001546040516001600160a01b039091168152602090f35b346101625760603660031901126101625760043561028081610166565b6024356044359167ffffffffffffffff831161016257366023840112156101625782600401359167ffffffffffffffff83116101625736602484860101116101625760246100189401916103e3565b156102d657565b60405162461bcd60e51b815260206004820152600f60248201526e1bdb9b1e48115b9d1c9e541bda5b9d608a1b6044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff81118382101761034757604052565b61030d565b67ffffffffffffffff811161034757601f01601f191660200190565b92919261037c6103778361034c565b610321565b938285528282011161016257815f926020928387013784010152565b6040513d5f823e3d90fd5b156103aa57565b60405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b6044820152606490fd5b90925f9384936103fe60018060a01b036001541633146102cf565b826040519384928337810185815203925af13d1561046d573d6104236103778261034c565b9081525f60203d92013e5b1561043557565b60405162461bcd60e51b815260206004820152601060248201526f115e1958dd5d1a5bdb8819985a5b195960821b6044820152606490fd5b61042e565b604181510361049057602081015190606060408201519101515f1a92565b60405162461bcd60e51b81526020600482015260186024820152770d2dcecc2d8d2c840e6d2cedcc2e8eae4ca40d8cadccee8d60431b6044820152606490fdfea26469706673582212201b583de4c3c08e3214885b6517e303d3315e6dc789adaf44982b8809f87409f264736f6c634300081c0033", - "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806319822f7c14610069578063485cc955146100645780638da5cb5b1461005f578063b0d691fe1461005a5763b61d27f60361000e57610263565b61023b565b610214565b610177565b346101625760603660031901126101625760043567ffffffffffffffff81116101625780360390610120600319830112610162576100b260018060a01b036001541633146102cf565b6101048101359160221901821215610162570160048101359067ffffffffffffffff8211610162576024018136038113610162576101286101006100fb5f936020953691610368565b610472565b60408051602435815260ff909416602085015283019190915260608201529081906080820190565b838052039060015afa1561015d575f80519054610152916001600160a01b039081169116146103a3565b6040515f8152602090f35b610398565b5f80fd5b6001600160a01b0381160361016257565b346101625760403660031901126101625760043561019481610166565b6024356101a081610166565b5f546001600160a01b0381166101d9576001600160a01b039283166001600160a01b0319918216175f5560018054929093169116179055005b60405162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606490fd5b34610162575f366003190112610162575f546040516001600160a01b039091168152602090f35b34610162575f366003190112610162576001546040516001600160a01b039091168152602090f35b346101625760603660031901126101625760043561028081610166565b6024356044359167ffffffffffffffff831161016257366023840112156101625782600401359167ffffffffffffffff83116101625736602484860101116101625760246100189401916103e3565b156102d657565b60405162461bcd60e51b815260206004820152600f60248201526e1bdb9b1e48115b9d1c9e541bda5b9d608a1b6044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff81118382101761034757604052565b61030d565b67ffffffffffffffff811161034757601f01601f191660200190565b92919261037c6103778361034c565b610321565b938285528282011161016257815f926020928387013784010152565b6040513d5f823e3d90fd5b156103aa57565b60405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b6044820152606490fd5b90925f9384936103fe60018060a01b036001541633146102cf565b826040519384928337810185815203925af13d1561046d573d6104236103778261034c565b9081525f60203d92013e5b1561043557565b60405162461bcd60e51b815260206004820152601060248201526f115e1958dd5d1a5bdb8819985a5b195960821b6044820152606490fd5b61042e565b604181510361049057602081015190606060408201519101515f1a92565b60405162461bcd60e51b81526020600482015260186024820152770d2dcecc2d8d2c840e6d2cedcc2e8eae4ca40d8cadccee8d60431b6044820152606490fdfea26469706673582212201b583de4c3c08e3214885b6517e303d3315e6dc789adaf44982b8809f87409f264736f6c634300081c0033", + "bytecode": "0x60808060405234601557610506908161001a8239f35b5f80fdfe6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806319822f7c14610069578063485cc955146100645780638da5cb5b1461005f578063b0d691fe1461005a5763b61d27f60361000e57610263565b61023b565b610214565b610177565b346101625760603660031901126101625760043567ffffffffffffffff81116101625780360390610120600319830112610162576100b260018060a01b036001541633146102cf565b6101048101359160221901821215610162570160048101359067ffffffffffffffff8211610162576024018136038113610162576101286101006100fb5f936020953691610368565b610472565b60408051602435815260ff909416602085015283019190915260608201529081906080820190565b838052039060015afa1561015d575f80519054610152916001600160a01b039081169116146103a3565b6040515f8152602090f35b610398565b5f80fd5b6001600160a01b0381160361016257565b346101625760403660031901126101625760043561019481610166565b6024356101a081610166565b5f546001600160a01b0381166101d9576001600160a01b039283166001600160a01b0319918216175f5560018054929093169116179055005b60405162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606490fd5b34610162575f366003190112610162575f546040516001600160a01b039091168152602090f35b34610162575f366003190112610162576001546040516001600160a01b039091168152602090f35b346101625760603660031901126101625760043561028081610166565b6024356044359167ffffffffffffffff831161016257366023840112156101625782600401359167ffffffffffffffff83116101625736602484860101116101625760246100189401916103e3565b156102d657565b60405162461bcd60e51b815260206004820152600f60248201526e1bdb9b1e48115b9d1c9e541bda5b9d608a1b6044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff81118382101761034757604052565b61030d565b67ffffffffffffffff811161034757601f01601f191660200190565b92919261037c6103778361034c565b610321565b938285528282011161016257815f926020928387013784010152565b6040513d5f823e3d90fd5b156103aa57565b60405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b6044820152606490fd5b90925f9384936103fe60018060a01b036001541633146102cf565b826040519384928337810185815203925af13d1561046d573d6104236103778261034c565b9081525f60203d92013e5b1561043557565b60405162461bcd60e51b815260206004820152601060248201526f115e1958dd5d1a5bdb8819985a5b195960821b6044820152606490fd5b61042e565b604181510361049057602081015190606060408201519101515f1a92565b60405162461bcd60e51b81526020600482015260186024820152770d2dcecc2d8d2c840e6d2cedcc2e8eae4ca40d8cadccee8d60431b6044820152606490fdfea26469706673582212201a328abe0b10b5ba9e1a54ff24bd4ac0b0d41204d94c821480e7b82620698acf64736f6c634300081c0033", + "deployedBytecode": "0x6080604052600436101561001a575b3615610018575f80fd5b005b5f3560e01c806319822f7c14610069578063485cc955146100645780638da5cb5b1461005f578063b0d691fe1461005a5763b61d27f60361000e57610263565b61023b565b610214565b610177565b346101625760603660031901126101625760043567ffffffffffffffff81116101625780360390610120600319830112610162576100b260018060a01b036001541633146102cf565b6101048101359160221901821215610162570160048101359067ffffffffffffffff8211610162576024018136038113610162576101286101006100fb5f936020953691610368565b610472565b60408051602435815260ff909416602085015283019190915260608201529081906080820190565b838052039060015afa1561015d575f80519054610152916001600160a01b039081169116146103a3565b6040515f8152602090f35b610398565b5f80fd5b6001600160a01b0381160361016257565b346101625760403660031901126101625760043561019481610166565b6024356101a081610166565b5f546001600160a01b0381166101d9576001600160a01b039283166001600160a01b0319918216175f5560018054929093169116179055005b60405162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b6044820152606490fd5b34610162575f366003190112610162575f546040516001600160a01b039091168152602090f35b34610162575f366003190112610162576001546040516001600160a01b039091168152602090f35b346101625760603660031901126101625760043561028081610166565b6024356044359167ffffffffffffffff831161016257366023840112156101625782600401359167ffffffffffffffff83116101625736602484860101116101625760246100189401916103e3565b156102d657565b60405162461bcd60e51b815260206004820152600f60248201526e1bdb9b1e48115b9d1c9e541bda5b9d608a1b6044820152606490fd5b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f1916820167ffffffffffffffff81118382101761034757604052565b61030d565b67ffffffffffffffff811161034757601f01601f191660200190565b92919261037c6103778361034c565b610321565b938285528282011161016257815f926020928387013784010152565b6040513d5f823e3d90fd5b156103aa57565b60405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b6044820152606490fd5b90925f9384936103fe60018060a01b036001541633146102cf565b826040519384928337810185815203925af13d1561046d573d6104236103778261034c565b9081525f60203d92013e5b1561043557565b60405162461bcd60e51b815260206004820152601060248201526f115e1958dd5d1a5bdb8819985a5b195960821b6044820152606490fd5b61042e565b604181510361049057602081015190606060408201519101515f1a92565b60405162461bcd60e51b81526020600482015260186024820152770d2dcecc2d8d2c840e6d2cedcc2e8eae4ca40d8cadccee8d60431b6044820152606490fdfea26469706673582212201a328abe0b10b5ba9e1a54ff24bd4ac0b0d41204d94c821480e7b82620698acf64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/tests/contracts/account_abstraction/smartwallet/SimpleSmartWallet.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/tests/contracts/account_abstraction/tokens/SimpleERC20.json b/tests/contracts/account_abstraction/tokens/SimpleERC20.json index 644649995..b7ed848a4 100644 --- a/tests/contracts/account_abstraction/tokens/SimpleERC20.json +++ b/tests/contracts/account_abstraction/tokens/SimpleERC20.json @@ -231,11 +231,11 @@ "type": "function" } ], - "bytecode": "0x608060405234610133576100135f54610137565b601f81116100ec575b507f4d7920546f6b656e0000000000000000000000000000000000000000000000105f5560015461004c90610137565b601f81116100a4575b6006624d544b60e81b01600155601260ff19600254161760025569d3c21bcecceda1000000600355335f52600460205269d3c21bcecceda100000060405f205560405161068390816101708239f35b60015f52601f0160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6908101905b8181106100e15750610055565b5f81556001016100d4565b5f8052601f0160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563908101905b818110610128575061001c565b5f815560010161011b565b5f80fd5b90600182811c92168015610165575b602083101461015157565b634e487b7160e01b5f52602260045260245ffd5b91607f169161014656fe60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146104b4578063095ea7b31461043b57806318160ddd1461041e57806323b872dd146102ed578063313ce567146102cd57806370a082311461029557806395d89b4114610177578063a9059cbb146100d05763dd62ed3e1461007c575f80fd5b346100cc5760403660031901126100cc576100956105b0565b61009d6105c6565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100cc5760403660031901126100cc576100e96105b0565b60243590335f5260046020526101058260405f205410156105dc565b335f52600460205260405f2061011c83825461061f565b905560018060a01b031690815f52600460205260405f2061013e828254610640565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100cc575f3660031901126100cc576040515f6001548060011c9060018116801561028b575b6020831081146102775782855290811561025b5750600114610205575b50819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60015f9081529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b828210610245575060209150820101826101bb565b6001816020925483858801015201910190610230565b90506020925060ff191682840152151560051b820101826101bb565b634e487b7160e01b5f52602260045260245ffd5b91607f169161019e565b346100cc5760203660031901126100cc576001600160a01b036102b66105b0565b165f526004602052602060405f2054604051908152f35b346100cc575f3660031901126100cc57602060ff60025416604051908152f35b346100cc5760603660031901126100cc576103066105b0565b61030e6105c6565b6044359160018060a01b031690815f5260046020526103338360405f205410156105dc565b5f82815260056020908152604080832033845290915290205483116103e45760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91835f526004825260405f2061038c86825461061f565b905560018060a01b031693845f526004825260405f206103ad828254610640565b90555f8481526005835260408082203383528452902080546103d090839061061f565b9055604051908152a3602060405160018152f35b60405162461bcd60e51b8152602060048201526012602482015271105b1b1bddd85b98d948195e18d95959195960721b6044820152606490fd5b346100cc575f3660031901126100cc576020600354604051908152f35b346100cc5760403660031901126100cc576104546105b0565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100cc575f3660031901126100cc576040515f5f548060011c9060018116801561057c575b6020831081146102775782855290811561025b57506001146105285750819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b5f8080529091507f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b828210610566575060209150820101826101bb565b6001816020925483858801015201910190610551565b91607f16916104da565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100cc57565b602435906001600160a01b03821682036100cc57565b156105e357565b60405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161062c57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161062c5756fea2646970667358221220487ad41778b113beec55fb8d8b4e047d9cf98497952cf4c232abbec0b15e821964736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146104b4578063095ea7b31461043b57806318160ddd1461041e57806323b872dd146102ed578063313ce567146102cd57806370a082311461029557806395d89b4114610177578063a9059cbb146100d05763dd62ed3e1461007c575f80fd5b346100cc5760403660031901126100cc576100956105b0565b61009d6105c6565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100cc5760403660031901126100cc576100e96105b0565b60243590335f5260046020526101058260405f205410156105dc565b335f52600460205260405f2061011c83825461061f565b905560018060a01b031690815f52600460205260405f2061013e828254610640565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100cc575f3660031901126100cc576040515f6001548060011c9060018116801561028b575b6020831081146102775782855290811561025b5750600114610205575b50819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60015f9081529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b828210610245575060209150820101826101bb565b6001816020925483858801015201910190610230565b90506020925060ff191682840152151560051b820101826101bb565b634e487b7160e01b5f52602260045260245ffd5b91607f169161019e565b346100cc5760203660031901126100cc576001600160a01b036102b66105b0565b165f526004602052602060405f2054604051908152f35b346100cc575f3660031901126100cc57602060ff60025416604051908152f35b346100cc5760603660031901126100cc576103066105b0565b61030e6105c6565b6044359160018060a01b031690815f5260046020526103338360405f205410156105dc565b5f82815260056020908152604080832033845290915290205483116103e45760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91835f526004825260405f2061038c86825461061f565b905560018060a01b031693845f526004825260405f206103ad828254610640565b90555f8481526005835260408082203383528452902080546103d090839061061f565b9055604051908152a3602060405160018152f35b60405162461bcd60e51b8152602060048201526012602482015271105b1b1bddd85b98d948195e18d95959195960721b6044820152606490fd5b346100cc575f3660031901126100cc576020600354604051908152f35b346100cc5760403660031901126100cc576104546105b0565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100cc575f3660031901126100cc576040515f5f548060011c9060018116801561057c575b6020831081146102775782855290811561025b57506001146105285750819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b5f8080529091507f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b828210610566575060209150820101826101bb565b6001816020925483858801015201910190610551565b91607f16916104da565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100cc57565b602435906001600160a01b03821682036100cc57565b156105e357565b60405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161062c57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161062c5756fea2646970667358221220487ad41778b113beec55fb8d8b4e047d9cf98497952cf4c232abbec0b15e821964736f6c634300081c0033", + "bytecode": "0x608060405234610133576100135f54610137565b601f81116100ec575b507f4d7920546f6b656e0000000000000000000000000000000000000000000000105f5560015461004c90610137565b601f81116100a4575b6006624d544b60e81b01600155601260ff19600254161760025569d3c21bcecceda1000000600355335f52600460205269d3c21bcecceda100000060405f205560405161068390816101708239f35b60015f52601f0160051c7fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6908101905b8181106100e15750610055565b5f81556001016100d4565b5f8052601f0160051c7f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563908101905b818110610128575061001c565b5f815560010161011b565b5f80fd5b90600182811c92168015610165575b602083101461015157565b634e487b7160e01b5f52602260045260245ffd5b91607f169161014656fe60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146104b4578063095ea7b31461043b57806318160ddd1461041e57806323b872dd146102ed578063313ce567146102cd57806370a082311461029557806395d89b4114610177578063a9059cbb146100d05763dd62ed3e1461007c575f80fd5b346100cc5760403660031901126100cc576100956105b0565b61009d6105c6565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100cc5760403660031901126100cc576100e96105b0565b60243590335f5260046020526101058260405f205410156105dc565b335f52600460205260405f2061011c83825461061f565b905560018060a01b031690815f52600460205260405f2061013e828254610640565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100cc575f3660031901126100cc576040515f6001548060011c9060018116801561028b575b6020831081146102775782855290811561025b5750600114610205575b50819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60015f9081529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b828210610245575060209150820101826101bb565b6001816020925483858801015201910190610230565b90506020925060ff191682840152151560051b820101826101bb565b634e487b7160e01b5f52602260045260245ffd5b91607f169161019e565b346100cc5760203660031901126100cc576001600160a01b036102b66105b0565b165f526004602052602060405f2054604051908152f35b346100cc575f3660031901126100cc57602060ff60025416604051908152f35b346100cc5760603660031901126100cc576103066105b0565b61030e6105c6565b6044359160018060a01b031690815f5260046020526103338360405f205410156105dc565b5f82815260056020908152604080832033845290915290205483116103e45760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91835f526004825260405f2061038c86825461061f565b905560018060a01b031693845f526004825260405f206103ad828254610640565b90555f8481526005835260408082203383528452902080546103d090839061061f565b9055604051908152a3602060405160018152f35b60405162461bcd60e51b8152602060048201526012602482015271105b1b1bddd85b98d948195e18d95959195960721b6044820152606490fd5b346100cc575f3660031901126100cc576020600354604051908152f35b346100cc5760403660031901126100cc576104546105b0565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100cc575f3660031901126100cc576040515f5f548060011c9060018116801561057c575b6020831081146102775782855290811561025b57506001146105285750819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b5f8080529091507f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b828210610566575060209150820101826101bb565b6001816020925483858801015201910190610551565b91607f16916104da565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100cc57565b602435906001600160a01b03821682036100cc57565b156105e357565b60405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161062c57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161062c5756fea26469706673582212200ba2fe2fd01f5452445850b9e8416f095f667fa75b8523079c620e3ee69802d964736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146104b4578063095ea7b31461043b57806318160ddd1461041e57806323b872dd146102ed578063313ce567146102cd57806370a082311461029557806395d89b4114610177578063a9059cbb146100d05763dd62ed3e1461007c575f80fd5b346100cc5760403660031901126100cc576100956105b0565b61009d6105c6565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100cc5760403660031901126100cc576100e96105b0565b60243590335f5260046020526101058260405f205410156105dc565b335f52600460205260405f2061011c83825461061f565b905560018060a01b031690815f52600460205260405f2061013e828254610640565b90556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100cc575f3660031901126100cc576040515f6001548060011c9060018116801561028b575b6020831081146102775782855290811561025b5750600114610205575b50819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60015f9081529091507fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b828210610245575060209150820101826101bb565b6001816020925483858801015201910190610230565b90506020925060ff191682840152151560051b820101826101bb565b634e487b7160e01b5f52602260045260245ffd5b91607f169161019e565b346100cc5760203660031901126100cc576001600160a01b036102b66105b0565b165f526004602052602060405f2054604051908152f35b346100cc575f3660031901126100cc57602060ff60025416604051908152f35b346100cc5760603660031901126100cc576103066105b0565b61030e6105c6565b6044359160018060a01b031690815f5260046020526103338360405f205410156105dc565b5f82815260056020908152604080832033845290915290205483116103e45760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91835f526004825260405f2061038c86825461061f565b905560018060a01b031693845f526004825260405f206103ad828254610640565b90555f8481526005835260408082203383528452902080546103d090839061061f565b9055604051908152a3602060405160018152f35b60405162461bcd60e51b8152602060048201526012602482015271105b1b1bddd85b98d948195e18d95959195960721b6044820152606490fd5b346100cc575f3660031901126100cc576020600354604051908152f35b346100cc5760403660031901126100cc576104546105b0565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100cc575f3660031901126100cc576040515f5f548060011c9060018116801561057c575b6020831081146102775782855290811561025b57506001146105285750819003601f01601f191681019067ffffffffffffffff8211818310176101f157604082905281906101ed9082610586565b5f8080529091507f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e5635b828210610566575060209150820101826101bb565b6001816020925483858801015201910190610551565b91607f16916104da565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036100cc57565b602435906001600160a01b03821682036100cc57565b156105e357565b60405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606490fd5b9190820391821161062c57565b634e487b7160e01b5f52601160045260245ffd5b9190820180921161062c5756fea26469706673582212200ba2fe2fd01f5452445850b9e8416f095f667fa75b8523079c620e3ee69802d964736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/tests/contracts/account_abstraction/tokens/SimpleERC20.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json b/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json index 1cd9be0ff..bd515f78c 100644 --- a/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json +++ b/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.json @@ -548,11 +548,11 @@ "type": "function" } ], - "bytecode": "0x6080604052346103b257604051601f610e3538819003918201601f19168301916001600160401b038311848410176102c3578084926020946040528339810103126103b2575161004d6103b6565b906100566103b6565b82519091906001600160401b0381116102c357600354600181811c911680156103a8575b60208210146102a557601f8111610345575b506020601f82116001146102e257819293945f926102d7575b50508160011b915f199060031b1c1916176003555b81516001600160401b0381116102c357600454600181811c911680156102b9575b60208210146102a557601f8111610242575b50602092601f82116001146101e157928192935f926101d6575b50508160011b915f199060031b1c1916176004555b600680546001600160a01b031916734dc6ac40af078661fc43823086e1513635eeab1417905561014b336103ff565b5033156101c3576002548181018091116101af57600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a360405161098c90816104898239f35b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b015190505f80610107565b601f1982169360045f52805f20915f5b86811061022a5750836001959610610212575b505050811b0160045561011c565b01515f1960f88460031b161c191690555f8080610204565b919260206001819286850151815501940192016101f1565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c8101916020841061029b575b601f0160051c01905b81811061029057506100ed565b5f8155600101610283565b909150819061027a565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100db565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100a5565b601f1982169060035f52805f20915f5b81811061032d57509583600195969710610315575b505050811b016003556100ba565b01515f1960f88460031b161c191690555f8080610307565b9192602060018192868b0151815501940192016102f2565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061039e575b601f0160051c01905b818110610393575061008c565b5f8155600101610386565b909150819061037d565b90607f169061007a565b5f80fd5b60408051919082016001600160401b038111838210176102c357604052601e82527f455243323044697265637442616c616e63654d616e6970756c6174696f6e00006020830152565b6001600160a01b0381165f9081525f516020610e155f395f51905f52602052604090205460ff16610483576001600160a01b03165f8181525f516020610e155f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146106a65750806306fdde03146105d3578063095ea7b31461055157806318160ddd1461053457806323b872dd14610455578063248a9ca3146104225780632f2ff15d146103e4578063313ce567146103c957806336568abe1461038557806370a082311461034e57806391d148541461030557806395d89b41146101e9578063a217fddf146101cf578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e5610723565b6100ed610739565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f610739565b9061015e610159825f526005602052600160405f20015490565b61080c565b6108d2565b005b3461011c57604036600319011261011c5761017e610723565b602435908160011c9060018060a01b03600654168284039384116101bb576101b0936101aa913361074f565b3361074f565b602060405160018152f35b634e487b7160e01b5f52601160045260245ffd5b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102fb575b6020831081146102e7578285529081156102cb5750600114610275575b50819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102b55750602091508201018261022d565b60018160209254838588010152019101906102a0565b90506020925060ff191682840152151560051b8201018261022d565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610210565b3461011c57604036600319011261011c5761031e610739565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361036f610723565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761039e610739565b336001600160a01b038216036103ba57610163906004356108d2565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c57610163600435610403610739565b9061041d610159825f526005602052600160405f20015490565b610846565b3461011c57602036600319011261011c57602061044d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761046e610723565b610476610739565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f1981106104b4575b506101b0935061074f565b8381106105195784156105065733156104f3576101b0945f52600160205260405f2060018060a01b0333165f526020528360405f2091039055846104a9565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c5761056a610723565b602435903315610506576001600160a01b03169081156104f357335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b3461011c575f36600319011261011c576040515f6003548060011c9060018116801561069c575b6020831081146102e7578285529081156102cb57506001146106465750819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b8282106106865750602091508201018261022d565b6001816020925483858801015201910190610671565b91607f16916105fa565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b81149081156106e8575b5015158152f35b6301ffc9a760e01b149050836106e1565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b03169081156107f9576001600160a01b03169182156107e657815f525f60205260405f20548181106107cd57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156108305750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff166108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16156108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a460019056fea2646970667358221220f51f16e074dc0b9a8d059ca87ce327a2c011792bb8461b7f9233f84152cb304564736f6c634300081c003305b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146106a65750806306fdde03146105d3578063095ea7b31461055157806318160ddd1461053457806323b872dd14610455578063248a9ca3146104225780632f2ff15d146103e4578063313ce567146103c957806336568abe1461038557806370a082311461034e57806391d148541461030557806395d89b41146101e9578063a217fddf146101cf578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e5610723565b6100ed610739565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f610739565b9061015e610159825f526005602052600160405f20015490565b61080c565b6108d2565b005b3461011c57604036600319011261011c5761017e610723565b602435908160011c9060018060a01b03600654168284039384116101bb576101b0936101aa913361074f565b3361074f565b602060405160018152f35b634e487b7160e01b5f52601160045260245ffd5b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102fb575b6020831081146102e7578285529081156102cb5750600114610275575b50819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102b55750602091508201018261022d565b60018160209254838588010152019101906102a0565b90506020925060ff191682840152151560051b8201018261022d565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610210565b3461011c57604036600319011261011c5761031e610739565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361036f610723565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761039e610739565b336001600160a01b038216036103ba57610163906004356108d2565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c57610163600435610403610739565b9061041d610159825f526005602052600160405f20015490565b610846565b3461011c57602036600319011261011c57602061044d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761046e610723565b610476610739565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f1981106104b4575b506101b0935061074f565b8381106105195784156105065733156104f3576101b0945f52600160205260405f2060018060a01b0333165f526020528360405f2091039055846104a9565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c5761056a610723565b602435903315610506576001600160a01b03169081156104f357335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b3461011c575f36600319011261011c576040515f6003548060011c9060018116801561069c575b6020831081146102e7578285529081156102cb57506001146106465750819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b8282106106865750602091508201018261022d565b6001816020925483858801015201910190610671565b91607f16916105fa565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b81149081156106e8575b5015158152f35b6301ffc9a760e01b149050836106e1565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b03169081156107f9576001600160a01b03169182156107e657815f525f60205260405f20548181106107cd57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156108305750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff166108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16156108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a460019056fea2646970667358221220f51f16e074dc0b9a8d059ca87ce327a2c011792bb8461b7f9233f84152cb304564736f6c634300081c0033", + "bytecode": "0x6080604052346103b257604051601f610e3538819003918201601f19168301916001600160401b038311848410176102c3578084926020946040528339810103126103b2575161004d6103b6565b906100566103b6565b82519091906001600160401b0381116102c357600354600181811c911680156103a8575b60208210146102a557601f8111610345575b506020601f82116001146102e257819293945f926102d7575b50508160011b915f199060031b1c1916176003555b81516001600160401b0381116102c357600454600181811c911680156102b9575b60208210146102a557601f8111610242575b50602092601f82116001146101e157928192935f926101d6575b50508160011b915f199060031b1c1916176004555b600680546001600160a01b031916734dc6ac40af078661fc43823086e1513635eeab1417905561014b336103ff565b5033156101c3576002548181018091116101af57600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a360405161098c90816104898239f35b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b015190505f80610107565b601f1982169360045f52805f20915f5b86811061022a5750836001959610610212575b505050811b0160045561011c565b01515f1960f88460031b161c191690555f8080610204565b919260206001819286850151815501940192016101f1565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c8101916020841061029b575b601f0160051c01905b81811061029057506100ed565b5f8155600101610283565b909150819061027a565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100db565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100a5565b601f1982169060035f52805f20915f5b81811061032d57509583600195969710610315575b505050811b016003556100ba565b01515f1960f88460031b161c191690555f8080610307565b9192602060018192868b0151815501940192016102f2565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061039e575b601f0160051c01905b818110610393575061008c565b5f8155600101610386565b909150819061037d565b90607f169061007a565b5f80fd5b60408051919082016001600160401b038111838210176102c357604052601e82527f455243323044697265637442616c616e63654d616e6970756c6174696f6e00006020830152565b6001600160a01b0381165f9081525f516020610e155f395f51905f52602052604090205460ff16610483576001600160a01b03165f8181525f516020610e155f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146106a65750806306fdde03146105d3578063095ea7b31461055157806318160ddd1461053457806323b872dd14610455578063248a9ca3146104225780632f2ff15d146103e4578063313ce567146103c957806336568abe1461038557806370a082311461034e57806391d148541461030557806395d89b41146101e9578063a217fddf146101cf578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e5610723565b6100ed610739565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f610739565b9061015e610159825f526005602052600160405f20015490565b61080c565b6108d2565b005b3461011c57604036600319011261011c5761017e610723565b602435908160011c9060018060a01b03600654168284039384116101bb576101b0936101aa913361074f565b3361074f565b602060405160018152f35b634e487b7160e01b5f52601160045260245ffd5b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102fb575b6020831081146102e7578285529081156102cb5750600114610275575b50819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102b55750602091508201018261022d565b60018160209254838588010152019101906102a0565b90506020925060ff191682840152151560051b8201018261022d565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610210565b3461011c57604036600319011261011c5761031e610739565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361036f610723565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761039e610739565b336001600160a01b038216036103ba57610163906004356108d2565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c57610163600435610403610739565b9061041d610159825f526005602052600160405f20015490565b610846565b3461011c57602036600319011261011c57602061044d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761046e610723565b610476610739565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f1981106104b4575b506101b0935061074f565b8381106105195784156105065733156104f3576101b0945f52600160205260405f2060018060a01b0333165f526020528360405f2091039055846104a9565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c5761056a610723565b602435903315610506576001600160a01b03169081156104f357335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b3461011c575f36600319011261011c576040515f6003548060011c9060018116801561069c575b6020831081146102e7578285529081156102cb57506001146106465750819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b8282106106865750602091508201018261022d565b6001816020925483858801015201910190610671565b91607f16916105fa565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b81149081156106e8575b5015158152f35b6301ffc9a760e01b149050836106e1565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b03169081156107f9576001600160a01b03169182156107e657815f525f60205260405f20548181106107cd57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156108305750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff166108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16156108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a460019056fea2646970667358221220c4b7d040240ec43bc90525c9ae861eb3a11a92f1ced6a11383fd95e7757d772664736f6c634300081c003305b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a7146106a65750806306fdde03146105d3578063095ea7b31461055157806318160ddd1461053457806323b872dd14610455578063248a9ca3146104225780632f2ff15d146103e4578063313ce567146103c957806336568abe1461038557806370a082311461034e57806391d148541461030557806395d89b41146101e9578063a217fddf146101cf578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e5610723565b6100ed610739565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f610739565b9061015e610159825f526005602052600160405f20015490565b61080c565b6108d2565b005b3461011c57604036600319011261011c5761017e610723565b602435908160011c9060018060a01b03600654168284039384116101bb576101b0936101aa913361074f565b3361074f565b602060405160018152f35b634e487b7160e01b5f52601160045260245ffd5b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102fb575b6020831081146102e7578285529081156102cb5750600114610275575b50819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102b55750602091508201018261022d565b60018160209254838588010152019101906102a0565b90506020925060ff191682840152151560051b8201018261022d565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610210565b3461011c57604036600319011261011c5761031e610739565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361036f610723565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761039e610739565b336001600160a01b038216036103ba57610163906004356108d2565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c57610163600435610403610739565b9061041d610159825f526005602052600160405f20015490565b610846565b3461011c57602036600319011261011c57602061044d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761046e610723565b610476610739565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f1981106104b4575b506101b0935061074f565b8381106105195784156105065733156104f3576101b0945f52600160205260405f2060018060a01b0333165f526020528360405f2091039055846104a9565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c5761056a610723565b602435903315610506576001600160a01b03169081156104f357335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b3461011c575f36600319011261011c576040515f6003548060011c9060018116801561069c575b6020831081146102e7578285529081156102cb57506001146106465750819003601f01601f191681019067ffffffffffffffff8211818310176102615761025d829182604052826106f9565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b8282106106865750602091508201018261022d565b6001816020925483858801015201910190610671565b91607f16916105fa565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b81149081156106e8575b5015158152f35b6301ffc9a760e01b149050836106e1565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b03169081156107f9576001600160a01b03169182156107e657815f525f60205260405f20548181106107cd57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156108305750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff166108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16156108cc575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a460019056fea2646970667358221220c4b7d040240ec43bc90525c9ae861eb3a11a92f1ced6a11383fd95e7757d772664736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/x/erc20/keeper/testdata/ERC20DirectBalanceManipulation.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json b/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json index 06098ad0c..a98f0254b 100644 --- a/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json +++ b/x/erc20/keeper/testdata/ERC20MaliciousDelayed.json @@ -548,11 +548,11 @@ "type": "function" } ], - "bytecode": "0x6080604052346103fb57610e416020813803918261001c816103ff565b9384928339810103126103fb575161003460406103ff565b90601582527f45524332304d616c6963696f757344656c617965640000000000000000000000602083015261006960406103ff565b601581527f45524332304d414c4943494f555344454c415945440000000000000000000000602082015282519091906001600160401b03811161030c57600354600181811c911680156103f1575b60208210146102ee57601f811161038e575b506020601f821160011461032b57819293945f92610320575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161030c57600454600181811c91168015610302575b60208210146102ee57601f811161028b575b50602092601f821160011461022a57928192935f9261021f575b50508160011b915f199060031b1c1916176004555b600680546001600160a01b031916734dc6ac40af078661fc43823086e1513635eeab14179055670de0b6b3a764000060075561019433610424565b50331561020c576002548181018091116101f857600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a360405161097390816104ae8239f35b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b015190505f80610144565b601f1982169360045f52805f20915f5b868110610273575083600195961061025b575b505050811b01600455610159565b01515f1960f88460031b161c191690555f808061024d565b9192602060018192868501518155019401920161023a565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c810191602084106102e4575b601f0160051c01905b8181106102d9575061012a565b5f81556001016102cc565b90915081906102c3565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610118565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100e2565b601f1982169060035f52805f20915f5b8181106103765750958360019596971061035e575b505050811b016003556100f7565b01515f1960f88460031b161c191690555f8080610350565b9192602060018192868b01518155019401920161033b565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c810191602084106103e7575b601f0160051c01905b8181106103dc57506100c9565b5f81556001016103cf565b90915081906103c6565b90607f16906100b7565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761030c57604052565b6001600160a01b0381165f9081525f516020610e215f395f51905f52602052604090205460ff166104a8576001600160a01b03165f8181525f516020610e215f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461062a5750806306fdde0314610557578063095ea7b31461053157806318160ddd1461051457806323b872dd14610435578063248a9ca3146104025780632f2ff15d146103c4578063313ce567146103a957806336568abe1461036557806370a082311461032e57806391d14854146102e557806395d89b41146101c9578063a217fddf146101af578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e56106a7565b6100ed6106bd565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f6106bd565b9061015e610159825f526005602052600160405f20015490565b610790565b610856565b005b3461011c57604036600319011261011c576101a46101816106a7565b60065460075461019a916001600160a01b0316836108da565b60243590336106d3565b602060405160018152f35b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102db575b6020831081146102c7578285529081156102ab5750600114610255575b50819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102955750602091508201018261020d565b6001816020925483858801015201910190610280565b90506020925060ff191682840152151560051b8201018261020d565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101f0565b3461011c57604036600319011261011c576102fe6106bd565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361034f6106a7565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761037e6106bd565b336001600160a01b0382160361039a5761016390600435610856565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c576101636004356103e36106bd565b906103fd610159825f526005602052600160405f20015490565b6107ca565b3461011c57602036600319011261011c57602061042d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761044e6106a7565b6104566106bd565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610494575b506101a493506106d3565b8381106104f95784156104e65733156104d3576101a4945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610489565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c576101a461054d6106a7565b60243590336108da565b3461011c575f36600319011261011c576040515f6003548060011c90600181168015610620575b6020831081146102c7578285529081156102ab57506001146105ca5750819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b82821061060a5750602091508201018261020d565b60018160209254838588010152019101906105f5565b91607f169161057e565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b811490811561066c575b5015158152f35b6301ffc9a760e01b14905083610665565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b031690811561077d576001600160a01b031691821561076a57815f525f60205260405f205481811061075157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156107b45750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff1615610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b6001600160a01b03169081156104e6576001600160a01b03169182156104d35760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a356fea26469706673582212203cc72150e4e3453727c1486fd5d8b9476b0303ff8955102ec4330b4d49c81a5864736f6c634300081c003305b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc", - "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461062a5750806306fdde0314610557578063095ea7b31461053157806318160ddd1461051457806323b872dd14610435578063248a9ca3146104025780632f2ff15d146103c4578063313ce567146103a957806336568abe1461036557806370a082311461032e57806391d14854146102e557806395d89b41146101c9578063a217fddf146101af578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e56106a7565b6100ed6106bd565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f6106bd565b9061015e610159825f526005602052600160405f20015490565b610790565b610856565b005b3461011c57604036600319011261011c576101a46101816106a7565b60065460075461019a916001600160a01b0316836108da565b60243590336106d3565b602060405160018152f35b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102db575b6020831081146102c7578285529081156102ab5750600114610255575b50819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102955750602091508201018261020d565b6001816020925483858801015201910190610280565b90506020925060ff191682840152151560051b8201018261020d565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101f0565b3461011c57604036600319011261011c576102fe6106bd565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361034f6106a7565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761037e6106bd565b336001600160a01b0382160361039a5761016390600435610856565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c576101636004356103e36106bd565b906103fd610159825f526005602052600160405f20015490565b6107ca565b3461011c57602036600319011261011c57602061042d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761044e6106a7565b6104566106bd565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610494575b506101a493506106d3565b8381106104f95784156104e65733156104d3576101a4945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610489565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c576101a461054d6106a7565b60243590336108da565b3461011c575f36600319011261011c576040515f6003548060011c90600181168015610620575b6020831081146102c7578285529081156102ab57506001146105ca5750819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b82821061060a5750602091508201018261020d565b60018160209254838588010152019101906105f5565b91607f169161057e565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b811490811561066c575b5015158152f35b6301ffc9a760e01b14905083610665565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b031690811561077d576001600160a01b031691821561076a57815f525f60205260405f205481811061075157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156107b45750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff1615610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b6001600160a01b03169081156104e6576001600160a01b03169182156104d35760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a356fea26469706673582212203cc72150e4e3453727c1486fd5d8b9476b0303ff8955102ec4330b4d49c81a5864736f6c634300081c0033", + "bytecode": "0x6080604052346103fb57610e416020813803918261001c816103ff565b9384928339810103126103fb575161003460406103ff565b90601582527f45524332304d616c6963696f757344656c617965640000000000000000000000602083015261006960406103ff565b601581527f45524332304d414c4943494f555344454c415945440000000000000000000000602082015282519091906001600160401b03811161030c57600354600181811c911680156103f1575b60208210146102ee57601f811161038e575b506020601f821160011461032b57819293945f92610320575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161030c57600454600181811c91168015610302575b60208210146102ee57601f811161028b575b50602092601f821160011461022a57928192935f9261021f575b50508160011b915f199060031b1c1916176004555b600680546001600160a01b031916734dc6ac40af078661fc43823086e1513635eeab14179055670de0b6b3a764000060075561019433610424565b50331561020c576002548181018091116101f857600255335f525f60205260405f208181540190556040519081525f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203393a360405161097390816104ae8239f35b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b015190505f80610144565b601f1982169360045f52805f20915f5b868110610273575083600195961061025b575b505050811b01600455610159565b01515f1960f88460031b161c191690555f808061024d565b9192602060018192868501518155019401920161023a565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c810191602084106102e4575b601f0160051c01905b8181106102d9575061012a565b5f81556001016102cc565b90915081906102c3565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610118565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100e2565b601f1982169060035f52805f20915f5b8181106103765750958360019596971061035e575b505050811b016003556100f7565b01515f1960f88460031b161c191690555f8080610350565b9192602060018192868b01518155019401920161033b565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c810191602084106103e7575b601f0160051c01905b8181106103dc57506100c9565b5f81556001016103cf565b90915081906103c6565b90607f16906100b7565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761030c57604052565b6001600160a01b0381165f9081525f516020610e215f395f51905f52602052604090205460ff166104a8576001600160a01b03165f8181525f516020610e215f395f51905f5260205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b505f9056fe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461062a5750806306fdde0314610557578063095ea7b31461053157806318160ddd1461051457806323b872dd14610435578063248a9ca3146104025780632f2ff15d146103c4578063313ce567146103a957806336568abe1461036557806370a082311461032e57806391d14854146102e557806395d89b41146101c9578063a217fddf146101af578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e56106a7565b6100ed6106bd565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f6106bd565b9061015e610159825f526005602052600160405f20015490565b610790565b610856565b005b3461011c57604036600319011261011c576101a46101816106a7565b60065460075461019a916001600160a01b0316836108da565b60243590336106d3565b602060405160018152f35b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102db575b6020831081146102c7578285529081156102ab5750600114610255575b50819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102955750602091508201018261020d565b6001816020925483858801015201910190610280565b90506020925060ff191682840152151560051b8201018261020d565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101f0565b3461011c57604036600319011261011c576102fe6106bd565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361034f6106a7565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761037e6106bd565b336001600160a01b0382160361039a5761016390600435610856565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c576101636004356103e36106bd565b906103fd610159825f526005602052600160405f20015490565b6107ca565b3461011c57602036600319011261011c57602061042d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761044e6106a7565b6104566106bd565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610494575b506101a493506106d3565b8381106104f95784156104e65733156104d3576101a4945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610489565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c576101a461054d6106a7565b60243590336108da565b3461011c575f36600319011261011c576040515f6003548060011c90600181168015610620575b6020831081146102c7578285529081156102ab57506001146105ca5750819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b82821061060a5750602091508201018261020d565b60018160209254838588010152019101906105f5565b91607f169161057e565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b811490811561066c575b5015158152f35b6301ffc9a760e01b14905083610665565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b031690811561077d576001600160a01b031691821561076a57815f525f60205260405f205481811061075157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156107b45750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff1615610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b6001600160a01b03169081156104e6576001600160a01b03169182156104d35760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a356fea26469706673582212204b5d5544ba635fc0d499ae14cb423964189eba4ad493964e8aacc9130d0a1c9f64736f6c634300081c003305b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc", + "deployedBytecode": "0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a71461062a5750806306fdde0314610557578063095ea7b31461053157806318160ddd1461051457806323b872dd14610435578063248a9ca3146104025780632f2ff15d146103c4578063313ce567146103a957806336568abe1461036557806370a082311461032e57806391d14854146102e557806395d89b41146101c9578063a217fddf146101af578063a9059cbb14610165578063d547741f146101205763dd62ed3e146100cc575f80fd5b3461011c57604036600319011261011c576100e56106a7565b6100ed6106bd565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461011c57604036600319011261011c5761016360043561013f6106bd565b9061015e610159825f526005602052600160405f20015490565b610790565b610856565b005b3461011c57604036600319011261011c576101a46101816106a7565b60065460075461019a916001600160a01b0316836108da565b60243590336106d3565b602060405160018152f35b3461011c575f36600319011261011c5760206040515f8152f35b3461011c575f36600319011261011c576040515f6004548060011c906001811680156102db575b6020831081146102c7578285529081156102ab5750600114610255575b50819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106102955750602091508201018261020d565b6001816020925483858801015201910190610280565b90506020925060ff191682840152151560051b8201018261020d565b634e487b7160e01b5f52602260045260245ffd5b91607f16916101f0565b3461011c57604036600319011261011c576102fe6106bd565b6004355f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b3461011c57602036600319011261011c576001600160a01b0361034f6106a7565b165f525f602052602060405f2054604051908152f35b3461011c57604036600319011261011c5761037e6106bd565b336001600160a01b0382160361039a5761016390600435610856565b63334bd91960e11b5f5260045ffd5b3461011c575f36600319011261011c57602060405160128152f35b3461011c57604036600319011261011c576101636004356103e36106bd565b906103fd610159825f526005602052600160405f20015490565b6107ca565b3461011c57602036600319011261011c57602061042d6004355f526005602052600160405f20015490565b604051908152f35b3461011c57606036600319011261011c5761044e6106a7565b6104566106bd565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610494575b506101a493506106d3565b8381106104f95784156104e65733156104d3576101a4945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610489565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b3461011c575f36600319011261011c576020600254604051908152f35b3461011c57604036600319011261011c576101a461054d6106a7565b60243590336108da565b3461011c575f36600319011261011c576040515f6003548060011c90600181168015610620575b6020831081146102c7578285529081156102ab57506001146105ca5750819003601f01601f191681019067ffffffffffffffff8211818310176102415761023d8291826040528261067d565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b82821061060a5750602091508201018261020d565b60018160209254838588010152019101906105f5565b91607f169161057e565b3461011c57602036600319011261011c576004359063ffffffff60e01b821680920361011c57602091637965db0b60e01b811490811561066c575b5015158152f35b6301ffc9a760e01b14905083610665565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361011c57565b602435906001600160a01b038216820361011c57565b6001600160a01b031690811561077d576001600160a01b031691821561076a57815f525f60205260405f205481811061075157817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f81815260056020908152604080832033845290915290205460ff16156107b45750565b63e2517d3f60e01b5f523360045260245260445ffd5b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff16610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b50505f90565b5f8181526005602090815260408083206001600160a01b038616845290915290205460ff1615610850575f8181526005602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b6001600160a01b03169081156104e6576001600160a01b03169182156104d35760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a356fea26469706673582212204b5d5544ba635fc0d499ae14cb423964189eba4ad493964e8aacc9130d0a1c9f64736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/x/erc20/keeper/testdata/ERC20MaliciousDelayed.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file diff --git a/x/ibc/callbacks/testutil/CounterWithCallbacks.json b/x/ibc/callbacks/testutil/CounterWithCallbacks.json index d25c40e24..48de828b2 100644 --- a/x/ibc/callbacks/testutil/CounterWithCallbacks.json +++ b/x/ibc/callbacks/testutil/CounterWithCallbacks.json @@ -282,11 +282,11 @@ "type": "function" } ], - "bytecode": "0x6080806040523460155761059c908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631f8ee6031461035f57806339b4073a1461024c57806345f2d105146101e057806361bc221a146102305780638ada066e14610230578063c489744b146101e0578063dbdf7fce146101cb5763f5d82b6b14610071575f80fd5b346101b45760403660031901126101b45761008a6104de565b6024359060018060a01b0316906040516323b872dd60e01b81523360048201523060248201528160448201526020816064815f875af180156101c057610188575b506100d65f5461054a565b5f55335f52600160205260405f20825f5260205260405f2080549082820180921161017457555f546040519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f060203392a2335f52600160205260405f20825f5260205260405f205460405191825260208201527f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535960403392a3005b634e487b7160e01b5f52601160045260245ffd5b6020813d6020116101b8575b816101a160209383610440565b810103126101b4575180151581146100cb575b5f80fd5b3d9150610194565b6040513d5f823e3d90fd5b346101b4575f3660031901126101b4575f8055005b346101b45760403660031901126101b4576101f96104de565b6102016104f4565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101b4575f3660031901126101b45760205f54604051908152f35b346101b45760a03660031901126101b4576004356001600160401b0381116101b45761027c903690600401610475565b6024356001600160401b0381116101b45761029b903690600401610475565b6102a36104c8565b6064356001600160401b0381116101b4576102c2903690600401610475565b92608435916001600160401b0383116101b45761034e6001600160401b039261034061032561031f6103197f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f983690600401610475565b9361050a565b9761050a565b97604051958695168552606060208601526060850190610526565b908382036040850152610526565b0390a361035b5f5461054a565b5f55005b346101b45760803660031901126101b4576004356001600160401b0381116101b45761038f903690600401610475565b6024356001600160401b0381116101b4576103ae903690600401610475565b6103b66104c8565b6064356001600160401b0381116101b4577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c89161042961040e61040861031f6001600160401b03953690600401610475565b9561050a565b95604051938493168352604060208401526040830190610526565b0390a35f545f198101908113600116610174575f55005b90601f801991011681019081106001600160401b0382111761046157604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156101b4576020813591016001600160401b03821161046157604051926104ac601f8401601f191660200185610440565b828452828201116101b457815f92602092838601378301015290565b604435906001600160401b03821682036101b457565b600435906001600160a01b03821682036101b457565b602435906001600160a01b03821682036101b457565b602090604051918183925191829101835e81015f815203902090565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060018201915f6001841291129080158216911516176101745756fea2646970667358221220dacec0b65394990427cc63670aabba33db94bea385d570badb7c98ec31aebe0f64736f6c634300081c0033", - "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631f8ee6031461035f57806339b4073a1461024c57806345f2d105146101e057806361bc221a146102305780638ada066e14610230578063c489744b146101e0578063dbdf7fce146101cb5763f5d82b6b14610071575f80fd5b346101b45760403660031901126101b45761008a6104de565b6024359060018060a01b0316906040516323b872dd60e01b81523360048201523060248201528160448201526020816064815f875af180156101c057610188575b506100d65f5461054a565b5f55335f52600160205260405f20825f5260205260405f2080549082820180921161017457555f546040519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f060203392a2335f52600160205260405f20825f5260205260405f205460405191825260208201527f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535960403392a3005b634e487b7160e01b5f52601160045260245ffd5b6020813d6020116101b8575b816101a160209383610440565b810103126101b4575180151581146100cb575b5f80fd5b3d9150610194565b6040513d5f823e3d90fd5b346101b4575f3660031901126101b4575f8055005b346101b45760403660031901126101b4576101f96104de565b6102016104f4565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101b4575f3660031901126101b45760205f54604051908152f35b346101b45760a03660031901126101b4576004356001600160401b0381116101b45761027c903690600401610475565b6024356001600160401b0381116101b45761029b903690600401610475565b6102a36104c8565b6064356001600160401b0381116101b4576102c2903690600401610475565b92608435916001600160401b0383116101b45761034e6001600160401b039261034061032561031f6103197f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f983690600401610475565b9361050a565b9761050a565b97604051958695168552606060208601526060850190610526565b908382036040850152610526565b0390a361035b5f5461054a565b5f55005b346101b45760803660031901126101b4576004356001600160401b0381116101b45761038f903690600401610475565b6024356001600160401b0381116101b4576103ae903690600401610475565b6103b66104c8565b6064356001600160401b0381116101b4577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c89161042961040e61040861031f6001600160401b03953690600401610475565b9561050a565b95604051938493168352604060208401526040830190610526565b0390a35f545f198101908113600116610174575f55005b90601f801991011681019081106001600160401b0382111761046157604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156101b4576020813591016001600160401b03821161046157604051926104ac601f8401601f191660200185610440565b828452828201116101b457815f92602092838601378301015290565b604435906001600160401b03821682036101b457565b600435906001600160a01b03821682036101b457565b602435906001600160a01b03821682036101b457565b602090604051918183925191829101835e81015f815203902090565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060018201915f6001841291129080158216911516176101745756fea2646970667358221220dacec0b65394990427cc63670aabba33db94bea385d570badb7c98ec31aebe0f64736f6c634300081c0033", + "bytecode": "0x6080806040523460155761059c908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80631f8ee6031461035f57806339b4073a1461024c57806345f2d105146101e057806361bc221a146102305780638ada066e14610230578063c489744b146101e0578063dbdf7fce146101cb5763f5d82b6b14610071575f80fd5b346101b45760403660031901126101b45761008a6104de565b6024359060018060a01b0316906040516323b872dd60e01b81523360048201523060248201528160448201526020816064815f875af180156101c057610188575b506100d65f5461054a565b5f55335f52600160205260405f20825f5260205260405f2080549082820180921161017457555f546040519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f060203392a2335f52600160205260405f20825f5260205260405f205460405191825260208201527f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535960403392a3005b634e487b7160e01b5f52601160045260245ffd5b6020813d6020116101b8575b816101a160209383610440565b810103126101b4575180151581146100cb575b5f80fd5b3d9150610194565b6040513d5f823e3d90fd5b346101b4575f3660031901126101b4575f8055005b346101b45760403660031901126101b4576101f96104de565b6102016104f4565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101b4575f3660031901126101b45760205f54604051908152f35b346101b45760a03660031901126101b4576004356001600160401b0381116101b45761027c903690600401610475565b6024356001600160401b0381116101b45761029b903690600401610475565b6102a36104c8565b6064356001600160401b0381116101b4576102c2903690600401610475565b92608435916001600160401b0383116101b45761034e6001600160401b039261034061032561031f6103197f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f983690600401610475565b9361050a565b9761050a565b97604051958695168552606060208601526060850190610526565b908382036040850152610526565b0390a361035b5f5461054a565b5f55005b346101b45760803660031901126101b4576004356001600160401b0381116101b45761038f903690600401610475565b6024356001600160401b0381116101b4576103ae903690600401610475565b6103b66104c8565b6064356001600160401b0381116101b4577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c89161042961040e61040861031f6001600160401b03953690600401610475565b9561050a565b95604051938493168352604060208401526040830190610526565b0390a35f545f198101908113600116610174575f55005b90601f801991011681019081106001600160401b0382111761046157604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156101b4576020813591016001600160401b03821161046157604051926104ac601f8401601f191660200185610440565b828452828201116101b457815f92602092838601378301015290565b604435906001600160401b03821682036101b457565b600435906001600160a01b03821682036101b457565b602435906001600160a01b03821682036101b457565b602090604051918183925191829101835e81015f815203902090565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060018201915f6001841291129080158216911516176101745756fea26469706673582212206cb020d676bf2aeac93010faa7d37296ad9a8060da321098e9b46987d0dbd3a264736f6c634300081c0033", + "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c80631f8ee6031461035f57806339b4073a1461024c57806345f2d105146101e057806361bc221a146102305780638ada066e14610230578063c489744b146101e0578063dbdf7fce146101cb5763f5d82b6b14610071575f80fd5b346101b45760403660031901126101b45761008a6104de565b6024359060018060a01b0316906040516323b872dd60e01b81523360048201523060248201528160448201526020816064815f875af180156101c057610188575b506100d65f5461054a565b5f55335f52600160205260405f20825f5260205260405f2080549082820180921161017457555f546040519081527fea6fcea9210b4226b3bb7e55ffa18bf072036d64073f5553336ee9bef303c2f060203392a2335f52600160205260405f20825f5260205260405f205460405191825260208201527f9d572f819ae4f4b4839dda54bcb4cc8d7c2f0a67807db864716b20eafb51535960403392a3005b634e487b7160e01b5f52601160045260245ffd5b6020813d6020116101b8575b816101a160209383610440565b810103126101b4575180151581146100cb575b5f80fd5b3d9150610194565b6040513d5f823e3d90fd5b346101b4575f3660031901126101b4575f8055005b346101b45760403660031901126101b4576101f96104de565b6102016104f4565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101b4575f3660031901126101b45760205f54604051908152f35b346101b45760a03660031901126101b4576004356001600160401b0381116101b45761027c903690600401610475565b6024356001600160401b0381116101b45761029b903690600401610475565b6102a36104c8565b6064356001600160401b0381116101b4576102c2903690600401610475565b92608435916001600160401b0383116101b45761034e6001600160401b039261034061032561031f6103197f42611285d4634f96d3f741584f4f896003f59253c3c7a40472cbf0053e726b5f983690600401610475565b9361050a565b9761050a565b97604051958695168552606060208601526060850190610526565b908382036040850152610526565b0390a361035b5f5461054a565b5f55005b346101b45760803660031901126101b4576004356001600160401b0381116101b45761038f903690600401610475565b6024356001600160401b0381116101b4576103ae903690600401610475565b6103b66104c8565b6064356001600160401b0381116101b4577f1e0d6d3f26f1ac738b3c50c77ac3e7931853b73d3c754eba1ec9ea2dfb0442c89161042961040e61040861031f6001600160401b03953690600401610475565b9561050a565b95604051938493168352604060208401526040830190610526565b0390a35f545f198101908113600116610174575f55005b90601f801991011681019081106001600160401b0382111761046157604052565b634e487b7160e01b5f52604160045260245ffd5b81601f820112156101b4576020813591016001600160401b03821161046157604051926104ac601f8401601f191660200185610440565b828452828201116101b457815f92602092838601378301015290565b604435906001600160401b03821682036101b457565b600435906001600160a01b03821682036101b457565b602435906001600160a01b03821682036101b457565b602090604051918183925191829101835e81015f815203902090565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060018201915f6001841291129080158216911516176101745756fea26469706673582212206cb020d676bf2aeac93010faa7d37296ad9a8060da321098e9b46987d0dbd3a264736f6c634300081c0033", "linkReferences": {}, "deployedLinkReferences": {}, "immutableReferences": {}, "inputSourceName": "project/solidity/x/ibc/callbacks/testutil/CounterWithCallbacks.sol", - "buildInfoId": "solc-0_8_28-5377d090f526bc7ac520776f37497fb4bbd650cd" + "buildInfoId": "solc-0_8_28-4a3e9fb75514a5e3823929a19c2b687c4f4bb734" } \ No newline at end of file